프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

MCP Agent Trace Inspector

제작자: dbsectrainer버전 1.0.1i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.dbsectrainer/mcp-agent-trace-inspector

설치

개요

제작자가 쓴 설명(영어 원문)

Step-by-step observability for MCP agent workflows

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 개발자 도구
  • 입력해야 할 값: MCP_API_KEY, MCP_JWT_SECRET

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 직접 입력할 값: MCP_API_KEY, MCP_JWT_SECRET

비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.

필요한 것

  • npmNode.js 설치(npx 명령어용)

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요

{
  "mcpServers": {
    "agent-trace-inspector": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-agent-trace-inspector"
      ],
      "env": {
        "MCP_API_KEY": "your-value",
        "MCP_JWT_SECRET": "your-value"
      }
    }
  }
}

터미널에서 이 명령어를 실행하세요

claude mcp add agent-trace-inspector --env MCP_API_KEY=your-value --env MCP_JWT_SECRET=your-value -- npx -y mcp-agent-trace-inspector

실행하기 전에 빈 값을 채워 주세요.

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "agent-trace-inspector": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-agent-trace-inspector"
      ],
      "env": {
        "MCP_API_KEY": "your-value",
        "MCP_JWT_SECRET": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "agent-trace-inspector": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-agent-trace-inspector"
      ],
      "env": {
        "MCP_API_KEY": "your-value",
        "MCP_JWT_SECRET": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

직접 입력할 값

  • MCP_API_KEY 비밀 env
    Optional API key for the Streamable HTTP transport (stdio does not require it).
  • MCP_JWT_SECRET 비밀 env
    Optional HMAC-SHA256 secret for Bearer JWTs on the Streamable HTTP transport.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 dbsectrainer 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

개발자 도구 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 4907개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 4907개 중 90%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 4907개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

MCP Agent Trace Inspector, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

입력해야 할 값: MCP_API_KEY, MCP_JWT_SECRET

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.0.1)은 4일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: GitHub, Desktop Commander, Cloudflare MCP

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

GitHub

제작자: github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

컴퓨터 또는 클라우드★ 34,245MIT4일 전 업데이트
설치

Desktop Commander

제작자: wonderwhy-er

MCP server for terminal commands, file operations, and process management

내 컴퓨터에서 실행★ 10,225MIT16일 전 업데이트
설치

Cloudflare MCP

제작자: cloudflare

Cloudflare MCP servers

클라우드에서 실행★ 4,446Apache-2.014개월 전 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

MCP Agent Trace Inspector

Local-first, MCP-native observability for agent workflows. Every tool call, prompt transformation, latency, token estimate, and cost estimate is recorded in a local SQLite database — no cloud account, no API key, and no traces leaving your machine.

Built specifically for MCP rather than bolted onto a generic LLM proxy.

Tools · Configuration · HTTP transport · Verification · Known limitations · Contributing

Overview

mcp-agent-trace-inspector is an MCP server. Agents call its tools to start a trace, record each step they take, and finish the trace. Humans then inspect summaries, compare runs, export a self-contained HTML dashboard, export OTLP/JSON spans, or stream the compliance audit log.

Agent / MCP client

│ trace_start → trace_step → trace_end ▼ MCP Agent Trace Inspector ├── SQLite (~/.mcp/traces.db) ├── JSONL audit log (~/.mcp/trace-inspector-audit.jsonl) └── tools: summaries, diffs, HTML, OTLP/JSON, retention, alerts

Key features

  • Tool-call tracing — inputs, outputs, latency, caller-supplied or automatic token estimates for every step.
  • Persistent local storage — SQLite via Node's built-in node:sqlite; traces survive restarts and never require a service.
  • Self-contained HTML dashboard — error highlighting, step timeline, latency waterfall, responsive layout, and expandable input/output JSON.
  • Cost estimation — offline cl100k_base tokenizer plus a configurable pricing table; no API calls and no billing-account data.
  • Trace comparison — aggregate and step-by-step diffs between two runs.
  • Reasoning-chain extraction — finds reasoning/thinking/planning steps.
  • OTLP/JSON export — standard resourceSpans → scopeSpans → spans documents.
  • Compliance audit log — append-only JSONL of recorded steps, exportable as JSON or CSV with date filtering.
  • Alerts — persisted latency, error-rate, and cost thresholds evaluated when a trace ends; optional Slack or generic webhook delivery.
  • Retention controls — startup purge or explicit archive/delete policy.
  • Two transports — stdio (default) and stateless Streamable HTTP with optional API-key/JWT authentication and rate limiting.

Technology stack

LayerChoice
RuntimeNode.js ≥ 22.13 (ESM, built-in node:sqlite)
LanguageTypeScript 5, strict mode
Protocol@modelcontextprotocol/sdk (tools, resources, prompts)
HTTPExpress 5 + MCP Streamable HTTP transport
StorageSQLite through node:sqlite
Tokenizationgpt-tokenizer (cl100k_base)
CLIyargs
TestsVitest + V8 coverage
Lint / formattingESLint + Prettier
CIGitHub Actions (install, audit, lint, format, test, build)

Requirements

  • Node.js 22.13.0 or newer. node:sqlite first became available in Node 22.5.0 behind --experimental-sqlite; it is unflagged from 22.13.0. This project does not pass the flag.
  • npm.
  • No database server, API key, or external account is required for core tracing.

Quick start (MCP client)

Add the server to your MCP client configuration:

