Slack User MCP Server

by lars-hagen
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Allows Claude to interact with Slack workspaces as a user, including listing channels, posting messages, replying to threads, adding reactions, getting channel history, getting thread replies, retrieving user lists, and viewing user profiles

Slack ユーザー MCP サーバー

Slack API 用の MCP サーバー。Claude がユーザーとして Slack ワークスペースと対話できるようにします。

ツール

  1. slack_list_channels
    • ワークスペース内のパブリックチャンネルを一覧表示する
    • オプション入力:
      • limit (数値、デフォルト:100、最大:200):返されるチャンネルの最大数
      • cursor (文字列): 次のページのページ区切りカーソル
    • 戻り値: IDと情報を含むチャンネルのリスト
  2. slack_post_message
    • Slackチャンネルに新しいメッセージを投稿する
    • 必要な入力:
      • channel_id (文字列): 投稿先のチャンネルのID
      • text (文字列): 投稿するメッセージテキスト
    • 戻り値: メッセージ投稿の確認とタイムスタンプ
  3. slack_reply_to_thread
    • 特定のメッセージスレッドに返信する
    • 必要な入力:
      • channel_id (文字列): スレッドを含むチャネル
      • thread_ts (文字列): 親メッセージのタイムスタンプ
      • text (文字列):返信テキスト
    • 戻り値: 返信確認とタイムスタンプ
  4. slack_add_reaction
    • メッセージに絵文字リアクションを追加する
    • 必要な入力:
      • channel_id (文字列): メッセージを含むチャネル
      • timestamp (文字列): 反応するメッセージのタイムスタンプ
      • reaction (文字列):コロンなしの絵文字名
    • 返品:反応確認
  5. slack_get_channel_history
    • チャンネルから最近のメッセージを取得する
    • 必要な入力:
      • channel_id (文字列): チャンネルID
    • オプション入力:
      • limit (数値、デフォルト:10):取得するメッセージの数
    • 戻り値: メッセージとその内容およびメタデータのリスト
  6. slack_get_thread_replies
    • メッセージスレッド内のすべての返信を取得する
    • 必要な入力:
      • channel_id (文字列): スレッドを含むチャネル
      • thread_ts (文字列): 親メッセージのタイムスタンプ
    • 戻り値: コンテンツとメタデータを含む返信のリスト
  7. slack_get_users
    • 基本的なプロフィール情報を持つワークスペースユーザーのリストを取得します
    • オプション入力:
      • cursor (文字列): 次のページのページ区切りカーソル
      • limit (数値、デフォルト:100、最大:200):返されるユーザーの最大数
    • 戻り値: 基本プロフィールを持つユーザーのリスト
  8. slack_get_user_profile
    • 特定のユーザーの詳細なプロフィール情報を取得する
    • 必要な入力:
      • user_id (文字列): ユーザーのID
    • 返されるもの: 詳細なユーザープロフィール情報

設定

  1. Slack アプリを作成する:
    • Slackアプリページにアクセスしてください
    • 「新しいアプリを作成」をクリックします
    • 「最初から」を選択
    • アプリに名前を付けてワークスペースを選択します
  2. ユーザー トークン スコープを構成する:「OAuth と権限」に移動し、次のスコープを追加します。
    • channels:history - パブリックチャンネルのメッセージやその他のコンテンツを表示する
    • channels:read - 基本的なチャンネル情報を表示する
    • chat:write - 自分としてメッセージを送信する
    • reactions:write - メッセージに絵文字反応を追加する
    • users:read - ユーザーとその基本情報を表示する
  3. ワークスペースにアプリをインストールします:
    • 「ワークスペースにインストール」をクリックしてアプリを承認します
    • xoxp-で始まる「ユーザーOAuthトークン」を保存します。
  4. このガイダンスに従ってチームID( Tで始まる)を取得してください

Claude Desktopでの使用

claude_desktop_config.jsonに以下を追加します。

ローカルインストール

まずサーバーをインストールして構築します。

git clone https://github.com/lars-hagen/slack-user-mcp.git cd slack-user-mcp npm install npm run build

次に、Claude Desktop を構成します。

{ "mcpServers": { "slack": { "command": "npm", "args": [ "run", "--prefix", "/path/to/slack-user-mcp", "start" ], "env": { "SLACK_TOKEN": "xoxp-your-user-token", "SLACK_TEAM_ID": "T01234567" } } } }

NPX

{ "mcpServers": { "slack": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-slack-user" ], "env": { "SLACK_TOKEN": "xoxp-your-user-token", "SLACK_TEAM_ID": "T01234567" } } } }

ドッカー

{ "mcpServers": { "slack": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "SLACK_TOKEN", "-e", "SLACK_TEAM_ID", "mcp/slack-user" ], "env": { "SLACK_TOKEN": "xoxp-your-user-token", "SLACK_TEAM_ID": "T01234567" } } } }

Smithery経由でインストール

Smithery経由で Claude Desktop 用の Slack ユーザー サーバーを自動的にインストールするには:

npx -y @smithery/cli install @lars-hagen/slack-user-mcp2 --client claude

トラブルシューティング

権限エラーが発生した場合は、次の点を確認してください。

  1. 必要なスコープがすべてSlackアプリに追加されます
  2. アプリがワークスペースに正しくインストールされている
  3. トークンとワークスペースIDが構成に正しくコピーされました
  4. アプリはアクセスする必要があるチャンネルに追加されました
  5. ボットトークンではなく、ユーザーOAuthトークン(xoxp-で始まる)を使用しています

建てる

Dockerビルド:

docker build -t mcp/slack-user -f src/slack/Dockerfile .

ライセンス

このMCPサーバーはMITライセンスに基づいてライセンスされています。つまり、MITライセンスの条件に従って、ソフトウェアを自由に使用、改変、配布することができます。詳細については、プロジェクトリポジトリのLICENSEファイルをご覧ください。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

ユーザーとして Slack ワークスペースとやり取りできるようにし、Slack API 経由でチャンネルの一覧表示、メッセージの投稿、スレッド、反応、ユーザー管理をサポートします。

  1. Tools
    1. Setup
      1. Usage with Claude Desktop
      2. Installing via Smithery
      3. Troubleshooting
    2. Build
      1. License
        ID: wc0u5519qh