A demonstration MCP server that bridges HTTP/Streamable transport protocols and proxies tools, prompts, and resources from downstream MCP servers
This MCP server has three tools with significant definition quality issues. Tools are sourced from example files rather than the actual server implementation, which raises verification concerns. Tool descriptions exist but are generic and lack depth. Input schemas are present with type definitions, but parameter descriptions are minimal. Output schemas are not documented. Error handling guidance is absent. The server appears to be a bridge/demo with limited production-grade definition rigor.
Get weather information for a city
Starts sending periodic notifications
Summarize any text using an LLM
Tool definitions sourced from example/SDK files, not actual server implementation. Cannot verify if these tools are actually registered or operational in the running bridge server. Definition scope and traceability are unclear.
No output schema documentation for any tool. LLMs cannot predict return structures, forcing them to infer response shapes and increasing hallucination risk.
Tool descriptions are generic and lack WHEN/WHY guidance. 'Starts sending periodic notifications' does not explain use cases, prerequisites, or when to select this tool over alternatives. Descriptions average ~30 chars, well below the 50-200 char LLM-optimized baseline.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 42 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 55 | - | v1 |
'summarize' is vague, does not specify what LLM model is used, whether it's abstractive or extractive, or how length is constrained. Missing parameter validation rules (e.g. max text length, output format).
get_weather has 'country' parameter requiring a 'country code (e.g., US, UK)' but does not enforce enum constraints or document the expected code format (ISO 3166-1 alpha-2, ISO 3166-1 alpha-3, numeric?). LLMs will hallucinate codes like 'USA' or 'United States'.
'start-notification-stream' parameter 'caller' lacks description clarity. Is it a required correlation ID? An identifier for callback routing? The description 'Identifier for the tool call to track notifications' is too vague for LLM reasoning.
No error recovery guidance documented. Tools provide no hints on what to do if they fail (retryable? user-fixable? fatal?). No examples of error responses or suggested recovery paths.
No parameter constraints documented (min/max for 'interval' and 'count'; max length for 'text'). Unbounded numeric params invite LLMs to pass absurd values (interval=-1, count=999999).