接続設定の手順
Agent Hub のセットアップは すべて Google Chat の DM 内で完結 します。 ウェブログインの必要はありません。
ステップ 1: Agent Hub をインストール
Google Workspace Marketplace から「Agent Hub」 を検索してインストールします。 Workspace 管理者の承認が必要な場合があります。
ステップ 2: bot から DM が届く
インストール完了後、 数秒以内に Agent Hub bot からあなたの Google Chat に Welcome DM が届きます。
Agent Hub にようこそ
Google Chat × あなたの MCP サーバー
[ 設定を始める ] [ 設定方法詳細 ]
ステップ 3: あなたの MCP サーバーを用意する
ここが 最も重要 なステップです。 Agent Hub は「汎用の MCP サーバーを つなぐだけ」 では動きません。 あなたの MCP サーバーに、 Agent Hub からのメッセージを受け取る receive_google_chat_event という名前の ツールを実装しておく必要があります。
スペースで @Agent Hub がメンションされると、 Agent Hub はあなたの サーバーの receive_google_chat_event ツールを呼び出し、 メッセージ本文・送信者・スレッド履歴・参加者などを渡します。 ツールが返したテキストが、 そのまま Chat の返信として表示されます。
以下はコピーしてそのまま使える最小実装の例です。 ツール名 (receive_google_chat_event) は変更しないでください。 中身の // ここを自分のエージェント処理に置き換える の部分を、 ご自身のエージェント (LLM 呼び出しやツール実行) に差し替えてください。
Node / TypeScript の実装例 (クリックで開く)
// server.ts — receive_google_chat_event を実装した最小 MCP サーバー
// 依存: npm i @modelcontextprotocol/sdk
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js'
const server = new McpServer({ name: 'my-agent', version: '0.0.1' })
// ★ このツール名は必ず receive_google_chat_event にすること
server.tool(
'receive_google_chat_event',
{
// Agent Hub が送ってくる入力 (主なもの)
event_type: { type: 'string' }, // 'MESSAGE' など
channel: { type: 'object' }, // { id, type, display_name }
sender: { type: 'object' }, // { email, display_name, user_id }
message: { type: 'object' }, // { id, text, thread_id, created_at }
chat_history: { type: 'array' }, // 直近メッセージ (任意)
members: { type: 'array' }, // 参加者一覧 (任意)
resolved_project_id: { type: 'string' }, // (任意)
},
async (input) => {
// input.message.text にユーザーの発言が入っている。
// ここで自分のエージェント (LLM やツール) を呼び、 返答テキストを作る。
const userText = input?.message?.text ?? ''
// === ここを自分のエージェント処理に置き換える ===
const replyText = '受け取りました: ' + userText
// ============================================
// content[0].text が、 そのまま Google Chat に返信として表示される。
return { content: [{ type: 'text', text: replyText }] }
}
)
const transport = new StreamableHTTPServerTransport({ /* ... */ })
await server.connect(transport)Python (FastMCP) の実装例 (クリックで開く)
# server.py — receive_google_chat_event を実装した最小 MCP サーバー
# 依存: pip install fastmcp
from fastmcp import FastMCP
mcp = FastMCP("my-agent")
# ★ 関数名 (= ツール名) は必ず receive_google_chat_event にすること
@mcp.tool()
def receive_google_chat_event(
event_type: str,
channel: dict,
sender: dict,
message: dict,
chat_history: list = None,
members: list = None,
resolved_project_id: str = None,
) -> str:
user_text = (message or {}).get("text", "")
# === ここを自分のエージェント処理に置き換える ===
reply_text = "受け取りました: " + user_text
# ============================================
# 返した文字列が、 そのまま Google Chat に返信として表示される。
return reply_text
if __name__ == "__main__":
# HTTP で待ち受ける (Agent Hub から呼ばれる)
mcp.run(transport="http", host="0.0.0.0", port=8000)作成したサーバーは Vercel / Fly / Render などにデプロイして、 公開 URL を 用意します。 MCP サーバーの選び方や入手方法は MCP サーバーとは も参照してください。
ステップ 4: 「設定を始める」 を押す
準備案内が表示されます。 必要なものは:
- MCP サーバー の URL (例:
https://my-mcp.example.com/mcp) - 認証 token (任意、 不要な MCP サーバーもあります)
ステップ 5: URL を貼り付け
準備ができたら [準備できた、 次へ] を押し、 Dialog 内の入力欄に MCP サーバー URL を貼り付けて [次へ] を押します。
URL は https:// または http:// で始まる必要があります。
ステップ 6: token を入力 (任意)
次の Dialog で認証 token を入力します。 token が不要な場合は[token なしで保存] を押してください。
token は AES-256-GCM で暗号化保存されます。BH株式会社の従業員も復号できません。
ステップ 7: 接続テスト + 保存
[接続テスト & 保存] を押すと、 Agent Hub が指定された URL に MCP の initialize と tools/list を送信して接続を確認します。 成功すると利用可能なツール一覧が表示され、 設定完了です。
注意: 接続テストは URL に到達できるか (=
initialize/tools/listが返るか) だけを確認します。receive_google_chat_eventツールが実装されているかまでは 検証しません。 つまり、 このツールが無いサーバーでも「接続成功」 と 表示されますが、 実際にメンションすると応答が返りません。 ツール一覧にreceive_google_chat_eventが含まれているか 必ず確認してください。
ステップ 8: 使ってみる
スペースで @Agent Hub をメンションして、 質問やツール起動を自然言語で送るだけ。
後から設定を変えたい時
/connect— URL や token を再設定/status— 現在の設定を確認/disconnect— 接続を解除