A
abhishekash/spanhound
Capture local AI agent traces and inspect failures, approvals, token usage, and run regressions through MCP.
无 SECURITY.md
在 GitHub 查看 ↗链接已于 2026-11-12 核查 · HTTP 200 · 打开的是厂商自己的官网
安装与配置
- 复制上面的命令
- 粘成
claude_desktop_config.json里mcpServers的一项(本地服务器用 command + args,示例见 客户端接法) - 重启客户端
客户端配置(取自该仓库的安装命令)
{
"mcpServers": {
"abhishekash-spanhound": {
"command": "uvx",
"args": ["spanhound"]
}
}
}解析自我们于 2026-10-26 抓取的该仓库 README;我们未执行过。
command/args 来自仓库写明的安装命令;不确定时请以该项目 README 为准。
VS Code(.vscode/mcp.json —— 键名是 servers)
{
"servers": {
"abhishekash-spanhound": {
"command": "uvx",
"args": ["spanhound"]
}
}
}VS Code 顶层键是 <code>servers</code>,其余与上面那份相同。
Claude Code(命令行)
claude mcp add --transport stdio abhishekash-spanhound -- uvx spanhound
Claude Code 不收 JSON 文件,用这条命令直接加。
配置项的键名以你的客户端为准:客户端与 CLI
- ★ 数取值
- 1 ★ · abhishekash/spanhound · 取自 GitHub 搜索 API · (2026-11-13 20:00:50 核对)
- 来源明细
- 收录自 punkpeye/awesome-mcp-servers 榜单(我们从中收集的条目之一) · 条目类型:MCP 服务
- 收录与活跃
- 收录于 2026-10-23 · 最近见到 2026-11-14 · 共见到 26 次 · 被 23 个来源列出
- 评分构成
- 综合分 2,300 · 1 ★ · 23 个来源 · mcp
- 安装
uvx spanhound
常见问题(答案都来自我们的记录)
怎么安装?
该仓库给出的安装命令是
uvx spanhound。我们的记录里它是仓库自己提供的;不保证在你的客户端上直接可用。它适合谁 / 用来做什么?
我们把它归在这些标签下: MCP 服务。标签来自条目自身,不是我们强加的分类。
谁维护它、还在更新吗?
仓库
abhishekash/spanhound;我们收录于 2026-10-23;最近见到 2026-11-14。这里没有"官方认证"或"质量评级"——我们只记录来源与时间。# SpanHound
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Capture local agent traces. Ask your MCP client what happened. SpanHound
(formerly mcp-trace-inspector) captures supported Python agent calls, receives
OpenTelemetry over local OTLP/HTTP, and exposes read-only MCP tools for
failures, approval decisions, token usage, and run comparisons. It reads JSONL
spans and OTLP JSON exports as described in the
user guide, including traces from
agent-harness.
Demo: Watch the full 48-second video · Read the reproducible story. This is a scripted regression trace, not a live-model benchmark.
The project's concrete origin was a shell-boundary regression: the harness blocked
cat ../outside.txt, but the old trace recorded only that runshell was
called, not the returned diagnostic. SpanHound and the harness now preserve and
query that bounded error.
## Try it in one command
bash
uvx spanhound demo
text
SpanHound demo — recorded agent failure
Tool: runshell
Failure: error: shell path escapes workspace root: '../outside.txt'
Approval: approve (auto)
Trace: 563e779ee8fa2d7069fc63ed2cf9c8ec (6 spans)
The demo shows a recorded runshell failure and its approval evidence from a
bundled scripted regression trace. It needs no clone, account, trace backend, or
MCP client. To inspect your own traces, point SpanHound at a directory of JSONL
spans or saved OTLP JSON exports:
bash
uvx spanhound --trace-dir /path/to/traces --check
--check prints the runs it found and exits. Connect an MCP client with the
configuration below to ask questions about those runs.
## Explore the repository fixtures
bash
git clone https://github.com/abhishekash/spanhound.git
cd spanhound
uvx --from . spanhound --trace-dir examples --check
--check also reports a missing directory or malformed complete JSONL or OTLP
JSON record.
To try an OTLP JSON export, run the same command with --trace-dir tests/fixtures.
The sample export includes a model call, token
usage, a tool call, and an exception.
## Capture your own traces
For a Python agent, install SpanHound's optional auto instrumentation in the
same environment as the agent, then run it through SpanHound:
bash
python -m pip install 'spanhound[auto]'
spanhound run --trace-dir ./traces -- python agent.py
The command starts and stops a local receiver, configures OTLP export, and
captures supported library calls without changes to agent.py. The optional
package includes instrumentation for OpenAI, Anthropic, OpenAI Agents, HTTPX,
and Requests. It reports when no spans were produced. Your Python agent and
SpanHound must share one environment; for a uv project, use
uv add 'spanhound[auto]' and uv run spanhound run -- python agent.py.
See the Python capture guide.
For other runtimes, or agents that already export OpenTelemetry traces, start
the receiver in one terminal:
bash
uvx spanhound collect --trace-dir ./traces
Point an agent that already uses an OpenTelemetry trace exporter at the
receiver, then run the agent:
bash
export OTELEXPORTEROTLPTRACESENDPOINT=http://127.0.0.1:4318/v1/traces
export OTELEXPORTEROTLPTRACESPROTOCOL=http/protobuf
# Start your instrumented agent here.
SpanHound stores each accepted OTLP/HTTP trace request as a local JSON file.
Run uvx spanhound --trace-dir ./traces --check to see the captured runs, then
(formerly mcp-trace-inspector) captures supported Python agent calls, receives
OpenTelemetry over local OTLP/HTTP, and exposes read-only MCP tools for
failures, approval decisions, token usage, and run comparisons. It reads JSONL
spans and OTLP JSON exports as described in the
user guide, including traces from
agent-harness.
Demo: Watch the full 48-second video · Read the reproducible story. This is a scripted regression trace, not a live-model benchmark.
The project's concrete origin was a shell-boundary regression: the harness blocked
cat ../outside.txt, but the old trace recorded only that runshell was
called, not the returned diagnostic. SpanHound and the harness now preserve and
query that bounded error.
## Try it in one command
bash
uvx spanhound demo
text
SpanHound demo — recorded agent failure
Tool: runshell
Failure: error: shell path escapes workspace root: '../outside.txt'
Approval: approve (auto)
Trace: 563e779ee8fa2d7069fc63ed2cf9c8ec (6 spans)
The demo shows a recorded runshell failure and its approval evidence from a
bundled scripted regression trace. It needs no clone, account, trace backend, or
MCP client. To inspect your own traces, point SpanHound at a directory of JSONL
spans or saved OTLP JSON exports:
bash
uvx spanhound --trace-dir /path/to/traces --check
--check prints the runs it found and exits. Connect an MCP client with the
configuration below to ask questions about those runs.
## Explore the repository fixtures
bash
git clone https://github.com/abhishekash/spanhound.git
cd spanhound
uvx --from . spanhound --trace-dir examples --check
--check also reports a missing directory or malformed complete JSONL or OTLP
JSON record.
To try an OTLP JSON export, run the same command with --trace-dir tests/fixtures.
The sample export includes a model call, token
usage, a tool call, and an exception.
## Capture your own traces
For a Python agent, install SpanHound's optional auto instrumentation in the
same environment as the agent, then run it through SpanHound:
bash
python -m pip install 'spanhound[auto]'
spanhound run --trace-dir ./traces -- python agent.py
The command starts and stops a local receiver, configures OTLP export, and
captures supported library calls without changes to agent.py. The optional
package includes instrumentation for OpenAI, Anthropic, OpenAI Agents, HTTPX,
and Requests. It reports when no spans were produced. Your Python agent and
SpanHound must share one environment; for a uv project, use
uv add 'spanhound[auto]' and uv run spanhound run -- python agent.py.
See the Python capture guide.
For other runtimes, or agents that already export OpenTelemetry traces, start
the receiver in one terminal:
bash
uvx spanhound collect --trace-dir ./traces
Point an agent that already uses an OpenTelemetry trace exporter at the
receiver, then run the agent:
bash
export OTELEXPORTEROTLPTRACESENDPOINT=http://127.0.0.1:4318/v1/traces
export OTELEXPORTEROTLPTRACESPROTOCOL=http/protobuf
# Start your instrumented agent here.
SpanHound stores each accepted OTLP/HTTP trace request as a local JSON file.
Run uvx spanhound --trace-dir ./traces --check to see the captured runs, then
收录徽章(可选)
想把收录标记放进 README 就复制这行,可选,不影响收录。
[](https://anclum.com/zh/s/abhishekash-spanhound/)
- 来源
- awesome · https://github.com/abhishekash/spanhound
- 按领域浏览
- MCP 服务
- Traction
- 1 ★
- 收录来源
- 23 个独立来源
- 收录于
- 今天
- 安全策略
- 我们没在该仓库根目录找到
SECURITY.md(这不代表不安全)
同类推荐
所属领域与标签
每个标签都能点进去看同类的全部条目。数字是当前库里的真实条数。