Slack MCP サーバー
AIアシスタントがSlackワークスペースと連携できるようにするモデルコンテキストプロトコル(MCP)サーバー。このサーバーは、Slack APIを介してメッセージの閲覧、投稿、チャンネルの管理などを行うためのツールを提供します。
特徴
- チャンネル管理: チャンネルの一覧表示、チャンネル情報の取得、チャンネルの作成
- メッセージ操作: メッセージの送信、メッセージ履歴の閲覧、スレッドへの返信
- ユーザー管理: ユーザー情報を取得し、ワークスペースのメンバーを一覧表示する
- ファイル操作: ファイルのアップロード、チャンネルでのファイルの共有
- 検索: ワークスペース全体でメッセージとファイルを検索します
- 反応: メッセージに絵文字反応を追加したり削除したりできます
前提条件
- Python 3.8以上
- 管理者権限を持つSlackワークスペース
- 適切なスコープを持つSlackボットトークン
インストール
- このリポジトリをクローンします:
- 依存関係をインストールします:
- Slack Bot Tokenを設定します(以下の設定セクションを参照)
構成
Slackボットトークンの設定
- Slack APIにアクセスして新しいアプリを作成します
- サイドバーの「OAuthと権限」に移動します
- 次のボット トークン スコープを追加します。
channels:read
- パブリックチャンネルの基本情報を表示するchannels:write
- パブリックチャンネルを管理するchat:write
- ボットとしてメッセージを送信するchat:write.public
- ボットがメンバーではないチャンネルにメッセージを送信しますfiles:read
- チャンネルや会話で共有されたファイルを表示するfiles:write
- ファイルのアップロード、編集、削除groups:read
- プライベートチャンネルの基本情報を表示するim:read
- ダイレクトメッセージに関する基本情報を表示するmpim:read
- グループダイレクトメッセージの基本情報を表示するreactions:read
- 絵文字の反応とそれに関連するコンテンツを表示しますreactions:write
- 絵文字反応を追加および編集するsearch:read
- メッセージとファイルを検索するusers:read
- ワークスペース内のユーザーを表示するchannels:history
- パブリックチャンネルのメッセージやその他のコンテンツを表示するgroups:history
- プライベートチャンネルのメッセージやその他のコンテンツを表示するim:history
- ダイレクトメッセージ内のメッセージやその他のコンテンツを表示するmpim:history
- グループダイレクトメッセージ内のメッセージやその他のコンテンツを表示する
- ワークスペースにアプリをインストールする
- 「ボットユーザーOAuthトークン」(
xoxb-
で始まる)をコピーします。
環境変数
Slack Bot トークンを環境変数として設定します。
または、プロジェクト ルートに.env
ファイルを作成します。
使用法
サーバーの実行
サーバーが起動し、stdio 経由で MCP 接続をリッスンします。
Claude Desktopでの使用
Claude Desktop 構成ファイルに次の構成を追加します。
利用可能なツール
サーバーは次のツールを提供します。
チャネルオペレーション
list_channels()
- ワークスペース内のすべてのチャンネルを一覧表示するget_channel_info(channel_id)
- チャンネルの詳細情報を取得するcreate_channel(name, is_private=False)
- 新しいチャンネルを作成する
メッセージ操作
send_message(channel, text, thread_ts=None)
- チャネルにメッセージを送信するget_channel_history(channel, limit=10)
- チャンネルから最近のメッセージを取得するsearch_messages(query, count=20)
- ワークスペース全体のメッセージを検索します
ユーザー操作
get_user_info(user_id)
- ユーザーに関する情報を取得するlist_users()
- ワークスペース内のすべてのユーザーを一覧表示する
ファイル操作
upload_file(channels, content, filename, title=None)
- チャンネルにファイルをアップロードするsearch_files(query, count=20)
- ワークスペース内のファイルを検索する
反応作戦
add_reaction(channel, timestamp, name)
- メッセージに絵文字反応を追加するremove_reaction(channel, timestamp, name)
- メッセージから絵文字反応を削除します
例
メッセージを送信する
チャンネル履歴の取得
メッセージの検索
チャンネルを作成する
エラー処理
サーバーには、次の包括的なエラー処理が含まれています。
- 無効なSlackトークン
- レート制限
- ネットワーク接続の問題
- 無効なチャンネル/ユーザーID
- 権限エラー
セキュリティに関する考慮事項
- Slackボットトークンを安全に保管し、バージョン管理にコミットしないでください
- 環境変数または安全な秘密管理を使用する
- ボットトークンを定期的にローテーションする
- Slackワークスペースでボットのアクティビティを監視する
- 必要最低限の権限のみ付与する
貢献
- リポジトリをフォークする
- 機能ブランチを作成する
- 変更を加える
- 該当する場合はテストを追加する
- プルリクエストを送信する
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。
サポート
問題や質問については:
- Slack APIドキュメントを確認する
- MCP仕様を確認する
- このリポジトリで問題を開く
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
AI アシスタントがモデル コンテキスト プロトコルを介して Slack ワークスペースと対話できるようにし、メッセージの読み取り/送信、チャンネルの管理、Slack API 機能へのアクセスのためのツールを提供します。
Related MCP Servers
- AsecurityAlicenseAqualityEnables interaction with Slack workspaces as a user, supporting channel listing, message posting, threading, reactions, and user management via the Slack API.Last updated -8MIT License
- -securityAlicense-qualityA Model Context Protocol server implementation that enables AI assistants to interact with Slack workspaces, allowing them to browse channels, send messages, reply to threads, add reactions, and retrieve user information.Last updated -112Apache 2.0
- AsecurityAlicenseAqualityA server implementing Model Context Protocol that enables AI assistants to interact with Slack API through a standardized interface, providing tools for messaging, channel management, user information retrieval, and more.Last updated -9100Apache 2.0
- -securityFlicense-qualityA Model Context Protocol server that integrates with Slack API, allowing users to send messages, view channel history, manage channels, send direct messages, and retrieve user lists from Slack workspaces.Last updated -1