MCP server for 402 Index — search 15,000+ paid API endpoints across L402, x402, and MPP protocols with real-time health monitoring
Strong tool naming (verb_noun pattern), comprehensive parameter schemas with enums and constraints, and good descriptions. All 4 tools have clear names (search_, get_, list_, get_), detailed input schemas with type definitions and descriptions, and actionable docstrings. However, output schemas are not formally documented, responses are returned as JSON text blobs without structured field definitions. Error handling is basic (try/catch with JSON error objects) but lacks recovery guidance. No tool annotations (readOnlyHint, idempotentHint) despite all tools being read-only. Parameter descriptions are strong (avg ~80 chars) and include format hints (e.g., 'prefix match', 'comma-separated fields'). Missing: explicit output schema documentation, error classification, and recovery hints.
Get overall directory health and stats: total services, breakdown by protocol/health/source, and sync timestamps. Example: "How many services are in the directory?"
Get full details for a single service including health check history, pricing, and schema information. Example: "Show me full details for service abc123"
List all service categories with counts. Example: "What categories of paid APIs are available?"
Search and filter paid API services in the 402 Index directory. Returns services with health status, pricing, and protocol info. Example: "Find healthy L402 weather APIs under $0.01"
Output schemas not formally documented. Tools return JSON text blobs without structured field definitions. LLMs cannot reliably extract fields or plan downstream calls.
Error handling lacks recovery guidance. Errors return JSON with message but no actionable next steps (e.g., 'Try search_services() first' or 'Retryable: network timeout').
No tool annotations despite all tools being read-only. Missing readOnlyHint metadata to signal safety to agents.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2026-07-28+ | v2 |
search_services returns results as text JSON without pagination metadata (total_count, next_cursor). Large result sets risk context window exhaustion.
CSV output format reduces token usage but response structure is inconsistent (text blob vs structured). No documented schema for CSV field order or escaping behavior.