Multi-server MCP workspace for AI-powered smart contract auditing. Includes 14 specialized MCP servers for blockchain analysis, testing, fuzzing, monitoring, and external data integration.
6 tools with basic schemas and descriptions, but significant gaps. All tools have descriptions (10-50 chars, below the 50-200 char baseline for LLM optimization). Input schemas present but minimal, most parameters lack descriptions. No output schemas documented. No error handling guidance. No tool annotations (readOnlyHint/destructiveHint). Naming is verb-forward (fork, kill_fork, send_raw_tx, snapshot, revert, list_forks) but descriptions are terse and lack context on when to use each tool or what they return. Parameters like 'chain', 'id', 'rawTx' have no descriptions in the visible schema. No pagination, no structured output guidance.
Spin up an anvil fork of the given chain at the given block (or latest). Returns RPC URL.
Kill an anvil fork by id.
List active forks.
Revert the fork to a snapshot.
Send a signed raw transaction to a fork (eth_sendRawTransaction).
Take a snapshot of the fork state (returns snapshot id).
Parameter descriptions missing. Schema shows properties (chain, block, rpcUrl, id, rawTx, snapshot) but no descriptions for any parameter. LLMs cannot infer what 'chain' accepts (enum of chain names?) or what 'block' format is (number string? 'latest'?). Violates pattern:tool-description baseline (100% of A+ tools have param descriptions).
No output schemas documented. Tools return RPC URLs, snapshot IDs, fork lists, etc., but no schema defines what fields the LLM should expect. Agents cannot plan downstream calls or extract required IDs (e.g., fork ID for send_raw_tx). Violates pattern:tool baseline (100% of A+ tools have documented return types).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Descriptions too terse (10-50 chars vs. 50-200 char baseline). 'Spin up an anvil fork...' and 'Kill an anvil fork by id' lack context on when to use, what happens, or what to expect. No guidance on prerequisites (e.g., 'anvil must be installed'), error recovery, or chaining (e.g., 'Returns fork ID for use in send_raw_tx'). Violates pattern:tool-description (descriptions should answer WHAT, WHEN, and WHAT RETURNS).
No error handling guidance. Tools like send_raw_tx (WRITE risk) and kill_fork (WRITE risk) have no documented error cases, recovery steps, or confirmation patterns. Agents cannot distinguish retryable errors from fatal ones. Violates pattern:recovery-guide and pattern:confirmation-request (irreversible operations should support dry-run or confirmation).
No tool annotations. Tools marked WRITE (fork, kill_fork, send_raw_tx, revert) lack destructiveHint or idempotentHint annotations. Agents cannot determine which calls are safe to retry. Violates current MCP spec (2026-07-28) which rewards tool annotations for safety classification.