Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

MCP Debug Recorder

by oaslanankaversion 1.1.3i★ –iRuns on your computer
Registry nameio.github.oaslananka/debug-recorder-mcp

Install

Overview

Description from the maker (original English)

Record debug sessions, commands, failed attempts, and successful fixes in local SQLite storage.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Databases & datasets
  • You need to fill in: DEBUG_RECORDER_HTTP_TOKEN

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: DEBUG_RECORDER_DB, LOG_LEVEL, FUZZY_THRESHOLD, DEBUG_RECORDER_REDACT_BEFORE_STORE, HOST, PORT, DEBUG_RECORDER_HTTP_TOKEN, DEBUG_RECORDER_ALLOWED_HOSTS, DEBUG_RECORDER_ALLOWED_ORIGINS, DEBUG_RECORDER_MAX_BODY_BYTES, DEBUG_RECORDER_REMOTE_HTTP

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • npmNode.js installed (for the npx command)

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": {
    "debug-recorder": {
      "command": "npx",
      "args": [
        "-y",
        "debug-recorder-mcp"
      ],
      "env": {
        "DEBUG_RECORDER_DB": "your-value",
        "LOG_LEVEL": "your-value",
        "FUZZY_THRESHOLD": "your-value",
        "DEBUG_RECORDER_REDACT_BEFORE_STORE": "your-value",
        "HOST": "your-value",
        "PORT": "your-value",
        "DEBUG_RECORDER_HTTP_TOKEN": "your-value",
        "DEBUG_RECORDER_ALLOWED_HOSTS": "your-value",
        "DEBUG_RECORDER_ALLOWED_ORIGINS": "your-value",
        "DEBUG_RECORDER_MAX_BODY_BYTES": "your-value",
        "DEBUG_RECORDER_REMOTE_HTTP": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add debug-recorder --env DEBUG_RECORDER_DB=your-value --env LOG_LEVEL=your-value --env FUZZY_THRESHOLD=your-value --env DEBUG_RECORDER_REDACT_BEFORE_STORE=your-value --env HOST=your-value --env PORT=your-value --env DEBUG_RECORDER_HTTP_TOKEN=your-value --env DEBUG_RECORDER_ALLOWED_HOSTS=your-value --env DEBUG_RECORDER_ALLOWED_ORIGINS=your-value --env DEBUG_RECORDER_MAX_BODY_BYTES=your-value --env DEBUG_RECORDER_REMOTE_HTTP=your-value -- npx -y debug-recorder-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "debug-recorder": {
      "command": "npx",
      "args": [
        "-y",
        "debug-recorder-mcp"
      ],
      "env": {
        "DEBUG_RECORDER_DB": "your-value",
        "LOG_LEVEL": "your-value",
        "FUZZY_THRESHOLD": "your-value",
        "DEBUG_RECORDER_REDACT_BEFORE_STORE": "your-value",
        "HOST": "your-value",
        "PORT": "your-value",
        "DEBUG_RECORDER_HTTP_TOKEN": "your-value",
        "DEBUG_RECORDER_ALLOWED_HOSTS": "your-value",
        "DEBUG_RECORDER_ALLOWED_ORIGINS": "your-value",
        "DEBUG_RECORDER_MAX_BODY_BYTES": "your-value",
        "DEBUG_RECORDER_REMOTE_HTTP": "your-value"
      }
    }
  }
}

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.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "debug-recorder": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "debug-recorder-mcp"
      ],
      "env": {
        "DEBUG_RECORDER_DB": "your-value",
        "LOG_LEVEL": "your-value",
        "FUZZY_THRESHOLD": "your-value",
        "DEBUG_RECORDER_REDACT_BEFORE_STORE": "your-value",
        "HOST": "your-value",
        "PORT": "your-value",
        "DEBUG_RECORDER_HTTP_TOKEN": "your-value",
        "DEBUG_RECORDER_ALLOWED_HOSTS": "your-value",
        "DEBUG_RECORDER_ALLOWED_ORIGINS": "your-value",
        "DEBUG_RECORDER_MAX_BODY_BYTES": "your-value",
        "DEBUG_RECORDER_REMOTE_HTTP": "your-value"
      }
    }
  }
}

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.

