Spark Assistant for Slack - MCP Server
Spark Assistant for Slack - MCP Server
Slack ワークスペースと対話するための Model Context Protocol (MCP) サーバーで、Spark Assistant 向けにカスタマイズされています。このサーバーは、チャンネルの一覧表示、メッセージの投稿、スレッドへの返信、絵文字リアクションの追加、チャンネル履歴の取得、ユーザープロフィールの確認、Slack API 認証のテストを行うツールを提供します。
⚡ クイックスタート
依存関係をインストールしてビルドする:
npm install npm run build環境変数を設定する:
.env.exampleを.envにコピーし、Slack の認証情報を入力します:cp .env.example .envSLACK_BOT_TOKEN=xoxb-your-slack-bot-token SLACK_TEAM_ID=T00000000サーバーを実行する:
# Standard stdio mode (for Claude Desktop / Antigravity / Cursor / Windsurf) node dist/index.js # HTTP mode on port 3000 node dist/index.js --transport http --port 3000
Related MCP server: Slack MCP Server
🛠️ 利用可能なツール
slack_auth_testボットトークン認証をテストし、接続されたワークスペースとボットユーザーの詳細を取得します。
戻り値: ワークスペース名、チーム ID、ボットユーザー ID、認証 URL
slack_list_channelsボットがメンバーとなっている公開チャンネルと非公開チャンネル、またはワークスペース内の事前定義済みチャンネルを一覧表示します。
オプション入力:
limit(デフォルト: 100、最大: 200)、cursor(ページネーション)
slack_post_messageSlack チャンネルまたはダイレクトメッセージユーザーに新しいメッセージを投稿します。
必須入力:
channel_id、text
slack_reply_to_threadSlack の特定のメッセージスレッドに返信します。
必須入力:
channel_id、thread_ts、text
slack_add_reactionメッセージに絵文字リアクションを追加します。
必須入力:
channel_id、timestamp、reaction(コロンなしの絵文字名)
slack_get_channel_historyチャンネルから最近のメッセージを取得します。
必須入力:
channel_id| オプション:limit(デフォルト: 10)
slack_get_thread_repliesメッセージスレッド内のすべての返信を取得します。
必須入力:
channel_id、thread_ts
slack_get_users基本プロフィール情報を含むワークスペースユーザーの一覧を取得します。
オプション入力:
cursor、limit(デフォルト: 100、最大: 200)
slack_get_user_profile特定のユーザーの詳細なプロフィール情報を取得します。
必須入力:
user_id
Slack ボットのセットアップ
この MCP サーバーを使用するには、Slack アプリを作成し、必要な権限を構成する必要があります:
1. Slack アプリを作成する
Slack Apps ページ にアクセスします
「Create New App」をクリックします
「From scratch」を選択します
アプリに名前を付け、ワークスペースを選択します
2. Bot Token スコープを構成する
「OAuth & Permissions」に移動し、以下のスコープを追加します:
channels:history- 公開チャンネルのメッセージやその他のコンテンツを表示するchannels:read- チャンネルの基本情報を表示するchat:write- アプリとしてメッセージを送信するreactions:write- メッセージに絵文字リアクションを追加するusers:read- ユーザーとその基本情報を表示するusers.profile:read- ユーザーの詳細なプロフィールを表示する
3. アプリをワークスペースにインストールする
「Install to Workspace」をクリックしてアプリを承認します
xoxb-で始まる「Bot User OAuth Token」を保存します
4. Team ID を取得する
こちらのガイド に従って、Team ID (T で始まる) を取得します
5. ボットをチャンネルに追加する (オプション)
ボットが非公開チャンネルにアクセスしたりメッセージを投稿したりするには、/invite @your-bot-name を使用して特定のチャンネルに招待する必要がある場合があります
機能
複数トランスポートのサポート: stdio と Streamable HTTP の両方のトランスポートをサポートします。
最新の MCP SDK: 最新の MCP SDK (v1.13.2) とモダンな API を使用するよう更新しました。
包括的な Slack 統合: 以下を含む Slack 操作のフルセット:
チャンネルの一覧表示 (事前定義チャンネルのサポート付き)
メッセージの投稿
スレッドへの返信
リアクションの追加
チャンネル履歴の取得
スレッドの返信の取得
ユーザーの一覧表示
ユーザープロフィールの取得
インストール
ローカル開発
npm install
npm run buildグローバルインストール (NPM)
npm install -g @zencoderai/slack-mcp-serverDocker インストール
# Build the Docker image locally
docker build -t slack-mcp-server .
# Or pull from Docker Hub
docker pull zencoderai/slack-mcp:latest
# Or pull a specific version
docker pull zencoderai/slack-mcp:1.0.0設定
以下の環境変数を設定します:
export SLACK_BOT_TOKEN="xoxb-your-bot-token"
export SLACK_TEAM_ID="your-team-id"
export SLACK_CHANNEL_IDS="channel1,channel2,channel3" # Optional: predefined channels
export AUTH_TOKEN="your-auth-token" # Optional: Bearer token for HTTP authorization (Streamable HTTP transport only)使用方法
コマンドラインオプション
slack-mcp [options]
Options:
--transport <type> Transport type: 'stdio' or 'http' (default: stdio)
--port <number> Port for HTTP server when using Streamable HTTP transport (default: 3000)
--token <token> Bearer token for HTTP authorization (optional, can also use AUTH_TOKEN env var)
--help, -h Show this help messageローカルでの使用例
slack-mcp コマンドを使用する場合 (グローバルインストール後)
# Use stdio transport (default)
slack-mcp
# Use stdio transport explicitly
slack-mcp --transport stdio
# Use Streamable HTTP transport on default port 3000
slack-mcp --transport http
# Use Streamable HTTP transport on custom port
slack-mcp --transport http --port 8080
# Use Streamable HTTP transport with custom auth token
slack-mcp --transport http --token mytoken
# Use Streamable HTTP transport with auth token from environment variable
AUTH_TOKEN=mytoken slack-mcp --transport httpnode を直接使用する場合 (開発用)
# Use stdio transport (default)
node dist/index.js
# Use stdio transport explicitly
node dist/index.js --transport stdio
# Use Streamable HTTP transport on default port 3000
node dist/index.js --transport http
# Use Streamable HTTP transport on custom port
node dist/index.js --transport http --port 8080
# Use Streamable HTTP transport with custom auth token
node dist/index.js --transport http --token mytoken
# Use Streamable HTTP transport with auth token from environment variable
AUTH_TOKEN=mytoken node dist/index.js --transport httpDocker での使用例
Docker を直接使用する場合
# Run with stdio transport (default)
docker run --rm \
-e SLACK_BOT_TOKEN="xoxb-your-bot-token" \
-e SLACK_TEAM_ID="your-team-id" \
zencoderai/slack-mcp:latest
# Run with HTTP transport on port 3000
docker run --rm -p 3000:3000 \
-e SLACK_BOT_TOKEN="xoxb-your-bot-token" \
-e SLACK_TEAM_ID="your-team-id" \
zencoderai/slack-mcp:latest --transport http
# Run with HTTP transport on custom port
docker run --rm -p 8080:8080 \
-e SLACK_BOT_TOKEN="xoxb-your-bot-token" \
-e SLACK_TEAM_ID="your-team-id" \
zencoderai/slack-mcp:latest --transport http --port 8080
# Run with custom auth token
docker run --rm -p 3000:3000 \
-e SLACK_BOT_TOKEN="xoxb-your-bot-token" \
-e SLACK_TEAM_ID="your-team-id" \
-e AUTH_TOKEN="mytoken" \
zencoderai/slack-mcp:latest --transport httpDocker Compose を使用する場合
docker-compose.yml ファイルを作成します:
version: '3.8'
services:
slack-mcp:
# Use published image:
image: zencoderai/slack-mcp:latest
# Or build locally:
# build: .
environment:
- SLACK_BOT_TOKEN=xoxb-your-bot-token
- SLACK_TEAM_ID=your-team-id
- SLACK_CHANNEL_IDS=channel1,channel2,channel3 # Optional
- AUTH_TOKEN=your-auth-token # Optional for HTTP transport
ports:
- "3000:3000" # Only needed for HTTP transport
command: ["--transport", "http"] # Optional: specify transport type
restart: unless-stopped次に実行します:
# Start the service
docker compose up -d
# View logs
docker compose logs -f slack-mcp
# Stop the service
docker compose downトランスポートタイプ
Stdio トランスポート
ユースケース: コマンドラインツールや直接統合
通信: 標準入出力ストリーム
デフォルト: はい
Streamable HTTP トランスポート
ユースケース: リモートサーバーや Web ベースの統合
通信: オプションの Server-Sent Events ストリームを伴う HTTP POST リクエスト
機能:
セッション管理
双方向通信
再開可能な接続
RESTful API エンドポイント
Bearer トークン認証
認証 (Streamable HTTP トランスポートのみ)
Streamable HTTP トランスポートを使用する場合、サーバーは Bearer トークン認証をサポートします:
コマンドライン:
--token <token>を使用してカスタムトークンを指定します環境変数: フォールバックとして
AUTH_TOKEN=<token>を設定します自動生成: どちらも指定されない場合は、ランダムなトークンが生成されます
コマンドラインオプションは環境変数より優先されます。HTTP リクエストでは、Authorization: Bearer <token> ヘッダーを使用してトークンを含めてください。
トラブルシューティング
権限エラーが発生した場合は、以下を確認してください:
必要なスコープがすべて Slack アプリに追加されていること
アプリがワークスペースに正しくインストールされていること
トークンとワークスペース ID が設定に正しくコピーされていること
アプリがアクセスする必要のあるチャンネルに追加されていること
開発
ビルド
npm run buildウォッチモード
npm run watchAPI エンドポイント (Streamable HTTP トランスポート)
Streamable HTTP トランスポートを使用する場合、サーバーは以下のエンドポイントを公開します:
POST /mcp- クライアントからサーバーへの通信GET /mcp- サーバーからクライアントへの通知 (Server-Sent Events ストリーム)DELETE /mcp- セッションの終了
以前のバージョンからの変更点
MCP SDK の更新: v1.0.1 から v1.13.2 にアップグレードしました。
モダン API: 低レベルの Server クラスから高レベルの McpServer クラスに移行しました。
Zod バリデーション: Zod を使用した適切なスキーマバリデーションを追加しました。
トランスポートの柔軟性: Streamable HTTP トランスポートのサポートを追加しました。
コマンドラインインターフェース: トランスポート選択用の CLI 引数を追加しました。
セッション管理: HTTP トランスポート向けの適切なセッション処理を実装しました。
エラー処理の改善: エラー処理とロギングを改善しました。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceInteract with Slack Workspaces over the Slack API. Supports stdio and Streamable HTTP transport. Extended from Anthropic's archived server877175MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to interact with Slack workspaces through comprehensive channel management, messaging, direct messages, search functionality, and user management capabilities.3072MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Slack workspaces through natural language, supporting channel management, message operations, user profiles, reactions, and threaded conversations.
- AlicenseAqualityCmaintenanceEnables AI assistants to interact with Slack workspaces, including listing channels, posting messages, replying to threads, adding reactions, and retrieving user information.1045MIT
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Voice and chat for AI agents — Discord, Teams, Meet, Slack, Zoom, Telegram, WhatsApp, NC Talk, SIP
Catch up on Slack without reading it. Unreads, threads, search. Browser-session or hosted OAuth.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hamas/Spark-Assistant-for-Slack---MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server