MB_MCP (Model Context Protocol) について
MB_MCPは、MCPを介してSlack、Google Drive、GitHub、Atlassian、PostgreSQLなどをClaudeや他のLLMで利用するPythonパッケージです。Webダッシュボードとプログラム向けコネクターを備えています。
主な機能
- 01SlackとGoogle Driveのコネクター
- 02GitHubとAtlassianのコネクター
- 03PostgreSQLとBrave Searchへの対応
- 04サービスを照会するWebダッシュボード
- 05環境変数による認証情報の設定
活用シーン
- 01Webダッシュボードから接続サービスを照会
- 02コネクターを使ったアプリケーションの構築
- 03SlackやGitHubのデータをLLMで利用
MCP 対応
MCPを使ってサービスコネクターをClaudeや他のLLMと連携します。ローカルのテキスト整形サーバーを含むMCPサーバー実装も備えています。
詳細
MB_MCP (Model Context Protocol)
Model Context Protocol (MCP) を使用して、各種サービスを Claude および他の LLM と統合するための Python パッケージです。
概要
MB_MCP は、Slack、Google Drive、GitHub、Atlassian、PostgreSQL など、各種サービス向けのコネクタを提供します。これらのサービスを統合インターフェースを通じて活用するアプリケーションを構築でき、強力な AI 駆動アプリケーションの開発が容易になります。
機能
-
複数のサービスコネクタ:
- Slack
- Google Drive
- GitHub
- Atlassian (Confluence & Jira)
- PostgreSQL
- Brave Search
- Formatter
-
ウェブダッシュボード: サービスにクエリを実行するためのシンプルなウェブインターフェース
-
環境変数ベースの設定: すべての API キーと認証情報は、セキュリティのため
.envファイルに保存されます
インストール
前提条件
- Python 3.8 以上
- Docker (一部のサービス実行用)
セットアップ
-
リポジトリをクローンします:
git clone https://github.com/bigmb/mb_mcp.git cd mb_mcp -
パッケージをインストールします:
pip install -e . -
環境変数を設定します:
cp .env.example .env.envファイルを編集して、API キーと認証情報を追加します。
設定
.env ファイルで以下の環境変数を設定する必要があります:
API キー
ANTHROPIC_API_KEY=your_anthropic_api_key
OPENAI_API_KEY=your_openai_api_key
GOOGLE_API_KEY=your_google_api_key
Slack 設定
SLACK_BOT_TOKEN=your_slack_bot_token
SLACK_APP_TOKEN=your_slack_app_token
SLACK_TEAM_ID=your_slack_team_id
PostgreSQL 設定
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=postgres
PG_CONNECTION_STRING=postgresql://host.docker.internal:5432/mydb
Google Drive 設定
GDRIVE_CREDENTIALS_PATH=/path/to/your/gdrive/credentials.json
GitHub 設定
GITHUB_PERSONAL_ACCESS_TOKEN=your_github_token
Atlassian 設定
# For Confluence Cloud
CONFLUENCE_URL=https://your-domain.atlassian.net/wiki
[email protected]
CONFLUENCE_API_TOKEN=your_api_token
# For Jira Cloud
JIRA_URL=https://your-domain.atlassian.net
[email protected]
JIRA_API_TOKEN=your_api_token
Brave Search 設定
BRAVE_API_KEY=your_brave_api_key
使用方法
ウェブダッシュボードの実行
python -m mb_mcp.app
これにより、http://localhost:5000 で Flask サーバーが起動し、サービスと対話できるようになります。
コネクタをプログラムで使用する
import asyncio
from mb_mcp.slack_connecter import run_app as run_slack_app
async def main():
question = "Provide the recent updates in the channel in proper format: <channel_id>"
result = await run_slack_app(question)
print(result['messages'][-1].content)
if __name__ == "__main__":
asyncio.run(main())
開発
プロジェクト構造
mb_mcp/: メインパッケージディレクトリapp.py: Flask ウェブアプリケーション*_connecter.py: 各種サービス向けコネクタモジュールformatter_server.py: テキストフォーマット用ローカル MCP サーバー
query_dashboard/: ウェブダッシュボードフロントエンドservers/: MCP サーバー実装。このディレクトリから Docker イメージがビルドされます。mcp_servers (Anthropic MCP のサーバー)
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。