Skip to content

Commit 67e40b3

Browse files
madhav165crivetimihai
authored andcommitted
Fix A2A tool call
Signed-off-by: Madhav Kandukuri <madhav165@gmail.com>
1 parent 55131d6 commit 67e40b3

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

mcpgateway/services/tool_service.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1533,10 +1533,9 @@ async def create_tool_from_a2a_agent(
15331533
input_schema={
15341534
"type": "object",
15351535
"properties": {
1536-
"parameters": {"type": "object", "description": "Parameters to pass to the A2A agent"},
1537-
"interaction_type": {"type": "string", "description": "Type of interaction", "default": "query"},
1536+
"query": {"type": "string", "description": "User query", "default": "Hello from MCP Gateway Admin UI test!"},
15381537
},
1539-
"required": ["parameters"],
1538+
"required": ["query"],
15401539
},
15411540
allow_auto=True,
15421541
annotations={
@@ -1626,11 +1625,11 @@ async def _call_a2a_agent(self, agent: DbA2AAgent, parameters: Dict[str, Any]):
16261625
# Patch: Build correct JSON-RPC params structure from flat UI input
16271626
params = None
16281627
# If UI sends flat fields, convert to nested message structure
1629-
if isinstance(parameters, dict) and "parameters" in parameters and "interaction_type" in parameters and isinstance(parameters["interaction_type"], str):
1628+
if isinstance(parameters, dict) and "query" in parameters and isinstance(parameters["query"], str):
16301629
# Build the nested message object
16311630
message_id = f"admin-test-{int(time.time())}"
1632-
params = {"message": {"messageId": message_id, "role": "user", "parts": [{"type": "text", "text": parameters["interaction_type"]}]}}
1633-
method = parameters.get("parameters", "message/send")
1631+
params = {"message": {"messageId": message_id, "role": "user", "parts": [{"type": "text", "text": parameters["query"]}]}}
1632+
method = parameters.get("method", "message/send")
16341633
else:
16351634
# Already in correct format or unknown, pass through
16361635
params = parameters.get("params", parameters)

0 commit comments

Comments
 (0)