| Crates.io | ferroscope |
| lib.rs | ferroscope |
| version | 1.1.0 |
| created_at | 2025-07-20 15:28:08.42329+00 |
| updated_at | 2025-07-20 22:59:31.604835+00 |
| description | MCP server that enables AI assistants to debug Rust programs using LLDB and GDB |
| homepage | https://github.com/douglance/ferroscope |
| repository | https://github.com/douglance/ferroscope |
| max_upload_size | |
| id | 1761189 |
| size | 102,451 |
MCP server that enables AI assistants to debug Rust programs using LLDB and GDB.
cargo install ferroscope
git clone https://github.com/douglance/ferroscope.git
cd ferroscope
cargo install --path .
Add this to your AI assistant's MCP settings:
{
"mcpServers": {
"ferroscope": {
"command": "ferroscope",
"args": [],
"env": {},
"description": "Rust debugging via LLDB/GDB"
}
}
}
Copy this snippet to your AI assistant's custom instructions:
When debugging Rust programs, use ferroscope with this workflow:
1. Load program: debug_run /path/to/project
2. Set breakpoints: debug_break main or debug_break src/main.rs:25
3. Start execution: debug_continue
4. At breakpoints: debug_eval variable_name to inspect values
5. Step through: debug_step (over), debug_step_into (into), debug_step_out (out)
6. Check state: debug_state to see current status
7. View stack: debug_backtrace when errors occur
Always start with debug_run, then set breakpoints before debug_continue.
For advanced debugging with optimized context usage, append our best practices to your CLAUDE.md:
curl -s https://raw.githubusercontent.com/douglance/ferroscope/main/best-practices.md >> CLAUDE.md
Ask your AI assistant: "Debug this Rust program" and it will use ferroscope automatically.
The configuration above works for Claude Code. Add it to Settings โ MCP Servers, then restart.
Add to .cursor/config.json:
{"tools": {"ferroscope": {"command": "ferroscope", "description": "Debug Rust programs"}}}
Add to tools configuration:
{"customTools": [{"name": "ferroscope", "command": "ferroscope", "type": "mcp"}]}
Add to ~/.config/zed/settings.json:
{"assistant": {"tools": {"ferroscope": {"command": "ferroscope", "args": []}}}}
For any MCP-compatible AI assistant, the command is ferroscope. Check your assistant's documentation for "MCP tools" or "external tools".
debug_run - Load and prepare Rust programs for debuggingdebug_break - Set breakpoints at functions or linesdebug_continue - Launch/continue program executiondebug_step - Step through code line by linedebug_step_into - Step into function callsdebug_step_out - Step out of current functiondebug_eval - Evaluate expressions and inspect variablesdebug_backtrace - Show call stackdebug_list_breakpoints - List all breakpointsdebug_state - Get current debugging session stateCheck ferroscope is installed and working:
# Verify installation
which ferroscope
# Test basic functionality
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' | ferroscope
# Run test suite (if built from source)
cargo run --bin comprehensive-test
# Expected output:
# ๐งช FERROSCOPE COMPREHENSIVE TEST SUITE
# โ
MCP Protocol Test: PASSED
# โ
Program Loading Test: PASSED
# โ
Breakpoint Test: PASSED
# ... (more tests)
# ๐ ALL TESTS PASSED! Ferroscope functionality verified!
Ferroscope uses automated semantic versioning based on conventional commits. New versions are automatically published to crates.io when:
See CONTRIBUTING.md for contribution guidelines and release process details.
Ready to debug Rust programs with AI! ๐ฆ