mcpField
T
tracelane-mcp

tracelane-mcp

本地服务
tracelane.dev数据与分析12 周前更新

关于 tracelane-mcp

tracelane-mcp 是只读 MCP 服务,用于查看 Tracelane Agent 轨迹、评测和护栏判定。它面向分析 Agent 行为的团队,默认通过网关进行租户范围内的访问,也支持自托管环境直接读取 ClickHouse。

主要功能

  1. 01列出并搜索轨迹
  2. 02查看轨迹和跨度详情
  3. 03解释护栏拦截
  4. 04列出评测并读取结果
  5. 05离线回放已记录轨迹
  6. 06通过网关或 ClickHouse 读取

适用场景

  1. 01调查出错或触发护栏的轨迹
  2. 02检查 LLM 和工具跨度详情
  3. 03查看评测断言
  4. 04离线逐步查看已记录轨迹

MCP 相关

通过 stdio 或自行运行的 Streamable HTTP 向 MCP 客户端提供八种只读轨迹和评测工具。默认通过 Tracelane 网关进行租户范围内读取;自托管时可配置为使用 ClickHouse。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"tracelane-tracelane": {
"command": "npx",
"args": [
"-y",
"@tracelanedev/mcp"
],
"env": {
"TRACELANE_API_KEY": "<TRACELANE_API_KEY>",
"TRACELANE_GATEWAY_URL": "<TRACELANE_GATEWAY_URL>",
"CLICKHOUSE_URL": "<CLICKHOUSE_URL>",
"CLICKHOUSE_USER": "<CLICKHOUSE_USER>",
"CLICKHOUSE_PASSWORD": "<CLICKHOUSE_PASSWORD>",
"CLICKHOUSE_DB": "<CLICKHOUSE_DB>",
"TRACELANE_MCP_TRANSPORT": "<TRACELANE_MCP_TRANSPORT>"
}
}
}
}
启动命令npx -y @tracelanedev/mcp
需要配置的环境变量
TRACELANE_API_KEY密钥Tracelane API key (tlane_…). Resolved to a tenant once at startup via the gateway's /v1/auth/whoami; the server refuses to start if the key is rejected. Also the credential used to read trace data through the gateway when CLICKHOUSE_URL is unset.
TRACELANE_GATEWAY_URLBase URL of the Tracelane gateway. Validates TRACELANE_API_KEY, and — when CLICKHOUSE_URL is unset — is where every trace read goes. Must be https://…tracelane.dev outside development.
CLICKHOUSE_URLself-host only; when unset the server reads through the gateway. Set this to point the server at your own ClickHouse instead of Tracelane Cloud.
CLICKHOUSE_USERClickHouse username.
CLICKHOUSE_PASSWORD密钥ClickHouse password.
CLICKHOUSE_DBClickHouse database holding the spans table.
TRACELANE_MCP_TRANSPORTTransport to serve. stdio (default) for desktop clients; http for the Streamable HTTP transport.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@tracelanedev/mcp0.4.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

@tracelanedev/mcp — Tracelane MCP 服务

license

只读 MCP 服务,可将 Tracelane 跟踪数据提供给任何兼容 MCP 的客户端,包括 Claude Desktop、Claude Code、Cursor,或任何使用 Model Context Protocol 的 Agent。

自 2026-09-07 起在 npm 上发布: npx @tracelanedev/mcp 会安装已发布的版本;下方的配置块可以直接使用。仍在自托管部分介绍如何从源代码运行。 同一次运行还会将 apps/mcp/server.json 提交到 MCP registry;该服务将在 io.github.tracelane/tracelane-mcp 名称下列出。

