Stackon
everywhere · drop-in

Trace your agents from the editor you already use.

A drop-in MCP server that gives any MCP-compatible client — Claude Code, Cursor, Windsurf, Codex, Zed — six tools that stream Stackon Trace spans and run evals. One config block, a token, and every run your agent makes lands in Trace.

mcp.json · stackon6 tools · drop-in
{
  "mcpServers": {
    "stackon": {
      "command": "npx",
      "args": ["@stackon/mcp"],
      "env": { "STACKON_API_TOKEN": "ht_•••" }
    }
  }
}
record_runtrace
start_tracetrace
add_spanspan
end_tracetrace
list_recent_tracesread
run_evalseval
speaks toClaude CodeCursorWindsurfCodexZed
One JSON block to installSix tools: trace, span, evalClaude Code · Cursor · Windsurf · Codex · Zed

01

Up and running in one config block

Drop the Stackon MCP server into your editor's mcp.json, set your token, and restart. The six tools appear in the tool picker immediately — no SDK to adopt, no agent code to rewrite. The same block works across every MCP-compatible client.

mcp.json · stackon6 tools · drop-in
{
  "mcpServers": {
    "stackon": {
      "command": "npx",
      "args": ["@stackon/mcp"],
      "env": { "STACKON_API_TOKEN": "ht_•••" }
    }
  }
}
record_runtrace
start_tracetrace
add_spanspan
end_tracetrace
list_recent_tracesread
run_evalseval
speaks toClaude CodeCursorWindsurfCodexZed

02

Six tools, the full trace lifecycle

record_run captures a complete run in one shot — the simplest way to start. For multi-step work, start_trace, add_span, and end_trace build a nested waterfall (agent, llm, tool, eval, internal spans), and the server rolls up cost and tokens on close. list_recent_traces reads your team's traces; run_evals grades any trace against your enabled evals.

trace · run_8c4fok · 742ms · $0.0053
agent.plan742ms
tools.search_code86ms
llm.complete_refactor612ms
tools.edit_file78ms
evals.no_regression54ms
agentllmtooleval5 spans · 3,007 tok

03

Same span schema, same team identity

Whether a run starts in Claude Code, on the canvas, or via the API, it's the OTel-compatible span schema flowing into the same Trace backend under the same team. Observability follows your agents across every surface — one timeline, not five disconnected ones.

mcp.json · stackon6 tools · drop-in
{
  "mcpServers": {
    "stackon": {
      "command": "npx",
      "args": ["@stackon/mcp"],
      "env": { "STACKON_API_TOKEN": "ht_•••" }
    }
  }
}
record_runtrace
start_tracetrace
add_spanspan
end_tracetrace
list_recent_tracesread
run_evalseval
speaks toClaude CodeCursorWindsurfCodexZed

04

Scoped tokens, hashed at rest

Each token is scoped to a single team and can read or write traces only within it. Tokens are SHA-256 hashed at rest — the plaintext is shown exactly once on creation — and the server never persists it, reading from the env var and passing it as a bearer header. Revoked tokens are rejected on every call.

compliance · trust layeraudit-ready
agent.coderAgent run· trace · 8c4f21a12:04:11
u · danaRole changed· member · owner12:04:42
proxyPII redacted· 3 replacements12:05:09
u · renBYOK key rotated· anthropic12:06:30
pii proxy · standardscrubbing

in email dana@acme.io, card 4242 4242 4242 4242

out email <REDACTED:email>, card <REDACTED:credit_card>

anthropic…aF3kopenai…9Qx2
AES-256-GCM

6

MCP tools

5+

Editors

OTel-compatible

Schema

Speed plus trust — prove your agents got better this week.

Stackon MCP is one piece of Stackon, the observability-first workspace for teams running Claude and Codex. Start free and instrument your first run today.