Values you fill in

  • DEBUG_RECORDER_DB env
    Override the SQLite database location for local debug history.
  • LOG_LEVEL env
    Set the minimum structured log level: debug, info, warn, or error.
  • FUZZY_THRESHOLD env
    Override the Fuse.js threshold used during fuzzy reranking.
  • DEBUG_RECORDER_REDACT_BEFORE_STORE env
    Set to true to redact common secret patterns before persisting debug text.
  • HOST env
    HTTP bind host for optional Streamable HTTP mode. Defaults to 127.0.0.1.
  • PORT env
    HTTP port for optional Streamable HTTP mode.
  • DEBUG_RECORDER_HTTP_TOKEN secret env
    Bearer token for optional Streamable HTTP mode. Required for non-loopback bind.
  • DEBUG_RECORDER_ALLOWED_HOSTS env
    Comma-separated HTTP Host allowlist for optional Streamable HTTP mode.
  • DEBUG_RECORDER_ALLOWED_ORIGINS env
    Comma-separated Origin allowlist for optional Streamable HTTP mode.
  • DEBUG_RECORDER_MAX_BODY_BYTES env
    Maximum JSON body size for optional Streamable HTTP mode.
  • DEBUG_RECORDER_REMOTE_HTTP env
    Must be true to allow optional Streamable HTTP mode to bind outside loopback.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

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 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account oaslananka, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Databases & datasetsi

  • More stars than 0% of the other 955 servers in this category
  • Published to the registry more recently than 21% of the other 955 servers in this category
  • Basic checks equal to or better than 100% of the other 955 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is MCP Debug Recorder safe?

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.

What keys or codes does it need?

You need to fill in: DEBUG_RECORDER_HTTP_TOKEN

Does it run on my computer or in the cloud?

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).

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.1.3) reached the registry 4 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Supabase, MongoDB MCP Server, Elasticsearch MCP Server

Alternatives

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

Supabase

by supabase

Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.

Computer or cloud★ 2,993Apache-2.0Updated yesterday
Install

MongoDB MCP Server

by mongodb-js

MongoDB Model Context Protocol Server

Runs on your computer★ 1,157Apache-2.0Updated 3 days ago
Install

README from the maker

Open the README

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.

debug-recorder-mcp

Local-first debug memory for MCP clients.

Record incidents, commands, failed attempts, successful fixes, diagnostics, and searchable debugging history in SQLite.

Published docs · Usage · Client recipes · Security · Release flow

Why this exists

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.

Highlights

  • Local-first storage: no external database or hosted service required.
  • MCP-native tools: stdio server for desktop MCP clients plus optional Streamable HTTP mode.
  • Search that survives messy errors: FTS5 + Fuse.js reranking for stack traces, typos, Unicode, and punctuation-heavy logs.
  • Reusable search presets: save common filters and limits for recurring incident patterns.
  • Safe operations: redaction-before-store option, explicit destructive confirmations, local HTTP host/origin/auth/body-limit hardening.
  • Diagnostics: get_diagnostics returns redacted runtime, schema, package, and health signals for support without leaking raw paths, tokens, stack traces, or command output.
  • Release-grade packaging: audit, coverage, fuzzing, package-size gates, SBOM/VEX policy, install-script approvals, provenance-ready release workflow, and MCP Registry readiness checks.

Quick start

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

MCP client setup

Desktop MCP clients
{

"mcpServers": { "debug-recorder-mcp": { "command": "npx", "args": ["debug-recorder-mcp"] } } }

VS Code / GitHub Copilot

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.

Available MCP tools

