Slack MCPサーバーとは?
Slack MCPサーバーは、メッセージの読み書きやチャネルの管理など、Slackワークスペースの機能を標準化されたMCPツールとリソースとして提供します。これにより、AIエージェントは安全にSlackワークスペースとやりとりできます。メッセージを送受信したり、チャネルの履歴にアクセスしたり、メンバーシップを管理したりできます。カスタムプラグインや手動スクリプトは不要です。侵入的なアクセスやワークスペース管理者権限は必要ないため、Slack環境とAI駆動のワークフローの間の柔軟で安全なコネクターとなります。
Slack MCPサーバーの設定方法
- Slack MCPサーバーをインストールする
- (TypeScript用)
npx -y @modelcontextprotocol/server-slack
- (Python用)
pip install mcp-server-slack python -m mcp_server_slack
- (TypeScript用)
- 必要なSlackトークンを取得する
- 適切なスコープを持つSlackユーザートークンまたはボットトークンが必要です(多くの機能に対して:
channels:history
,channels:read
,chat:write
など)。 - 通常、ワークスペース管理者トークンは必要ありません。
- 適切なスコープを持つSlackユーザートークンまたはボットトークンが必要です(多くの機能に対して:
- 環境変数を設定する
- サーバーを実行する前に、必要なトークンを環境変数として設定します:
export SLACK_BOT_TOKEN="xoxb-***" export SLACK_USER_TOKEN="xoxp-***" # 使用するトークンはユースケースに合ったものを選んでください。
- サーバーを実行する前に、必要なトークンを環境変数として設定します:
- 自分のMCPクライアント設定に追加する
- Claude Desktopや他のクライアントでサーバーを登録します。例:
{ "mcpServers": { "slack": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-slack"], "env": { "SLACK_BOT_TOKEN": "<your-slack-token>" } } } }
- Claude Desktopや他のクライアントでサーバーを登録します。例:
- クライアント/サーバーを起動する
- MCPクライアント(例:Claude Desktop)を実行します。Slack MCPサーバーが自動的に起動され、利用可能になります。
Slack MCPサーバーの使用方法
- 設定が完了すると、MCP互換クライアント(例:Claude Desktop)が自動的に新しいSlackコマンドとコンテキストツールを有効にします。
- 利用可能なツールのリストを取得するには、
tools/list
機能を呼び出します。チャットで/tools/list
を入力するか、クライアントのツールセレクタを使用します。 send_message
、list_channels
、search_messages
などのツールコマンドをAIエージェントを通じて使用し、Slackチャネルとやりとりします。- 例:
- 「私たちのSlackワークスペースのすべてのチャネルをリストしてください。」
- 「#randomにメッセージを送信してください:チームのみなさん、アップデートがあります...」
- 「'launch'を含む最近のプロジェクトに関する議論を検索してください。」
- すべての操作はトークンの権限に基づいて安全に制限されます。許可されたチャネルやユーザーの外でのアクションは行われません。
主な機能
- チャネル管理: チャネルのリスト、参加/退会、チャネルの作成またはアーカイブ。
- メッセージング: 許可された任意のチャネルやDMにメッセージを読み書き。
- メッセージ検索: チャネル内で関連する会話を検索。
- ワークスペースの発見: ユーザー、チャネル、メッセージに関するメタデータを取得。
- 権限を尊重: 提供されたSlackトークンの範囲内で厳密に動作し、過剰な権限は不要。
- シームレスな統合: Claude Desktopや他のMCP互換クライアントと連携し、Slackを自動的にツールやリソースとして公開。
- ボットの承認不要: 個人用トークンやボットトークンで運用可。Slackワークスペース管理者の権限は不要。
ユースケース
- 自動会議アシスタント: LLMが議論を要約し、アクションアイテムを抽出したり、日次スタンドアップレポートを自動的にSlackに投稿したりします。
- インテリジェントチャネルモニタリング: 問題、メンション、キーワードを検索し、ワークフローや自動応答をトリガーします。
- コンテキストに基づいたAI応答: AIは最近の会話履歴を読み、任意のチャネルで個別の応答を生成できます。
- バルクメッセージ操作: アーカイブ、削除、メッセージの転送をAI駆動のプロンプトに応じて行います。
- オンボーディングボット: 新メンバーの参加時に歓迎メッセージやオンボーディング指示を送信します。
- インシデント応答: エラーやインシデントチャネルを監視し、アラートの要約やステータス更新を投稿します。
よくある質問
Q1: Slack MCPサーバーは管理者権限や特別な承認が必要ですか?
A1: いいえ。正しいスコープ(例:channels:read
、chat:write
)を持つユーザーまたはボットトークンがあれば問題ありません。通常、ワークスペース管理者権限やカスタムSlackアプリの登録は必要ありません。
Q2: AIエージェントは私のプライベートメッセージやDMを読むことができますか?
A2: AIエージェントは、ボット/ユーザートークンがアクセスを許可されたDMやチャネルにのみアクセスできます。プライベートな会話は、トークンがそのスコープを付与している場合にのみアクセス可能で、すべてが権限スコープ内に留まります。
Q3: 権限とセキュリティはどのように確保されていますか?
A3: MCPサーバーはトークンの機能に従って厳密に動作します。Slackトークンが許可した範囲を超える操作は一切行えないため、AIとワークスペースの間の安全なブリッジが確保されます。
Q4: Slackトークンが期限切れや取り消された場合はどうなりますか?
A4: MCPサーバーはアクセスを失います。環境変数を更新して新しい有効なトークンを提供し、サーバーを再起動すれば対応できます。
Q5: 異なるワークスペースのために複数のSlack MCPサーバーを実行できますか?
A5: もちろんです。異なるトークンや設定で別々のサーバーインスタンスを起動し、それぞれをMCPクライアント内で特定のワークスペースにマップできます。