Multi-Chat MCP Server (Google Chat Included) について
Multi-Chat MCP サーバー(Google Chat 対応)は、Claude や Cursor などの AI アシスタントがチームのチャットに参加し、メッセージ検索、ファイル共有、作業の調整を行えるようにするオープンソースの Python フレームワークです。現在は Google Chat を完全にサポートし、複数のチャットサービスを同時に扱える設計で、組織内の開発チームを対象としています。
主な機能
- 01Google Chat のメッセージとスペースに関する API 対応
- 02複数のチャットプロバイダーの同時実行
- 03拡張しやすいプロバイダーのモジュール構成
- 04チャット履歴とメンションの検索
- 05ファイルアップロードとメッセージの一括送信
活用シーン
- 01チーム内のチャット履歴を検索して問題を調査
- 02エラーログやコードの断片を共有し返信を収集
- 03スペース内の最近の活動やメンションの要約
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Multi-Chat MCP サーバー (Google Chat 対応)
🔥 ユニークな機能: 単一の AI アシスタントで複数のチャットプロバイダーを同時に実行できます!
あなたの AI は Google Chat、Slack、Teams などと同時にやり取りできます。
一度質問するだけ: 「この更新を Slack チームと Google Chat チームの両方に共有して」
➡️ マルチプロバイダー機能の詳細を見る
Multi-Chat MCP サーバーは、AI を活用したチャット連携を構築するためのオープンソースの Python フレームワークです。Google Chat の完全なサポートを備えています。
キーワード: Google Chat MCP • MCP サーバー実装 • AI チャット連携 • Google Workspace 自動化 • チームコラボレーション AI
🎯 Google Chat MCP サーバーとは?
Google Chat MCP サーバーは、AI アシスタントとの Google Chat 連携のために設計された、オープンソースで本番環境に対応した Model Control Protocol (MCP) サーバーです。拡張可能なマルチプロバイダーアーキテクチャで構築されており、このプロジェクトは AI アシスタントをチームチャットプラットフォームに統合するための堅牢な基盤を提供します。
🏢 組織のセキュリティとプライバシーを重視して構築
重要なセキュリティに関する注意: このツールはローカルでの組織内利用のみを目的として設計されています。チームのチャットデータとコミュニケーションを完全に管理するために、クラウドベースの LLM モデルではなく、組織が提供するオンプレミスの LLM インスタンスまたはローカルにインストールされた LLM エージェントモデルでの使用を強く推奨します。
ローカル/オンプレミスでのデプロイを推奨する理由:
- データプライバシー: 機密性の高いチームの会話を組織内に保持します
- セキュリティコンプライアンス: エンタープライズのセキュリティおよびコンプライアンス要件を満たします
- 完全な管理: データフローとアクセスを完全に監督します
- カスタムポリシー: 組織固有のセキュリティ対策を実装します
誰でもこのツールを自身のユースケースに合わせて適応させることができますが、エンタープライズセキュリティを優先して設計されています。
現在の実装状況
- ✅ Google Chat プロバイダー - 包括的な API カバレッジを備えた本番環境対応
- 🔄 Slack プロバイダー - 計画中 (コントリビューション歓迎)
- 📝 Microsoft Teams プロバイダー - 計画中 (コントリビューション歓迎)
主な機能: すべてのプロバイダーは統一されたインターフェースで同時に実行できるため、AI アシスタントが複数のチャットプラットフォームをまたいでシームレスに連携できます。この強力な機能の詳細はこちらをご覧ください。
🧭 このプロジェクトの背景にあるストーリー
Google Chat 向けのオープンソース MCP サーバーは存在しますが、Microsoft Teams や Slack については、公式であれオープンソースであれ、確かなものはありません。しかし、存在するものでさえ、実用性の面で不十分です。このプロジェクトが示すような完全なコンテキストのワークフローを扱えない、限られた機能しか提供していません。
このマルチプロバイダー MCP フレームワークは、日々のワークフローで AI アシスタントを活用しようとする開発チームが経験した、実際の不満から生まれました。
元々の問題
こんなシナリオを想像してみてください。複雑な問題をデバッグしていて、AI アシスタントが解決策を提案しますが、チームメイトが同様のことに遭遇していないか確認する必要があります。Google Chat に切り替え、何百ものメッセージをスクロールし、エラーログをコピー&ペーストし、返信を待ち、そしてその解決策を手動で AI アシスタントに伝え直します。
この絶え間ないコンテキストの切り替えが、生産的な AI 支援開発の流れを壊していました。
限界点
重大な本番インシデントの最中、ある開発者は30分を費やして、Claude(Cursor 経由)とチームの Google Chat スペースの間で手作業で情報をやり取りしていました。AI には助けとなる技術的知識がありました。チームには文脈に基づく経験がありました。 しかし、これら二つの知識源をつなぐ架け橋は存在しませんでした。
そのとき私たちは気づきました:
AI アシスタントは、孤立したツールではなく、チームコラボレーションの参加者である必要があります。
私たちのソリューション:
- シームレスな統合: AI アシスタントがチームチャットの能動的な参加者になります
- 文脈の認識: AI がチームの履歴から類似の課題や解決策を検索できます
- 協調的な問題解決: AI が問題をチームと共有し、その提案を実装できます
- 知識の橋渡し: AI の技術的知識とチームの経験的知識をつなぎます
🎯 開発者の拡張性のために設計
🏗️ モジュラーなプロバイダーアーキテクチャ
各チャットプラットフォームは独立したモジュールとして実装されています:
src/providers/
├── google_chat/ # ✅ Complete implementation
├── slack/ # 📋 Framework ready for implementation
└── teams/ # 📋 Framework ready for implementation
👥 これは誰のためのものですか?
このプロジェクトは二つの主要な対象読者のために設計されています:
🛠️ 1. 組織内の開発者
Google Chat を使用するチームで働く開発者で、AI IDE(Cursor、CodeWhisperer、Copilot Chat など) をチームの会話と統合したいと考えているなら、この MCP クライアントはあなたの時間を何時間も節約します。 もう手作業でログをコピーしたり、文脈を確認したり、誰かがあなたの質問に気づくのを待ったりする必要はありません。 あなたの AI エージェントは今や直接的に:
- 関連する過去の議論をチャット履歴から検索できます
- コードスニペットやエラーログを自動的に共有できます
- 応答を受け取り、実行可能な修正に変換できます
- 進行中のチームの活動を要約できます
- 共有スペースから不足している設定やスクリプトを取得できます
💡 2. オープンソースのコントリビューターと AI プラットフォームの構築者
AI を活用したツール、IDE 統合、または社内アシスタントを構築しているなら、これはマルチプロバイダー MCP アーキテクチャのための出発点です。 このプロジェクトをフォークして次のことができます:
- Slack、Microsoft Teams、またはカスタムメッセージングプラットフォームへのサポートを拡張する
- MCP の上に独自のカスタム AI ワークフローを構築する
🧩 Google Chat MCP サーバー – 実世界での使用事例紹介
これらのウォークスルーは、この MCP サーバーを活用した AI アシスタントが、受動的なツールから能動的な協働者へと進化し、問題のデバッグ、チームの調整、スクリプトの同期、そして開発者のブロックを積極的に解消する様子を示しています。
🛠️ ツールのセットアップと初期化
シーン 1: Google Chat でのツール登録
シナリオ: MCP クライアントを Google Chat に接続します。
何が起きているか: AI アシスタントにすべての Google Chat ツール(送信、検索、要約、添付、返信など)へのアクセス権が付与されます。
なぜ重要か: アシスタントは今や Google Chat の中で行動でき、ただ観察するだけではありません。
🧯 デバッグと解決 (Docker の例)
シーン 2: チームにエラーを共有する
何が起きているか: 開発者が AI に Docker のエラーログをチャットで共有するよう依頼し、チームからのリアルタイムな支援を促します。
シーン 3: チームが修正案を返信する
次のステップ: チームメイトが Dockerfile の修正案 (COPY requirements.txt .) を返信します。
シーン 4: エージェントが修正を適用する
自動化の瞬間: AI アシスタントがアドバイスに従って Dockerfile を編集します — 手作業は不要です。
シーン 5: 修正を確認する
まとめ: 変更を確認し、requirements.txt が存在することを確かめます — これでエラーは解決するはずです。
📦 依存関係とスクリプトの同期
シーン 6: `requirements.txt` を共有する
シナリオ: 私はチームに、動作する requirements.txt を共有してほしいと依頼しました。
応答: チームメイトの一人が、動作する requirements.txt を共有しました。
シーン 7: ローカルコピーを同期する
開発者の視点: AI はスレッドを確認し、私の指示に基づいて、共有されたものを使って私のローカルの requirements.txt を更新しました
シーン 8: AWS セットアップスクリプトを依頼する
シナリオ: チームに共有の aws-setup.sh スクリプトを依頼します。
シーン 9: スクリプトの整合性チェック
開発者の視点: AI はスレッドを確認し、私の指示に基づいて、チームのスクリプトとあなたのローカルバージョンを比較します — 同期が取れていることを確認できます。
👀 チームの連携とキャッチアップ
シーン 10: チームのアクティビティを要約
状況: しばらく離席していました。何か新しいことはありますか?
AI の応答: アシスタントがスペース内の主要なアクティビティを要約します。質問、PR、共有ファイル、ブロッカーなどです。
シーン 11: メンションのキャッチアップ
通知を見逃しましたか? AI がすべてのメンションをスキャンし、あなたがタグ付けされた会話を浮かび上がらせます。
🔍 チームチャットのコンテキストを活用した AI による問題解決
シーン 12: AI がチームチャットをスキャンして問題を探す
シナリオ: 開発者が、チームがチャットスペースで言及した未解決の懸念事項の解決を支援するよう、AI アシスタントに明示的に依頼します。
何が起きているか: AI が最近のチャットメッセージをスキャンし、プロジェクトに関連する技術的な質問、不足しているファイル、潜在的なブロッカーを特定し、支援の準備をします。
開発者の視点: エージェントは単に反応するだけではありません。チームのコンテキストを理解し、求められれば未解決の問題を検索できます。
シーン 13: AI が不足しているファイルパスを見つける
ユースケースの例: チームメイトが ReviewForm.js を見つけられなかったと言及しました。
AI の応答: エージェントがローカルリポジトリを検索し、正しいパスを見つけて、チャットスレッドに直接返信します。
なぜ重要か: 誰かの応答を待つ代わりに、AI アシスタントが正確でリポジトリを理解した回答でチームメイトのブロックをリアルタイムに解消し、オンボーディングとコラボレーションをより迅速かつスムーズにします。
🚀 クイックスタート: Google Chat MCP サーバーのセットアップ
前提条件
- Python 3.9+
- UV パッケージマネージャー(推奨)
- Google Cloud プロジェクト(Google Chat API が有効化されていること)
- MCP クライアント(Claude Desktop、Cursor、その他の MCP 互換 AI アシスタント)
ステップ 1: インストール
# Clone the repository
git clone https://github.com/siva010928/multi-chat-mcp-server.git
cd multi-chat-mcp-server
# Install dependencies
uv venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
uv pip install -r requirements.txt
ステップ 2: Google Chat 認証のセットアップ
# Set up Google Chat API credentials
# 1. Create Google Cloud project
# 2. Enable Google Chat API
# 3. In the Google Chat API dashboard, open the **Configuration** tab and complete the application setup (app name, logo, etc.). *The API will refuse requests until this step is finished.*
# 4. Download credentials.json to src/providers/google_chat/
# Run authentication
python -m src.server --provider google_chat -local-auth
ステップ 3: AI アシスタントへの接続
Cursor + Claude の統合については、詳細な Google Chat MCP Cursor 統合ガイドをご覧ください。
その他の MCP クライアントの場合は、次の設定を追加します。
{
"mcpServers": {
"google_chat_mcp": {
"command": "uv",
"args": [
"--directory", "/path/to/multi-chat-mcp-server",
"run", "-m", "src.server",
"--provider", "google_chat"
]
}
}
}
📖 詳細なセットアップドキュメント
Google Cloud の設定、OAuth のセットアップ、トラブルシューティングを含む包括的なセットアップ手順については、**完全な Google Chat MCP セットアップガイド**をご覧ください。この詳細な実装ガイドでは以下を扱います。
- Google Cloud プロジェクトのセットアップと API の有効化
- OAuth 2.0 の設定とセキュリティのベストプラクティス
- ステップバイステップの認証フロー
- よくあるセットアップの問題とその解決策
サポートされている Google Chat ツール(拡張予定)
以下のツールを使用して Google Chat とやり取りできます。各ツールにはソースファイルとパラメータが含まれます。
🧭 スペース管理
get_chat_spaces_tool– スペースを一覧表示manage_space_members_tool– メンバーを追加/削除get_conversation_participants_tool– スペースの参加者を取得summarize_conversation_tool– 会話を要約
💬 メッセージング
send_message_tool– メッセージを送信するreply_to_message_thread_tool– スレッドで返信するupdate_chat_message_tool– メッセージを更新するdelete_chat_message_tool– メッセージを削除する
😀 インタラクション
add_emoji_reaction_tool– メッセージにリアクションするget_chat_message_tool– メッセージの詳細を取得する
🔍 検索とフィルター
search_messages_tool– メッセージを検索するget_my_mentions_tool– メンションを探す
👤 ユーザー情報
get_my_user_info_tool– 自分のプロフィールget_user_info_by_id_tool– ID でユーザーを取得するget_message_with_sender_info_tool– 送信者情報付きのメッセージlist_messages_with_sender_info_tool– 送信者情報付きのメッセージを一覧表示する
📎 ファイル操作
upload_attachment_tool– 添付ファイルをアップロードするsend_file_message_tool– ファイルの内容を送信するsend_file_content_tool– 整形されたファイルの内容を送信する
📦 バッチ操作
batch_send_messages_tool– 複数のメッセージを送信する
📁 ソースファイルは src/providers/google_chat/tools/ の下にあります
複数のチャットプロバイダーを同時に実行する
Multi Chat MCP Server の大きな利点のひとつは、複数のチャットプロバイダーを同時に実行できることです。各プロバイダーはそれぞれ独自のサーバーインスタンスで実行されるため、AI アシスタントは複数のプラットフォームと同時にやり取りできます。
たとえば、Google Chat と Slack の MCP サーバーの両方を同時に実行するように設定できます。
{
"mcpServers": {
"google_chat": {
"command": "uv",
"args": [
"--directory", "/path/to/multi-chat-mcp-server",
"run", "-m", "src.server",
"--provider", "google_chat"
]
},
"slack": {
"command": "uv",
"args": [
"--directory", "/path/to/multi-chat-mcp-server",
"run", "-m", "src.server",
"--provider", "slack"
]
}
}
}
この構成では、AI アシスタントは次のことができます。
- 設定されたすべてのプロバイダーのツールに同時にアクセスする
- 1 つのコマンドでプラットフォームをまたいだ操作を実行する
- 名前付きプロバイダーを通じてプラットフォーム固有の操作を実行する
実世界のマルチプラットフォームシナリオ
| シナリオ | AI へのコマンド例 | 何が起こるか |
|---|---|---|
| インシデント対応 | 「このエラーログを Slack の #on-call チャンネルと Google Chat の #tech-huddle チームの両方に共有して」 | AI が両方のプラットフォームに同時にエラーを投稿し、それぞれに適した書式で整形します |
| ナレッジの統合 | 「先週の Slack #LLMSpace と Google Chat #LLMTools における認証問題に関するすべての議論を探して」 | AI が両方のプラットフォームを検索し、関連するすべての会話を統合した要約を提示します |
| チーム間の連携 | 「Slack のフロントエンドチームと Google Chat のバックエンドチームに、リリースを 2 日遅らせることを伝えて」 | AI が各チームの好むプラットフォームに合わせて適切なメッセージを作成します |
| 複数チームのスタンドアップ | 「スタンドアップスペースの Slack と Google Chat のすべてのチームからステータス更新を収集し、過去 3 日分を要約して」 | AI が両方のプラットフォームから情報を取得して統合し、1 つの要約にまとめます |
マルチプロバイダー統合のビジネス価値
- ツール切り替えの削減: エラーログや指示の共有、返信といった小規模なユースケースのために、開発者がチャットプラットフォームを頻繁に切り替える必要がありません
- 統合されたコンテキスト: AI アシスタントが、組織のすべてのコミュニケーションチャンネルにわたって認識を維持します
各プロバイダーは provider-config.yaml で個別に定義されるため、AI アシスタント向けの統一されたインターフェースを維持しながら、あらゆるチャットプラットフォームへの対応を拡張できます。
🔥 実現できる実世界のワークフロー
上記のデモウォークスルーは、次のような実践的なチームコラボレーションワークフローを示しています。
協調的な問題解決
- エラーの共有と解決: AI が開発者のエラーをチームに共有し、専門家のガイダンスを受け取り、解決策を実装します
- ナレッジの伝達: チームの専門知識が取り込まれ、AI の支援を通じて活用されます
- 問題のプロアクティブな検出: AI がチームチャットを監視して新たな懸念を検出し、支援を提供します
インテリジェントなリソース管理
- スクリプトの交換: チームのスクリプトを要求して受け取り、ローカルバージョンと自動的に比較します
- 要件の同期: チームの議論から要件ファイルを取得してマージします
- コンテキストに応じた共有: AI がチームのニーズに基づいて最適なファイル共有方法を判断します
チームコミュニケーションの強化
- メンションの追跡: チームのメンションに対する包括的な監視と対応
- アクティビティのサマリー: チームの進捗とブロッカーに関する AI 生成の更新情報
- セマンティック検索: チームスペース全体から概念上関連するディスカッションを検索
📁 プロジェクトアーキテクチャ
multi-chat-mcp-server/
├── src/
│ ├── providers/
│ │ ├── google_chat/ # ✅Production-Ready Google Chat MCP
│ │ │ ├── api/ # Google Chat API implementation
│ │ │ ├── tools/ # MCP tools for Google Chat
│ │ │ ├── utils/ # Utilities and helpers
│ │ │ ├── README.md # Setup guide
│ │ │ └── CURSOR_INTEGRATION.md # Cursor integration
│ │ ├── slack/ # 📋 Ready for implementation
│ │ └── teams/ # 📋 Ready for implementation
│ ├── mcp_core/ # Core MCP functionality
│ └── server.py # Multi-provider MCP server
├── provider-config.yaml # Provider configurations
└── google_chat_mcp_client_demo_images/ # Demo screenshots
プロバイダー設定
providers:
google_chat:
name: "Google Chat MCP Server"
description: "Production-ready Google Chat MCP integration"
token_path: "src/providers/google_chat/token.json"
credentials_path: "src/providers/google_chat/credentials.json"
callback_url: "http://localhost:8000/auth/callback"
🔮 ロードマップとコントリビューション
現在の実装状況
- ✅ Google Chat プロバイダー - 包括的な機能を備え、本番環境に対応
- 📋 Slack プロバイダー - フレームワークは準備済み、実装が必要
- 📋 Teams プロバイダー - フレームワークは準備済み、実装が必要
コントリビューションの方法
このフレームワークを追加のプロバイダーで拡張するためのコントリビューションを歓迎します:
- プロバイダーを選ぶ: Slack、Teams、またはその他のチャットプラットフォーム
- アーキテクチャに従う:
src/providers/google_chat/を参考にしてください - コア機能を実装する: メッセージ、検索、ユーザー管理
- プロバイダー固有のツールを追加する: プラットフォーム独自の機能を活用してください
- プルリクエストを送信する: レビューと統合をお手伝いします
コントリビューションを始めるには:
- 📖 プロバイダー開発ガイド - 技術的な実装の詳細
- 🔗 GitHub Issues - タスクの探索やバグの報告
- 💬 GitHub Discussions - 機能リクエストとアイデア
📚 ドキュメント
必須リソース
- 📖 完全な Google Chat MCP セットアップガイド - 詳細な実装ガイド
- 🔗 Google Chat MCP + Cursor 統合 - ステップバイステップの Cursor セットアップ
- 🛠️ プロバイダー開発ガイド - 機能を拡張する
- ⚖️ コントリビューターライセンス契約 - コントリビューションのガイドライン
🔍 トラブルシューティング
Google Chat の一般的な問題
認証の問題
# Re-authenticate Google Chat
python -m src.server --provider google_chat -local-auth
ツール登録の問題
- AI アシスタントにツールが表示されることを確認してください
provider-config.yamlのプロバイダー設定を確認してください- Google Chat API のすべてのスコープが付与されていることを確認してください
接続の問題
- Google Cloud Console で Google Chat API が有効になっていることを確認してください
- credentials.json ファイルの配置を確認してください
- ネットワーク接続とファイアウォールの設定を確認してください
🏆 この MCP サーバーを選ぶ理由
✅ 実戦で鍛えられた Google Chat 統合
- 基本的なメッセージングを超えた包括的な API カバレッジ
- 開発環境でテストされた実践的なワークフロー
- 適切なエラー処理と認証を備えた本番環境対応
✅ 開発者に優しいアーキテクチャ
- 実際の開発ワークフローのために開発者が作成
- モジュール設計により、理解と拡張が容易
- 実用的な例を交えた充実したドキュメント
✅ コミュニティで拡張可能なフレームワーク
- 透明性の高い開発を行うオープンソース
- コントリビューターに優しいアーキテクチャとドキュメント
- 多様なビジネスニーズに対応するマルチプロバイダー対応
📞 サポートとコミュニティ
ヘルプを得る
- 🐛 バグ報告: GitHub Issues
- 💡 機能リクエスト: GitHub Discussions
- 🛠️ 開発に関する質問: 技術的な詳細を添えて issue を作成してください
コントリビューション
このマルチプロバイダーフレームワークを拡張するためのコントリビューションを歓迎します:
- リポジトリを Fork する
- プロバイダーまたは機能拡張のためのフィーチャーブランチを 作成 する
- 既存のアーキテクチャパターンに 従う
- プルリクエストを 送信 する
- 当社の コントリビューターライセンス契約 に 署名 する
📄 ライセンスと著作権
オープンソースライセンス
このプロジェクトは MIT License の下でライセンスされています - 詳細は LICENSE ファイルをご覧ください。
著作権表示
Copyright (c) 2025 Sivaprakash Kumar. All rights reserved.
これはコントリビューションを歓迎するオープンソースプロジェクトですが、すべての著作権および所有権は Sivaprakash Kumar に帰属します。詳細は COPYRIGHT をご覧ください。
🚀 今すぐ Google Chat MCP サーバーで構築を始めましょう!
拡張可能なマルチプロバイダーアーキテクチャを備えた、本番環境対応の Google Chat 統合
AI を活用したチームコラボレーションツールを構築する開発者に最適
⭐ これがあなたの開発ワークフローに役立つなら、このリポジトリにスターを付けてください!
🤝 Slack、Teams、その他のプラットフォームのサポートを拡大するためにコントリビュートしましょう!
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。