mcpField
S
Slack MCP Host

Slack MCP Host

ローカル
github.com/jexpコミュニケーション581 週間前に更新

Slack MCP Host について

Slack MCP Hostは、設定済みのMCPサーバーをLLMとの会話から利用するSlackボットです。専用チャンネルでツールを実行し、Markdownや折りたたみ表示で結果を提示します。

主な機能

  1. 01SlackでのLLM会話
  2. 02複数のMCPサーバー接続
  3. 03Markdown形式の応答
  4. 04ツール結果の折りたたみ表示
  5. 05会話履歴の保持

活用シーン

  1. 01Slackから接続済みデータベースを検索
  2. 02以前のツール結果について追加確認
  3. 03長いツール出力の確認

MCP 対応

設定済みのMCPサーバーに接続し、Slackの会話内でツールを実行して結果を提示します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Slack MCP ホスト

Slack と MCP(Machine Control Protocol)サーバーを連携させ、専用チャンネルで LLM を活用したやり取りを提供する Slack ボットです。設定済みの MCP サーバーのツールを実行し、結果をわかりやすい形式で表示できます。

特長

  • 🤖 Slack での LLM を活用した会話
  • 🔧 複数の MCP サーバーとの連携
  • 📝 Markdown のレンダリングに対応
  • 🔍 折りたたみ可能なツール実行結果
  • 💾 会話履歴の保持
  • 🔐 安全な設定管理

前提条件

  • Python 3.11+
  • 依存関係の管理に使用する uv
  • 管理者アクセス権のある Slack ワークスペース
  • OpenAI API へのアクセス
  • 1 つ以上の MCP サーバー

セットアップ

  1. リポジトリをクローンする
git clone https://github.com/yourusername/slack-mcp-host.git
cd slack-mcp-host
  1. 仮想環境を作成して有効化する
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
  1. 依存関係をインストールする
uv sync
  1. 環境を設定する
cp .env.example .env

.env を編集して認証情報を設定します:

SLACK_API_KEY=xoxb-your-slack-bot-token
OPENAI_API_KEY=your-openai-api-key
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-4

# MCP Servers
SLACK_MCP_NEO4J_MOVIES=uvx mcp-neo4j-cypher --url neo4j+s://demo.neo4jlabs.com --username movies --password movies
SLACK_MCP_TIME=uvx mcp-server-time
  1. Slack アプリを作成する
  • api.slack.com/apps にアクセスします
  • 「Create New App」→「From an app manifest」をクリックします
  • ワークスペースを選択します
  • manifest.yml の内容をコピーして貼り付けます
  • アプリを作成し、ワークスペースにインストールします

デプロイ

Cloudflare Workers
  1. Wrangler をインストールする
npm install -g wrangler
  1. Cloudflare にログインする
wrangler login
  1. シークレットを設定する
wrangler secret put SLACK_API_KEY
wrangler secret put OPENAI_API_KEY
  1. デプロイする
wrangler deploy
  1. Slack アプリの設定を更新する
  • Slack アプリの設定に移動します
  • イベントサブスクリプション URL を Cloudflare Workers の URL に更新します: https://slack-mcp-host.<your-worker-subdomain>.workers.dev/slack/events

使用例

以下は、やり取りの流れの例です:

  1. ユーザーが会話を開始する
User: Can you help me find movies directed by Christopher Nolan?
  1. ボットがツールを実行して応答する
Bot: I'll help you find movies directed by Christopher Nolan using the Neo4j Movies database.

<details><summary>Tool Results</summary>
Tool neo4j_movies result:
- Inception (2010)
- The Dark Knight (2008)
- Interstellar (2014)
- Memento (2000)
- The Prestige (2006)
</details>

Would you like to know more details about any of these movies?
  1. ユーザーが追加で質問する
User: Tell me more about Inception
  1. ボットが別のクエリを実行する
Bot: I'll get the details about Inception for you.

<details><summary>Tool Results</summary>
Tool neo4j_movies result:
Title: Inception (2010)
Director: Christopher Nolan
Cast: Leonardo DiCaprio, Joseph Gordon-Levitt, Ellen Page
Plot: A thief who steals corporate secrets through dream-sharing technology is given the inverse task of planting an idea into the mind of a C.E.O.
</details>

The movie received critical acclaim for its innovative storytelling and visual effects. Would you like to know about any other movies or specific aspects of Inception?

開発

開発用にローカルで実行するには:

uvicorn src.api:app --reload --port 8000

ngrok などを使用して、ローカルサーバーを外部に公開します:

ngrok http 8000

Slack アプリのイベントサブスクリプション URL を ngrok の URL に更新します。

貢献

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/amazing-feature)
  3. 変更をコミットします(git commit -m 'Add amazing feature')
  4. ブランチにプッシュします(git push origin feature/amazing-feature)
  5. プルリクエストを作成します

ライセンス

このプロジェクトは MIT License の下でライセンスされています。詳細は LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。