Agent-native discovery, trust, and routing for AI artifacts. Query the match graph for AI from any agent (Claude Code, Cursor, Windsurf, etc). Every query feeds the graph — the graph learns from every interaction.
Server has 10 tools with complete input schemas and descriptions present. Naming follows verb_noun convention (search, find_mcps, get_artifact, resolve_capability, trust_passport, compare, find_stack, feedback, subscribe, unsubscribe). However, descriptions are brief (10-50 chars for most tools), lacking LLM-optimized context about WHEN to use each tool and what distinguishes them. Parameters have types and descriptions, but lack constraints (enums, ranges, patterns). Output schemas are not documented in the tool definitions, only visible in TypeScript interfaces in the code. Error handling is present (15s timeout, HTTP error messages) but lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications in metadata.
Compare two artifacts side-by-side
Report success/failure to close the learning loop
Discover MCP servers by capability need
Assemble a complete harness stack for a use case
Get full details + capabilities for an artifact
Resolve capability:// URIs to trusted artifacts
Find AI tools by intent/query (with Match Proof)
Descriptions are too brief (10-50 chars) and lack LLM-optimized context. Missing WHEN to use each tool and how it differs from similar tools (e.g., search vs find_mcps vs resolve_capability). Baseline for A+ tools is 50-200 chars with clear selection criteria.
Output schemas not documented in tool definitions. Only visible as TypeScript interfaces (SearchResponse, TrustPassportResponse, ResolveResponse). LLMs cannot see these, they need structured output documentation in the tool schema itself.
No parameter constraints (enums, ranges, patterns). 'limit' params accept any number with no bounds documented. 'type' and 'risk' params accept free-form strings instead of enums. Unbounded numbers invite absurd values; free-form strings invite hallucinated values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Set up persistent watch for new tools
Get machine-readable trust passport for an artifact
Cancel a persistent watch
No tool annotations despite clear risk classifications in metadata. 'search', 'find_mcps', 'get_artifact', etc. are READ_ONLY but lack readOnlyHint. 'feedback', 'subscribe', 'unsubscribe' are WRITE but lack destructiveHint/idempotentHint. Agents cannot infer safety properties.
Error handling returns raw HTTP errors and timeouts but lacks recovery guidance. 'Unfragile API error 500: ...' tells the agent nothing actionable. Should include 'Try again in 30s' or 'Check API_KEY configuration' or 'Contact support'.