Meta MCP server for routing, load balancing, and monitoring downstream MCP servers
The MCP Orchestrator server has a single tool 'dynamic_downstream_tools' that is dynamically composed from downstream MCP servers. The tool itself has a generic, high-level description but lacks concrete input/output schema documentation visible in the source code. The tool is described as a meta-router that 'dynamically discovers and exposes all tools from downstream MCP servers' but the actual schema for how clients invoke this tool, what parameters it accepts, what it returns, is not evident in the provided source. The description is 173 characters, which is within the 10 - 1024 range, but it describes the router's internal behavior rather than the tool's external contract. No input schema is visible. Output structure is not documented. The tool name 'dynamic_downstream_tools' is also problematic, it is a noun phrase (tool discovery mechanism) rather than a verb-driven action name (e.g., 'call_downstream_tool', 'route_tool_call'). The description does not explain to an LLM when to call this tool, what parameters it expects, or how to interpret results.
The MCP Orchestrator dynamically discovers and exposes all tools from downstream MCP servers. Tools are namespaced by server name (e.g., 'server-name.tool-name') and can also be called by their unqualified name if unambiguous. The router handles tool resolution, load balancing across redundant servers, fallback on failure, and rate limiting per server and tool.
Tool name is a noun phrase ('dynamic_downstream_tools') rather than a verb-driven action name. Should start with an action verb (e.g., 'call_tool', 'route_tool_call', 'invoke_downstream_tool'). LLMs rely on the verb to infer action intent.
Output schema is not documented in the tool definition. LLMs cannot plan downstream calls or extract routing results without knowing what fields are returned.
Description explains internal router behavior ('router handles tool resolution, load balancing, fallback') rather than the external tool contract. LLMs need to know: What does calling this tool do? What parameters does it accept? What does it return?
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 24 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 20 | - | v1 |
No input parameters are documented. The description mentions 'Tools are namespaced by server name' and 'can also be called by their unqualified name' but the actual parameter names, types, and constraints are absent.