Edison Watch
นักพัฒนา

Google ADK

เชื่อมต่อ agent ของ Google Agent Development Kit (ADK) กับ Edison Watch โดยใช้ MCPToolset

Agent Development Kit ของ Google เชื่อมต่อกับ Edison ด้วย MCPToolset และ StreamableHTTPConnectionParams connection URL ของคุณมี API key อยู่แล้ว ดังนั้นไม่ต้องใช้ auth header

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 เป็น connection URL ของคุณ เช่น https://mcp.edison.watch/mcp/<your-api-key>/?client=google-adk

สังเกตการสะกดชื่อ class ที่แน่นอน: StreamableHTTPConnectionParams (ตัวพิมพ์ใหญ่ HTTP) timeout ของมันมีค่าเริ่มต้นที่ 5 วินาทีสำหรับการสร้างการเชื่อมต่อ - เพิ่มค่าหาก gateway ของคุณช้าในการ handoff

ทางเลือก: header สำหรับ encrypted secrets

สำหรับ server ที่มี ความลับที่เข้ารหัสแบบ zero-knowledge ให้ส่ง headers dict:

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