An MCP server for Solvitor API. Solvitor is an AI-powered platform that helps developers extract IDL files from closed-source Solana smart contracts and decompile them.
Single tool 'decode' has a clear verb-noun name and basic schema, but suffers from critical gaps: description is only 16 characters (well below the 50-200 char baseline for LLM-optimized descriptions), parameter descriptions are minimal (program_id and url lack context about format/constraints), and no output schema is documented. The tool lacks error handling guidance, recovery hints, and actionable error messages. No tool annotations (readOnlyHint, etc.) despite being marked READ_ONLY. The implementation shows basic competence but falls short of production-grade quality.
Decode a program
Tool description is only 16 characters ('Decode a program'). LLM-optimized descriptions should be 50-200 chars and explain WHAT, WHEN, and WHY. Current description provides no context for tool selection or expected behavior.
No output schema documented. LLMs cannot plan downstream calls or extract relevant data without knowing what fields the response contains. The tool returns JSON but structure is opaque to the agent.
Parameter descriptions lack actionable constraints. 'program_id' description says 'The Solana program ID to decode' but does not specify format (base58? length? validation rules?). 'url' description omits that it defaults to mainnet and what RPC endpoints are valid.
No error handling guidance. If the API returns 'program not found' or 'invalid RPC URL', the tool returns a generic McpError with no recovery hints. LLM cannot self-correct or suggest alternatives.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | <=2025-11-25 | v2 |
Tool marked READ_ONLY but no tool annotations (readOnlyHint) present in schema. Spec 2026-07-28 supports tool annotations to signal intent to LLMs; this tool should declare readOnlyHint=true.