Edison Watch
開発者

Google ADK

Google Agent Development Kit (ADK) エージェントをMCPToolsetを使ってEdison Watchに接続する。

Googleの Agent Development Kit は、MCPToolsetStreamableHTTPConnectionParams を使ってEdisonに接続します。接続URL にはAPIキーが含まれているため、認証ヘッダーは不要です。

pip install google-adk mcp
import asyncio

from google.adk.agents import LlmAgent
from google.adk.runners import InMemoryRunner
from google.adk.tools.mcp_tool import MCPToolset, StreamableHTTPConnectionParams
from google.genai import types

import os

agent = LlmAgent(
    model="gemini-3.5-flash",
    name="edison_agent",
    instruction="Use the available tools to help the user.",
    tools=[
        MCPToolset(
            connection_params=StreamableHTTPConnectionParams(
                url=os.environ["EDISON_MCP_URL"],
            ),
        )
    ],
)

async def main() -> None:
    runner = InMemoryRunner(agent=agent, app_name="edison")
    session = await runner.session_service.create_session(app_name="edison", user_id="u1")
    async for event in runner.run_async(
        user_id="u1",
        session_id=session.id,
        new_message=types.Content(role="user", parts=[types.Part(text="List my available tools.")]),
    ):
        if event.content:
            print(event.content)

asyncio.run(main())

EDISON_MCP_URL に接続URLを設定してください(例:https://mcp.edison.watch/mcp/<your-api-key>/?client=google-adk)。

クラス名の正確なスペルに注意してください:StreamableHTTPConnectionParamsHTTP は大文字)。timeout のデフォルトは接続確立まで5秒です。ゲートウェイの応答が遅い場合はこの値を増やしてください。

オプション:暗号化シークレットヘッダー

ゼロ知識暗号化シークレット を使用するサーバーには、headers dictを渡します。

StreamableHTTPConnectionParams(
    url=os.environ["EDISON_MCP_URL"],
    headers={"x-edison-secret-key": os.environ["EDISON_SECRET_KEY"]},
)