{

"mcpServers": { "trace-inspector": { "command": "npx", "args": ["-y", "mcp-agent-trace-inspector@latest"] } } }

Use a project-specific database:

{

"mcpServers": { "trace-inspector": { "command": "npx", "args": [ "-y", "mcp-agent-trace-inspector@latest", "--db=~/traces/my-project.db" ] } } }

Then ask your agent to trace its own work:

Start a trace named "test-run" with trace_start.

Record a trace_step for each tool you call, including that tool's input and output. Call trace_end when you are done, then call get_trace_summary for the trace.

The summary contains the step count, estimated token total, total recorded latency, wall-clock duration, cost estimate, and reasoning-chain detection. Tracing is explicit: the inspector records steps when the agent calls trace_step; it does not intercept other MCP servers automatically.

From source
npm ci

npm run build node dist/index.js --db=~/.mcp/traces.db

Development mode runs TypeScript directly and logs MCP protocol messages on stderr:

npm run dev -- --db=/tmp/traces.db

Streamable HTTP transport

HTTP mode is useful for a local team instance or a container. It is stateless: every POST gets a fresh MCP server and transport, there is no Mcp-Session-Id, and the endpoint does not offer a server-initiated SSE stream. Send every JSON-RPC message as its own POST /mcp request.

node dist/index.js --db=~/.mcp/traces.db --http-port=3000 --http-host=127.0.0.1

stderr: MCP Agent Trace Inspector HTTP server listening on http://127.0.0.1:3000/mcp

Initialize the endpoint:

curl -s http://127.0.0.1:3000/mcp \

-H 'Content-Type: application/json' \ -H 'Accept: application/json, text/event-stream' \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'

The response is an SSE frame. Call a tool:

curl -s http://127.0.0.1:3000/mcp \

-H 'Content-Type: application/json' \ -H 'Accept: application/json, text/event-stream' \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"list_traces","arguments":{}}}'

BehaviorValue
EndpointPOST /mcp
GET / DELETE /mcp405 with Allow: POST
Default bind address127.0.0.1 (loopback only)
Request body limit10 MB
Rate limit60 requests / 60 s per validated API key or client IP
Auth (optional)X-API-Key and/or Authorization: Bearer
DNS-rebinding guardHost header must be localhost/127.0.0.1 when bound to loopback
HTTP authentication

Set one or both environment variables before starting the server:

MCP_API_KEY=change-me \

MCP_JWT_SECRET=change-me-too \ node dist/index.js --http-port=3000 --http-host=127.0.0.1

  • If MCP_API_KEY is set, every HTTP request must send X-API-Key: .
  • If MCP_JWT_SECRET is set, every HTTP request must send Authorization: Bearer ; exp and nbf claims are checked.
  • If both are set, both are required.
  • The stdio transport ignores both variables.

--http-host=0.0.0.0 is allowed but the server warns. Put TLS and an authenticating reverse proxy in front of any non-loopback deployment; do not expose the raw endpoint to an untrusted network.

When the server is bound to loopback behind a reverse proxy, the proxy must rewrite the Host header to 127.0.0.1: . The loopback DNS-rebinding guard rejects other Host values with 403 by design.

Configuration

CLI flags
FlagDefaultDescription
--db, --db-path~/.mcp/traces.dbSQLite database file. ~ is expanded. :memory: is supported for tests.
--retention-days0On startup, delete traces older than N days. 0 disables.
--pricing-tablebuilt-in tableJSON file of { "model": { "input": number, "output": number } }. Merged over built-in rates.
--no-token-countfalseDisable automatic token counting (token_count values become null).
--http-portunsetStart in HTTP mode on this port (1–65535) instead of stdio.
--http-host127.0.0.1HTTP bind address. Prefer loopback unless authentication and TLS are used.
--help—Show usage.
--version—Print the package version.
Environment variables

The server does not load .env files automatically. Export variables in your shell or configure them in your MCP client.

VariableDefaultPurpose
MCP_API_KEYunsetHTTP only: require X-API-Key on every request.
MCP_JWT_SECRETunsetHTTP only: require a valid HS256 Bearer JWT.
MCP_AUDIT_LOG_PATH~/.mcp/trace-inspector-audit.jsonlCompliance audit log path. Created owner-readable/writable (0600).
MCP_SLACK_WEBHOOKunsetSlack incoming-webhook URL used when an alert fires.
MCP_ALERT_WEBHOOKunsetGeneric JSON webhook URL used when an alert fires.

See .env.example for a copy-paste template. Never commit real secrets or database files; both are ignored by .gitignore.

Tools

The server exposes 13 tools. Tool annotations mark state-changing tools (readOnlyHint: false) and destructive retention (destructiveHint: true).

Trace lifecycle
ToolPurpose
trace_startBegin a trace. Returns a trace_id. Pass "auto" or an empty string for a generated name.
trace_stepRecord one step for a running trace. Steps are rejected after trace_end.
trace_endMark a trace completed, evaluate alert rules, and return fired alerts. Repeated calls are idempotent.

trace_step requires trace_id, tool_name, input (object), and output (object). token_count must be a non-negative integer; latency_ms must be a finite, non-negative number. Caller-supplied token counts are used as-is.

Inspection
ToolPurpose
list_tracesList traces, newest first. Optional positive-integer limit.
get_trace_summaryStep/token/latency totals, duration, cost estimate, reasoning detection.

| compare_traces | Diff two traces: aggregates, tool coverage, and per-position steps.

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기