ToolPurpose
start_debug_sessionStart tracking a new issue or incident.
add_fixRecord a failed or successful fix attempt.
record_commandSave a command, output, exit code, and session link.
close_sessionMark a session as resolved or abandoned.
update_sessionEdit title, description, or tags.
delete_sessionPermanently delete a session with explicit confirmation.
search_sessionsSearch history with FTS5, fuzzy reranking, pagination, related groups, and optional Markdown export.
save_search_presetStore a reusable query, filters, and limit.
list_search_presetsList saved search presets.
remove_search_presetRemove a saved search preset by name.
find_similar_errorsAsk whether a similar error has appeared before.
get_sessionFetch full details, fixes, and commands.
get_session_contextGet an AI-friendly session summary.
list_sessionsBrowse sessions with filters.
get_statsSummarize debug history.
get_diagnosticsReturn a redacted operational diagnostics snapshot.
export_sessionsExport a full JSON backup or a lightweight summary inventory.
import_sessionsImport a validated export payload.

Real usage examples

Have I seen this before?

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.

Record an active incident
  1. Call start_debug_session with the problem title and error details.
  2. Add terminal commands with record_command.
  3. Add each attempted fix with add_fix.
  4. Improve title, notes, or tags with update_session.
  5. Close the incident with close_session.
Back up or migrate history
  1. Call export_sessions with format: "json". The response is marked with format: "json" and contains the full sessions, fixes, and commands arrays.
  2. Store the returned object in your backup system.
  3. Restore later by passing that object as import_sessions.payload.

For a lightweight inventory, call export_sessions with format: "summary". Summary responses are marked with format: "summary", include aggregate stats and abbreviated session rows, and are not restore payloads.

HTTP transport

The package also supports local Streamable HTTP:

npm run start:http

Useful routes:

  • GET /health
  • GET /version
  • MCP endpoint: POST /mcp

HTTP 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. The static bearer token is private/shared-secret mode: every caller shares one identity, one authority level, and one SQLite dataset. It is suitable for loopback, an encrypted trusted network, or a private authenticating proxy, but it is not OAuth and does not provide per-user scopes or revocation.

Public multi-user HTTP is not supported by the current release. The accepted target architecture uses an external authorization server and MCP-aware gateway with protected-resource discovery, audience-bound tokens, scopes, rate limits, audit events, and subject-aware storage. See Public HTTP authorization and ADR-0006.

Configuration

VariableDescription
DEBUG_RECORDER_DBOverride the SQLite database path.
HOSTHTTP bind host. Defaults to 127.0.0.1.
PORTHTTP port. Defaults to 3000.
DEBUG_RECORDER_HTTP_TOKENPrivate/shared-secret token; required for non-loopback HTTP, not OAuth.
DEBUG_RECORDER_ALLOWED_HOSTSComma-separated HTTP Host allowlist.
DEBUG_RECORDER_ALLOWED_ORIGINSComma-separated browser Origin allowlist.
DEBUG_RECORDER_MAX_BODY_BYTESHTTP JSON body limit. Defaults to 1048576.
DEBUG_RECORDER_REMOTE_HTTPEnable non-loopback HTTP with true, 1, or yes.
DEBUG_RECORDER_REDACT_BEFORE_STOREEnable pre-store redaction with true, 1, or yes.
LOG_LEVELMinimum structured log level: debug, info, warn, or error.
FUZZY_THRESHOLDOverride the Fuse.js reranking threshold.

Boolean configuration also accepts false, 0, and no; values are case-insensitive, whitespace is ignored, and unsupported values fail fast. Diagnostics reports the resolved effective values rather than re-reading changed environment strings.

Data and privacy

  • Database: local SQLite via better-sqlite3.
  • Search index: SQLite FTS5 virtual table.
  • Default path: ~/.debug-recorder-mcp/sessions.db.
  • Redaction: optional before-store redaction plus diagnostics redaction.
  • Deletion: destructive operations require explicit confirmation.
  • Maintenance: see [Storage retention and maintenance](./docs/st

Only the beginning is shown; read the rest in the repo

Ask PopNx