Skip to main content
Glama
oaslananka

MCP Debug Recorder

mcp-debug-recorder

npm version License npm downloads LobeHub Glama

mcp-debug-recorder は、「以前にこれを修正したことがあるか?」という単純な疑問に素早く答えます。

デバッグセッション、ターミナルコマンド、失敗した試行、成功した修正をローカルのSQLiteデータベースに記録するため、MCPクライアントが自然言語で自身のデバッグ履歴を照会できるようになります。

クイックスタート

npx mcp-debug-recorder

デフォルトでは、データは ~/.mcp-debug-recorder/sessions.db に保存されます。

アーキテクチャ

src/
├── db.ts           - openDb(), createTestDb(), versioned MIGRATIONS[]
├── store.ts        - Store class with dependency-injected SQLite access
├── search.ts       - FTS5 + Fuse.js hybrid search
├── tools/          - MCP tool handlers grouped by session/search/admin concerns
├── types.ts        - Zod schemas and TypeScript types
├── mcp.ts          - MCP server wiring + tool registration
├── server-http.ts  - Streamable HTTP transport
├── logging.ts      - Structured logging with secret redaction
└── version.ts      - Package version helper

スキーマのバージョン管理

データベーススキーマは PRAGMA user_version を介してバージョン管理されます。移行は起動時に自動的に実行されるため、アップグレードに手動のSQL操作は不要です。

カスタムデータベースパスの追加

DEBUG_RECORDER_DB=/path/to/custom.db npx mcp-debug-recorder

設定

環境変数

  • DEBUG_RECORDER_DB: SQLiteデータベースのパスを上書きします

  • PORT: ストリーマブルHTTPモードのHTTPサーバーポートを上書きします

  • LOG_LEVEL: 最小構造化ログレベル (debug, info, warn, error)

  • FUZZY_THRESHOLD: リランキング中に使用されるFuse.jsのしきい値を上書きします

利用可能なツール

  • start_debug_session: 新しい問題の追跡を開始します

  • add_fix: 失敗または成功した修正の試行を記録します

  • record_command: ターミナルコマンドとその出力を保存します

  • close_session: セッションを解決済みまたは放棄済みとしてマークします

  • update_session: タイトル、説明、またはタグを編集します

  • delete_session: 明示的な確認を伴い、セッションを完全に削除します

  • search_sessions: FTS5 + ファジーリランキングを使用して過去のセッションを検索します

  • find_similar_errors: 以前に同様のエラーを見たことがあるかを確認します

  • get_session: セッションの詳細を取得します

  • get_session_context: AIフレンドリーなセッションの要約を取得します

  • list_sessions: フィルターを使用してセッションを閲覧します

  • get_stats: デバッグ履歴を要約します

  • export_sessions: バックアップや移行のためにローカル履歴をエクスポートします

  • import_sessions: 以前にエクスポートされたJSONペイロードをインポートします

Claude Desktopの設定

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

VS Code MCPの設定

{
  "servers": {
    "mcp-debug-recorder": {
      "type": "stdio",
      "command": "npx",
      "args": ["mcp-debug-recorder"]
    }
  }
}

実際の使用例

以前にこれを見たことがあるか?

TypeError: Cannot read properties of undefined が発生していますが、以前にこれを見たことがありますか?」

現在のエラーテキストで find_similar_errors を呼び出し、get_session_context で最適な一致を確認します。

アクティブなインシデントを記録する

  1. start_debug_session を呼び出します

  2. record_command でターミナルコマンドを追加します

  3. add_fix で各修正の試行を追加します

  4. タイトルやメモが明確になったら update_session を使用します

  5. close_session でセッションを閉じます

ローカルのデバッグ履歴をバックアップする

  1. format: "json" を指定して export_sessions を呼び出します

  2. 返されたJSONを好みのバックアップシステムに保存します

  3. 後で import_sessions で復元します

データストレージ

  • デフォルトパス: ~/.mcp-debug-recorder/sessions.db

  • better-sqlite3 を使用したポータブルなSQLiteストレージ

  • 大規模な履歴に対応するFTS5ベースの検索インデックス

  • 外部データベースサーバーは不要

注: better-sqlite3 はネイティブアドオンを使用します。バインディングエラーが発生した場合は、Nodeのバージョンに合わせて npm rebuild better-sqlite3 を実行してください。

HTTPトランスポート

このパッケージはストリーマブルHTTPもサポートしています:

npm run start:http

便利なルート:

  • GET /health

  • GET /version

  • MCPエンドポイント: POST/GET/DELETE /mcp

開発

npm ci
npm run lint
npm test
npm run build
npm run test:e2e
npm run docs:api

リリース検証用:

npm run format:check
npm run test:coverage
npm run prepublishOnly

その他のプロジェクトドキュメント:

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

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/oaslananka/mcp-debug-recorder'

If you have feedback or need assistance with the MCP directory API, please join our Discord server