google / google/adk-python-community

ADK with MCPToolSet not working connecting to local MCPServer

Abierto
#33 3 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
182
Forks
75
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

1. I have created venv for adk project
2. In the same env I am running FastMCP MCP server http://localhost:8000
3. Instead of using MCP client - i wanted to use ADK as a client and calling tool from MCP server
4. My ADK API server is running like
adk api_server --host localhost --port 8000
5. When I am make a call to this server which in turn goes to MCP and call the tool its not working. I am getting error
Fail to load 'adk-google-models' module. 'module' object is not callable

Flow

Running venv where MCP server is running and ADK is running. ADK is the client calling tool defined in MCP server.

Code
root_agent = LlmAgent(
# Use the latest stable Flash model identifier
model="gemini-2.5-flash",
name="gemini_flash_agent",
description=("Agent to answer questions about weather in a city."),
instruction="Use the data from a URL provided by the user",
generate_content_config=generate_content_config,
tools= [McpToolset (
connection_params=StreamableHttpConnectionParams(
url="http://localhost:9000/mcp",
timeout=10,
),
tool_filter['get_weather']. // Weather tool running on MCP server
#sub_agents=[],
# ... other agent parameters
),
],
)

MCP code:

import io

from fastmcp import FastMCP
from fastmcp.utilities.types import Image

# Create server - dependencies are now in fastmcp.json
mcp = FastMCP("Screenshot Demo")

@mcp.tool
def get_weather(city: str) -> dict:
"""Gets the current weather for a specific city."""
# In a real app, this would call a weather API
return {"city": city, "temperature": "72F", "forecast": "Sunny"}

if __name__ == "__main__":
import asyncio

asyncio.run(mcp.run_async())

testing calling MCP:

curl -X POST http://localhost:8000/run \
-H "Content-Type: application/json" \
-d '{
"app_name": "adk-google-models",
"user_id": "test1",
"session_id": "test1session",
"new_message": {
"role": "user",
"parts": [
{"text": "What is the weather in cityxxx"}
]
}
}'

anyone have idea what is missing?

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.