Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
AI-driven live debugger with MCP bridge for Python, JS, TS, Rust, Java, C/C++
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"debugium": {
"command": "npx",
"args": [
"-y",
"@algiras/debugium"
]
}
}
}Run this in your terminal
claude mcp add debugium -- npx -y @algiras/debugiumPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"debugium": {
"command": "npx",
"args": [
"-y",
"@algiras/debugium"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"debugium": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@algiras/debugium"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account Algiras, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.0.0) reached the registry 8 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, debuff
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Let coding agents play, test and tune your 2D web game: live state, explained errors, replays, fuzz.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
A multi-language debugger with a real-time web UI and LLM integration via MCP.
Debug Python, JavaScript, TypeScript, C, C++, Rust, Java, Scala, and WebAssembly programs from your browser — with AI-driven analysis through the Model Context Protocol.
dap.jsoncontinue_until)get_debug_context (orient in one call), step_until, step_until_change, run_until_exception, explain_exception, get_call_tree, compare_snapshots, find_first_change~/.debugium/port, session logs in ~/.debugium/sessions//plugin marketplace add Algiras/debugium
/plugin install debugium@debugium
Then add to your project's .mcp.json (see MCP Tools below).
curl -fsSL https://raw.githubusercontent.com/Algiras/debugium/main/install.sh | bash
# Prerequisites: Rust stable + wasm-pack
cargo install wasm-pack
wasm-pack build crates/debugium-ui --target web --out-dir pkg cp crates/debugium-ui/pkg/cm_init.js crates/debugium-ui/dist/pkg/ cp crates/debugium-ui/pkg/debugium_ui.js crates/debugium-ui/dist/pkg/ cp crates/debugium-ui/pkg/debugium_ui_bg.wasm crates/debugium-ui/dist/pkg/
cargo install --path crates/debugium-server
debugium launch my_script.py --adapter python
debugium launch app.js --adapter node
debugium launch app.ts --adapter typescript
# C or C++ (compile with -g for debug info)
cc -g -O0 main.c -o main && debugium launch ./main --adapter lldb c++ -g -O0 main.cpp -o main && debugium launch ./main --adapter lldb
cargo build && debugium launch target/debug/my_binary --adapter lldb
# Java (requires microsoft/java-debug adapter)
debugium launch MainClass --adapter java
debugium launch build-target --adapter metals debugium launch build-target --adapter metals:5005 # custom port
# Python (debugpy listening on port 5678)
debugium attach --port 5678 --adapter python
debugium attach --port 5005 --adapter java
debugium attach --port 9229 --adapter node
Or via MCP: attach_session(port=5678, adapter="python", breakpoints=["/path/app.py:42"])
# Create a dap.json (see dap.json.example) then:
debugium launch my_program --config ./dap.json
debugium launch my_program # finds ./dap.json automatically
debugium launch my_script.py --adapter python \
--breakpoint /abs/path/my_script.py:42 \ --breakpoint /abs/path/helpers.py:15
Add a .mcp.json to your project root (Claude Code picks this up automatically):
{
"mcpServers": { "debugium": { "command": "debugium", "args": ["mcp"] } } }
Then launch the session normally — the MCP server connects to whichever port is active:
debugium launch my_script.py --adapter python --breakpoint /abs/path/my_script.py:42
Claude Code will now have access to all Debugium MCP tools. See CLAUDE.md for the recommended workflow and SKILL.md for the full tool reference.
Once a session is running (debugium launch …), you can drive it from a second terminal — or from an LLM agent — without touching the web UI.
Port is auto-discovered from ~/.debugium/port; override with --port.
| Flag | Default | Description |
|---|---|---|
--port PORT | ~/.debugium/port | Server port to connect to |
--session ID | default | Session to target |
--json | off | Print raw JSON instead of human-readable output |
debugium sessions # list active sessions
debugium threads # list threads debugium stack # show call stack debugium vars # show local variables (auto-resolves top frame) debugium vars --frame-id 2 # show variables for a specific frame debugium eval "len(fibs)" # evaluate expression in top frame debugium eval "x + 1" --frame-id 2 debugium source path/to/file.py # print full source file debugium source path/to/file.py --line 43 # windowed ±10 lines with → marker debugium context # full snapshot: paused-at, stack, locals, source, breakpoints debugium context --compact # same but truncated (3 frames, 10 vars)
debugium bp set FILE:LINE [FILE:LINE …] # set breakpoints (replaces existing in that file)
debugium bp list # list all breakpoints debugium bp clear # clear all breakpoints
debugium continue # resume execution
debugium step over # step over (next line) debugium step in # step into a function call debugium step out # step out of current function
debugium annotate FILE:LINE "message" [--color info|warning|error]
debugium finding "message" [--level info|warning|error]
# Terminal A — start the session
debugium launch tests/target_python.py --adapter python \ --breakpoint "$(pwd)/tests/target_python.py:43"
debugium sessions debugium stack debugium vars debugium eval "len(fibs)" debugium bp set tests/target_python.py:49 debugium continue # runs to line 49 debugium vars debugium step over debugium context --json # machine-readable snapshot debugium annotate tests/target_python.py:43 "called here" --color info debugium finding "fibs has 10 elements" --level info debugium bp clear
When connected via MCP, 64 tools are available. Key ones:
| Category | Tools |
|---|---|
| Orient | get_debug_context ★ (paused location + locals + stack + source in one call) |
| Breakpoints | set_breakpoint, set_breakpoints, set_logpoint, list_breakpoints, clear_breakpoints, set_function_breakpoints, set_exception_breakpoints, set_data_breakpoint, list_data_breakpoints, clear_data_breakpoints, breakpoint_locations |
| Execution | continue_execution, step_over, step_in, step_out, pause, goto, disconnect, terminate, restart |
| Inspection | get_stack_trace, get_scopes, get_variables, evaluate, get_threads, get_source, get_capabilities, loaded_sources, source_by_reference, step_in_targets |
| Mutation | set_variable, set_expression |
| Output | get_console_output, wait_for_output (with from_line to avoid stale matches) |
| Memory | read_memory, write_memory, disassemble (native debugging) |
| History | get_timeline, get_variable_history, compare_snapshots, find_first_change |
| Annotations | annotate, get_annotations, add_finding, get_findings |
| Watches | add_watch, remove_watch, get_watches |
| Compound | step_until, step_until_change, continue_until, run_until_exception, explain_exception, get_call_tree, restart_frame |
| Session | get_sessions, list_sessions, launch_session, attach_session, stop_session, export_session, import_session |
| Control | goto_targets, cancel_request |
Note:
step_over,step_in, andstep_outare blocking — they wait for the
adapter to pause before returning. Safe to chain back-to-back without sleeps.
continue_executionreturnsconsole_line_countfor use withwait_for_output.
Tools like
read_memory,goto, andrestart_frameonly appear when the adapter supports them.
See SKILL.md for the full reference with input schemas.
| Key | Action |
|---|---|
F5 | Continue |
F10 | Step Over |
F11 | Step Into |
Shift+F11 | Step Out |
Ctrl/⌘+D | Toggle dark/light mode |
debugium-server (Rust + Axum)
├── DAP proxy — spawns / attaches to debug adapters (debugpy, js-debug, lldb-dap, java-debug, Metals, custom) ├── HTTP API — /state, /sessions, /annotations, /findings, /watches, /timeline ├── WebSocket — broadcasts DAP events + enriched stop data (changed vars, timeline) to UI ├── MCP stdio — JSON-RPC 2.0 server exposing 64 tools for LLM integration ├── CLI control — 13 subcommands to drive sessions from a second terminal └── ~/.debugium/ — port file, session logs (events.ndjson), debug log
debugium-ui (Leptos + WASM) ├── CodeMirror 6 — source viewer with breakpoint gutters, exec arrow, LLM annotations, multi-tab ├── Reactive panels — Variables, Stack, Breakpoints, Finding
Only the beginning is shown; read the rest in the repo