A server for the Model Context Protocol on Solana blockchain providing token analysis, whale detection, account information, and semantic search capabilities
Server has 12 tools with basic schemas and descriptions, but significant gaps limit production readiness. Tool naming is mostly verb-based (get_, find_, check_, process_, list_, generate_), which is good. However, descriptions are inconsistent in depth, some are 10-15 chars (e.g., 'Get the status of the analyzer API'), while others are more detailed. Parameter descriptions exist but are sparse; many lack format constraints, ranges, or validation guidance. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) are present. Output schemas are partially documented in Pydantic models (TokenResponse, WhaleResponse, WhalesResponse) but not all tools have explicit return type documentation. Error handling is minimal, no recovery guidance, no categorization of retryable vs. fatal errors. Security: no evidence of secret injection patterns, rate limiting, or permission gates. Composition: tools are reasonably single-purpose, but some (e.g., find_token_whales) have many optional parameters that could be split. Duplicate tool name 'get_status' appears in both analyzer_routes.py and routes.py, creating ambiguity.
Check the health and responsiveness of the Solana RPC endpoint
Find whale holders for a token
Generate model context for a Solana address. This endpoint processes blockchain data to create context information for different model types like transaction history or token holdings.
Get detailed information about a Solana account
Get enhanced account information
Get the status of the analyzer API
Get the current status of the MCP server
Duplicate tool name 'get_status' in both analyzer_routes.py and routes.py creates ambiguity. LLMs cannot distinguish which status endpoint to call.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) present. LLMs cannot determine which tools are safe to retry or have side effects.
Minimal error handling. No recovery guidance, error categorization, or actionable error messages. E.g., 'Invalid mint_address' should suggest 'Call search_tokens() first if you only have a token name.'
Parameter descriptions lack format constraints and ranges. E.g., 'min_usd_value' has no min/max bounds; 'concurrency' has no upper limit. Unbounded numbers let LLMs pass absurd values.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | <=2025-11-25 | v2 |
Get all token accounts for an address with enhanced data
Get detailed token information
Get detailed information about a Solana transaction
List all available models for context generation
Process natural language queries about Solana blockchain data. This endpoint takes a prompt and uses semantic analysis to understand the intent and return relevant blockchain data.
No output schema documentation for most tools. Only TokenResponse, WhaleResponse, WhalesResponse are explicitly modeled. Return types for get_account_info, get_transaction, generate_context are undocumented.