A Model Context Protocol (MCP) server that integrates with Azure AI Foundry Agent Service, providing automatic discovery and dynamic registration of AI agents as MCP tools. This enables seamless interaction with Azure-hosted AI agents through standardized interfaces, supporting both local and web transport modes with regular background synchronization.
Single tool 'query_agent' has critical definition gaps. Input schema visible but incomplete: only 'query' parameter documented, missing 'agent_id' parameter entirely from schema definition. Tool description is generic (18 chars) and lacks context on when/why to use it. No output schema documented. No error handling guidance for LLM recovery. No parameter constraints (enums, ranges). Tool name lacks clarity, 'query_agent' is vague; 'send_query_to_agent' or 'invoke_agent_with_query' would be clearer. No indication of idempotency, destructiveness, or read-only nature in description despite risk=READ_ONLY annotation.
Query the specified Azure AI Agent.
Input schema incomplete: 'agent_id' parameter missing from schema definition despite being required in function signature. Only 'query' parameter documented in schema.
Tool description is 18 characters ('Query the specified Azure AI Agent.'), below 20-char minimum. Lacks WHAT, WHEN, and prerequisites. Does not explain when to use this vs alternatives or what the agent does.
No output schema documented. LLM cannot predict response structure, fields, or data types. Cannot plan downstream tool calls or extract relevant data.
No error handling guidance. Code returns raw error messages ('Error: ...') without recovery hints. LLM cannot determine if error is retryable, user-fixable, or fatal.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 34 | <=2025-11-25 | v2 |
Tool name 'query_agent' is vague. Does not clearly convey action. Verb is generic; 'query' could mean search, ask, inspect, or invoke. Ambiguous names cause LLM selection errors.