Server data from the Official MCP Registry
Record debug sessions, commands, failed attempts, and successful fixes in local SQLite storage.
Record debug sessions, commands, failed attempts, and successful fixes in local SQLite storage.
Valid MCP server (3 strong, 3 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
7 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Unverified package source
We couldn't verify that the installable package matches the reviewed source code. Proceed with caution.
Set these up before or after installing:
Environment variable: DEBUG_RECORDER_DB
Environment variable: LOG_LEVEL
Environment variable: FUZZY_THRESHOLD
Environment variable: DEBUG_RECORDER_REDACT_BEFORE_STORE
Environment variable: HOST
Environment variable: PORT
Environment variable: DEBUG_RECORDER_HTTP_TOKEN
Environment variable: DEBUG_RECORDER_ALLOWED_HOSTS
Environment variable: DEBUG_RECORDER_ALLOWED_ORIGINS
Environment variable: DEBUG_RECORDER_MAX_BODY_BYTES
Environment variable: DEBUG_RECORDER_REMOTE_HTTP
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-oaslananka-debug-recorder-mcp": {
"env": {
"HOST": "your-host-here",
"PORT": "your-port-here",
"LOG_LEVEL": "your-log-level-here",
"FUZZY_THRESHOLD": "your-fuzzy-threshold-here",
"DEBUG_RECORDER_DB": "your-debug-recorder-db-here",
"DEBUG_RECORDER_HTTP_TOKEN": "your-debug-recorder-http-token-here",
"DEBUG_RECORDER_REMOTE_HTTP": "your-debug-recorder-remote-http-here",
"DEBUG_RECORDER_ALLOWED_HOSTS": "your-debug-recorder-allowed-hosts-here",
"DEBUG_RECORDER_MAX_BODY_BYTES": "your-debug-recorder-max-body-bytes-here",
"DEBUG_RECORDER_ALLOWED_ORIGINS": "your-debug-recorder-allowed-origins-here",
"DEBUG_RECORDER_REDACT_BEFORE_STORE": "your-debug-recorder-redact-before-store-here"
},
"args": [
"-y",
"debug-recorder-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
Debugging knowledge usually disappears into chat windows, terminals, and commit history. debug-recorder-mcp gives MCP-enabled agents and IDEs a durable local memory so they can answer:
“Have I fixed this before?”
It stores each debugging session, error, command, attempted fix, working fix, tags, and context in a local SQLite database. Search combines SQLite FTS5 with fuzzy reranking, reusable presets, pagination metadata, related-session groups, and optional Markdown exports.
get_diagnostics returns redacted runtime, schema, package, and health signals for support without leaking raw paths, tokens, stack traces, or command output.Requires Node.js 22 LTS or 24 LTS and npm 10+.
npx debug-recorder-mcp
Default database path:
~/.debug-recorder-mcp/sessions.db
Use a custom database path:
DEBUG_RECORDER_DB=/path/to/custom.db npx debug-recorder-mcp
{
"mcpServers": {
"debug-recorder-mcp": {
"command": "npx",
"args": ["debug-recorder-mcp"]
}
}
}
Create or update .vscode/mcp.json:
{
"servers": {
"debug-recorder-mcp": {
"type": "stdio",
"command": "npx",
"args": ["debug-recorder-mcp"]
}
}
}
More setup examples are in Client setup recipes.
| Tool | Purpose |
|---|---|
start_debug_session | Start tracking a new issue or incident. |
add_fix | Record a failed or successful fix attempt. |
record_command | Save a command, output, exit code, and session link. |
close_session | Mark a session as resolved or abandoned. |
update_session | Edit title, description, or tags. |
delete_session | Permanently delete a session with explicit confirmation. |
search_sessions | Search history with FTS5, fuzzy reranking, pagination, related groups, and optional Markdown export. |
save_search_preset | Store a reusable query, filters, and limit. |
list_search_presets | List saved search presets. |
remove_search_preset | Remove a saved search preset by name. |
find_similar_errors | Ask whether a similar error has appeared before. |
get_session | Fetch full details, fixes, and commands. |
get_session_context | Get an AI-friendly session summary. |
list_sessions | Browse sessions with filters. |
get_stats | Summarize debug history. |
get_diagnostics | Return a redacted operational diagnostics snapshot. |
export_sessions | Export local history for backup or migration. |
import_sessions | Import a validated export payload. |
Ask your MCP client:
I am getting
TypeError: Cannot read properties of undefined. Have I seen this before?
The client can call find_similar_errors, then inspect the best match with get_session_context.
start_debug_session with the problem title and error details.record_command.add_fix.update_session.close_session.export_sessions with JSON output.import_sessions.The package also supports local Streamable HTTP:
npm run start:http
Useful routes:
GET /healthGET /versionPOST /mcpHTTP mode is local-first by default. It binds to 127.0.0.1, creates an isolated stateless MCP server/transport per request, validates Host, validates browser Origin when present, and enforces a JSON body-size limit before the MCP transport receives the request.
For deliberate non-loopback exposure, set all of these:
HOST=0.0.0.0
DEBUG_RECORDER_REMOTE_HTTP=true
DEBUG_RECORDER_HTTP_TOKEN=replace-with-a-long-random-token
DEBUG_RECORDER_ALLOWED_HOSTS=debug-recorder.example.com
DEBUG_RECORDER_ALLOWED_ORIGINS=https://debug-recorder.example.com
npm run start:http
Wildcard origins are rejected for remote mode.
| Variable | Description |
|---|---|
DEBUG_RECORDER_DB | Override the SQLite database path. |
HOST | HTTP bind host. Defaults to 127.0.0.1. |
PORT | HTTP port. Defaults to 3000. |
DEBUG_RECORDER_HTTP_TOKEN | Optional bearer token for local HTTP; required for non-loopback HTTP. |
DEBUG_RECORDER_ALLOWED_HOSTS | Comma-separated HTTP Host allowlist. |
DEBUG_RECORDER_ALLOWED_ORIGINS | Comma-separated browser Origin allowlist. |
DEBUG_RECORDER_MAX_BODY_BYTES | HTTP JSON body limit. Defaults to 1048576. |
DEBUG_RECORDER_REMOTE_HTTP | Must be true before binding to a non-loopback host. |
DEBUG_RECORDER_REDACT_BEFORE_STORE | Set true to redact common secret patterns before persistence. |
LOG_LEVEL | Minimum structured log level: debug, info, warn, or error. |
FUZZY_THRESHOLD | Override the Fuse.js reranking threshold. |
better-sqlite3.~/.debug-recorder-mcp/sessions.db.
better-sqlite3uses a native addon. If Node versions change and bindings fail, runnpm rebuild better-sqlite3.
docker build -t debug-recorder-mcp:local .
docker run --rm -p 127.0.0.1:3000:3000 \
-e HOST=0.0.0.0 \
-e DEBUG_RECORDER_REMOTE_HTTP=true \
-e DEBUG_RECORDER_HTTP_TOKEN=replace-with-a-long-random-token \
-e DEBUG_RECORDER_ALLOWED_HOSTS=127.0.0.1:3000,localhost:3000 \
-e DEBUG_RECORDER_ALLOWED_ORIGINS=http://127.0.0.1:3000,http://localhost:3000 \
debug-recorder-mcp:local
The image installs with npm ci, preserves reviewed native install scripts, prunes development dependencies, and runs as the non-root node user.
Published documentation is generated by npm run docs:site and published to GitHub Pages:
https://oaslananka.github.io/debug-recorder-mcp/
Important docs:
npm ci
npm run format:check
npm run lint
npm run check:dead-code
npm run test:coverage
npm run test:fuzz
npm run build
npm run test:e2e
npm run audit
npm run check:install-scripts
npm pack --dry-run
npm run check:package-size
npm run check:version
npm run check:mcp
npm run check:security-policy
npm run docs:site
Full local gate:
npm run ci:local
Release readiness:
npm run prepublishOnly
npm run check:mcp-registry
The normal release workflow uses Release Please, builds release assets, generates SBOM/checksums, attests the tarball, uploads GitHub Release assets, and publishes to npm with provenance.
For the first npm package creation, use the manual Initial npm Token Publish workflow with repository secret NPM_TOKEN. After the package exists and npm trusted publishing is configured, the regular Release workflow can publish through GitHub OIDC. Details are in Release flow.
Released under the MIT License. package.json also declares "license": "MIT", and the npm package includes LICENSE.
If this project saves you debugging time, support development here:
Funding metadata is available in both .github/FUNDING.yml and package.json.
This repository owns the product-level agent plugin, MCP runtime configuration, and product-specific skills for debug-recorder-mcp. The central agent-tools repository should catalog this plugin, but the manifest and workflow instructions live here so they stay synchronized with the actual MCP server package.
| File | Purpose |
|---|---|
.claude-plugin/plugin.json | Claude Code-valid product plugin manifest. |
.mcp.json | Claude Code project-local MCP server configuration. |
.codex/config.example.toml | Codex CLI MCP configuration example. |
.vscode/mcp.example.json | VS Code / GitHub Copilot workspace MCP configuration example. |
opencode.example.jsonc | OpenCode project MCP configuration example. |
.opencode/skills/ | OpenCode-native mirrored skill definitions. |
docs/agent-runtime-config.md | Agent runtime setup and validation notes. |
Validate plugin packaging locally:
claude plugin validate .
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.