默认模式通过网关读取——使用仪表板所用的相同租户范围 /v1/* 路由,只需设置 TRACELANE_API_KEY 和 TRACELANE_GATEWAY_URL。这是 Cloud 租户路径,无需 ClickHouse 凭据。设置 CLICKHOUSE_URL 即可切换到自托管模式,改为直接读取 ClickHouse;详见自托管。

快速开始

Cloud(由 Tracelane 托管的租户)

将以下内容添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)、%APPDATA%\Claude\claude_desktop_config.json(Windows),或 Claude Code 项目根目录下的 .mcp.json:

{
  "mcpServers": {
    "tracelane": {
      "command": "npx",
      "args": ["@tracelanedev/mcp"],
      "env": {
        "TRACELANE_API_KEY": "tlane_YOUR_KEY",
        "TRACELANE_GATEWAY_URL": "https://gateway.tracelane.dev"
      }
    }
  }
}

不要设置 CLICKHOUSE_URL——不设置它即可选择网关模式。所有读取操作都会通过网关现有的租户范围路由进行,因此,如果密钥属于其他租户,或不具备 read 范围,工具会返回明确的错误,而不是空结果。

从克隆的仓库运行

将两个启动键替换为指向你克隆仓库的路径——所有 env 键保持不变:

"command": "node",
"args": ["/path/to/tracelane/apps/mcp/dist/index.js"]

先使用 pnpm install && pnpm --filter @tracelanedev/mcp build 构建。

此软件包内置 Streamable HTTP 传输(TRACELANE_MCP_TRANSPORT=http,见传输方式)——请自行运行。没有托管端点:https://mcp.tracelane.dev 无法解析,因此 url 风格的客户端配置没有可连接的地址。

自托管(ClickHouse)

设置 CLICKHOUSE_URL,即可直接读取 ClickHouse,而不是通过网关读取;适用于自托管或本地 Tracelane 技术栈:

{
  "mcpServers": {
    "tracelane": {
      "command": "npx",
      "args": ["@tracelanedev/mcp"],
      "env": {
        "TRACELANE_API_KEY": "tlane_YOUR_KEY",
        "TRACELANE_GATEWAY_URL": "https://gateway.tracelane.dev",
        "CLICKHOUSE_URL": "http://localhost:8123",
        "CLICKHOUSE_USER": "default",
        "CLICKHOUSE_PASSWORD": "…"
      }
    }
  }
}

自托管模式仍需要 TRACELANE_GATEWAY_URL——系统会在此处验证 TRACELANE_API_KEY(/v1/auth/whoami),尽管跟踪数据是从 ClickHouse 读取的。

工具

工具说明
list_traces列出该租户的近期跟踪记录。参数:limit(默认值为 20)、model_filter、has_error
get_trace获取某条跟踪记录的所有 span。参数:trace_id
get_span获取某个 span 的完整详情,包括所有 LLM GenAI 属性。参数:span_id、trace_id——Cloud(网关)模式下必需(网关没有按 span ID 查询的路由;会从该跟踪记录的 span 列表中选出对应 span),自托管模式下可选
search_traces在 span 名称和属性中进行全文搜索。参数:query(网关模式要求至少 4 个字符)、model_filter?、has_error?、limit。网关模式返回经过内容筛选的跟踪摘要;自托管模式返回每个 span 的匹配详情(matched_spans、first_match_*)
explain_guardrail_block以易读的方式解释护栏信号。自托管模式:trace_id + span_id(记录的 span 上由检测层设置的 AFT 标志)。网关模式:二选一,correlation_id(来自拦截请求的 403 响应正文,适用于预检阶段拦截且没有跟踪记录的请求),或 trace_id + span_id(同样适用于 AFT 标志场景;由于 span 无论如何都会携带该标志,因此仍然可用)
list_evals列出所有痛点和容错评估的 ID 及数量;数据来自构建时从 evals/ 打包的清单。参数:无
get_eval_result读取特定评估的断言。需要有仓库检出副本才能获取源文件;如果没有,会明确说明。参数:eval_id
replay_trace原样返回已记录的跟踪数据(按顺序排列的 span 及其 LLM/工具属性),用于离线逐步查看。**只读——不会重新执行任何模型或工具。**参数:trace_id、include_tool_calls?

在 Claude 中的示例用法

连接后,你可以询问 Claude:

"显示最近 5 条触发护栏拦截的跟踪记录,并解释触发了什么。"

"比较最近一小时内使用 claude-haiku-4-5 和 claude-sonnet-4-6 的跟踪记录延迟。"

"显示 eval 执行的断言。"

身份验证

通过 MCP 环境配置块传入 TRACELANE_API_KEY 环境变量。服务会根据 API 密钥解析租户——tenant_id 永远不会作为工具参数接受。

传输方式

传输方式选择方式适用场景
Stdio默认本地使用——Claude Desktop、Claude Code、Cursor。不会暴露网络。
Streamable HTTPTRACELANE_MCP_TRANSPORT=http TRACELANE_MCP_PORT=8081自行运行的远程部署。每个请求都必须携带 Authorization: Bearer <jwt-or-tlane-key>;网关会针对每个请求解析租户。我们不会为你运行托管端点。

安全不变量

  • 只读。 不会注册任何写入工具——工具集就是上面列出的八项,全部仅用于读取。
  • 租户隔离。 网关模式:每次读取都是限定租户范围的网关路由(crates/gateway/src/trace_reads.rs)——租户来自服务端的 Bearer 声明,本服务不会发送或看到租户 ID。自托管模式:每个 ClickHouse 查询都包含 WHERE tenant_id = {tenantId: String}(使用参数绑定,绝不通过字符串插值)。
  • 两种模式下,tenant_id 都不会作为工具参数。 Stdio 模式会在启动时通过网关从 TRACELANE_API_KEY 解析一次租户;如果密钥被拒绝,则拒绝启动。HTTP 模式会针对每个请求从 Bearer 令牌解析租户,并通过 AsyncLocalStorage 绑定。
  • 非 2xx 网关响应会作为工具错误返回,绝不会视为空结果。 密钥已撤销或租户错误、密钥缺少 read 作用域,或跟踪 ID 属于其他租户时,读取结果都会返回包含网关自身状态和消息的 isError: true,而不是 []。
  • 文件系统不会接触 eval ID。 get_eval_result 会在随附清单中查找 ID 并使用清单中的路径,因此路径遍历字符串无法指定文件。
  • 发送任何 Bearer 令牌前,都会对 TRACELANE_GATEWAY_URL 进行 SSRF 检查,两种模式均如此:开发环境以外仅允许 https、仅允许 tracelane.dev 主机,并拒绝私有网段、CGNAT 和 IMDS 地址范围。

运维人员须知: span 内容会按存储时的原样返回。请将提供给本服务的 API 密钥限制在你愿意将其 span 内容交给已连接模型的工作区。

自托管

# From source, against your own stack
pnpm dev:mcp

MCP 服务没有发布容器镜像——ghcr.io/tracelane/mcp 不存在。请从源代码或 npm 包运行。

技术栈

  • @modelcontextprotocol/sdk — 官方 MCP SDK(stdio + Streamable HTTP)
  • @clickhouse/client — 使用参数绑定的 ClickHouse 查询
  • TypeScript 5.5 严格模式,noUncheckedIndexedAccess: true
  • 使用 Biome 进行 lint 和格式化

许可证

Apache 2.0 — 详见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。