MCP Server for MCP Registry to discover and search for available MCP servers in the registry
Single tool with reasonable naming and description, but several quality gaps. Tool name 'list_mcp_servers' correctly starts with a verb and is clear. Description is substantive (115 chars) and explains the primary function. However, parameter descriptions are present but somewhat generic, output schema is completely undocumented (critical gap), and error handling lacks recovery guidance. The tool returns raw JSON with minimal structure guidance for downstream agents. No parameter validation constraints are visible beyond basic type/URL validation, and the response includes verbose metadata that could be stripped for token efficiency. The tool is functional and correctly registered via the SDK, but lacks production-grade polish for error recovery and output documentation.
List MCP servers from the MCP Registry with optional pagination. Returns raw server data for semantic analysis.
Output schema is completely undocumented. LLMs cannot plan downstream actions without knowing what fields to expect in the response. The function returns nested JSON with 'servers' array and 'metadata' object, but no schema is provided explaining field types, presence of pagination cursors, or expected server object structure.
Error handling provides no recovery guidance. The code throws 'HTTP {status}: {statusText}' on failed requests, which is a raw error string that gives LLMs no hint about retry eligibility, required corrections, or alternative actions.
Response includes raw API metadata (metadata object with next_cursor) and returns all server fields without curation. No documentation of which fields are relevant for LLM reasoning vs. which could be stripped to reduce token cost. Responses may be verbose and include internal pagination details irrelevant to agent decision-making.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 51 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 48 | - | v1 |
Parameter 'limit' defaults to 50 but has no mention in the tool description that results are capped. The description says 'Returns raw server data for semantic analysis' without stating the pagination behavior or limit enforcement.
No tool annotation hints (readOnlyHint, destructiveHint, idempotentHint). While this is a read-only tool and could benefit from readOnlyHint annotation for clarity, the current registration does not include any metadata hints.