anchor-debug
Provides tools for debugging Solana Anchor program failures, including parsing logs, fetching transaction details, and looking up error codes.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@anchor-debugparse logs from my failed anchor test"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
anchor-debug
CLI tool that makes Anchor program failures understandable.
When your Anchor test fails with custom program error: 0x1770, anchor-debug tells you exactly what broke, where, and why.
Before vs After
Without anchor-debug:
Error: failed to send transaction: Transaction simulation failed: Error processing Instruction 0: custom program error: 0x7d2With anchor-debug:
✗ Transaction failed
Error: ConstraintHasOne
Code: 0x7d2 (2002)
Msg: A has_one constraint was violated — account field does not match expected value
Program: my_program (9uvbWC...)
CPI call stack:
└─ ✗ my_program (9uvbWC...) ← failed here
Error: A has_one constraint was violated — account field does not match expected value
└─ ✓ TokenkegQfeZy... (Token Program)
└─ ✗ my_program::validate_authority ← failed hereRelated MCP server: yksanjo/gmem
Installation
npm install -g anchor-debug
# or use directly with npx
npx anchor-debug --helpUsage
Pipe anchor test output
anchor test 2>&1 | npx anchor-debuganchor-debug reads stdin, finds the failure, and prints a human-readable error. If the test succeeds, output is passed through unchanged.
Debug a transaction by signature
npx anchor-debug tx <SIGNATURE> --cluster devnet
npx anchor-debug tx <SIGNATURE> --cluster mainnet-beta
npx anchor-debug tx <SIGNATURE> --cluster http://localhost:8899Fetches the transaction from the RPC, extracts its logs, and formats the error.
Run tests with automatic error formatting
npx anchor-debug test
npx anchor-debug test --skip-buildRuns anchor test for you and prints the parsed error on failure.
Options
Flag | Description |
| Also show raw log lines |
| Show all program log messages |
| Cluster or RPC URL (tx command) |
| Pass --skip-build to anchor test |
How it works
Log parser — reads Solana program logs line-by-line using a regex state machine
Error database — 60+ Anchor framework errors mapped by hex code (both new 0x7d0+ and legacy 0x1770+ ranges)
CPI tracer — rebuilds the full
Program invoke [N]call tree and marks the innermost failing invocationIDL resolver — reads
Anchor.tomlandtarget/idl/*.jsonto show program names instead of pubkeys
Supported error ranges
Range | Source |
| Instruction errors |
| IDL errors |
| Constraint errors (Anchor ≥ 0.24) |
| Account errors |
| State errors |
| Legacy constraint errors (Anchor < 0.24) |
MCP Server (for AI agents)
anchor-debug works as an MCP server, giving AI coding agents (Claude Code, Cursor, etc.) structured access to Solana error data.
Add to .mcp.json in your project:
{
"mcpServers": {
"anchor-debug": {
"command": "npx",
"args": ["anchor-debug", "mcp"]
}
}
}Or globally in ~/.claude/mcp.json.
Available tools:
Tool | What it does |
| Takes raw log lines → structured error + CPI stack |
| Takes signature + cluster → fetches and parses |
| Takes hex code → error name + message |
Example agent response after calling parse_logs:
{
"failed": true,
"error": {
"name": "ConstraintHasOne",
"code": 2002,
"hex": "0x7d2",
"message": "A has_one constraint was violated — account field does not match expected value",
"category": "constraint"
},
"failedProgram": "my_program",
"failedNode": {
"program": "my_program",
"depth": 2,
"errorMessage": "A has_one constraint was violated"
},
"cpiStack": [...]
}Instead of reasoning about 0x1770, the agent immediately knows what failed and can fix it in one shot.
Programmatic API
import { parseLogsFromString, formatResult } from "anchor-debug";
const logs = [
"Program MyProg invoke [1]",
"Program MyProg failed: custom program error: 0x7d2",
];
const parsed = parseLogsFromString(logs.join("\n"));
console.log(formatResult(parsed));Milestones
M1 — npm package, log parser, Anchor error database
M2 — CPI call stack visualizer, IDL integration
M3 — VS Code extension (inline hints)
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
AlicenseAqualityCmaintenanceAI-powered smart contract forge with an 8-agent adversarial security audit system. Generate, audit, fix, and compile Solidity and Anchor/Rust contracts across 8 chains.Last updated7501MIT- Alicense-qualityBmaintenanceCrypto-aware project memory for AI coding agents. Typed entities for Solana Programs/PDAs and EVM Contracts across Base, Optimism, Polygon, Arbitrum, Ethereum — plus chain-agnostic Decisions, Findings, and Integrations. Anchor + Hardhat auto-ingest, SQLite + FTS5 BM25 ranking, append-only versioning, git-aware diffs.Last updated221MIT
- Flicense-qualityDmaintenanceEnables AI assistants to interact with the Solana blockchain, manage accounts and tokens, and develop and deploy smart contracts end-to-end.Last updated4
- Alicense-qualityDmaintenanceProvides basic Solana RPC methods and prompts for AI models to interact with the Solana blockchain. Enables developers to fetch balances, account info, and transactions through natural language.Last updated1MIT
Related MCP Connectors
Solana token safety for AI agents — rug-pull, honeypot & Token-2022 trap detection before you buy.
Intelligence marketplace on Solana — 86 tools, 168+ endpoints, per-call USDC.
Pay-per-call JSON repair + JSON Schema validation for AI agents (USDC on Base, x402).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/konradbachowski/anchor-debug'
If you have feedback or need assistance with the MCP directory API, please join our Discord server