关于 ami-survey
ami-survey 是 MCP 客户端,从运行时日志测量 Agent 工作流完成后的成本、Token 用量和耗时,并提交结果至 AMI 调查,适合需要实际运行数据的团队。
主要功能
- 01读取运行时会话日志
- 02测量 Token、成本和耗时
- 03向 AMI 提交工作流结果
- 04标记已测量或未测量的运行
适用场景
- 01测量已完成支持流程的成本
- 02比较工作流耗时和 Token 用量
- 03向 AMI 调查提交运行结果
MCP 相关
可将客户端配置为 Claude Code、Claude Desktop、Codex 和 Copilot 的 MCP 条目。也可使用远程 MCP 连接器;由于无法读取运行时日志,提交结果会标记为未测量。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
14收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| cwd | string | 否 | 可选的工作目录覆盖项。 |
| adapter | string | 否 | 强制使用指定的遥测适配器,而非检测运行时。通常无需设置。 |
| work_unit | string | 否 | 可选,但须与 work_unit_count 一起声明。此工作流处理的可计数对象:'ticket'、'CV'、'support email'。成本和时长会除以该数量,因此处理更多工作的工作流不会因成本更高而受到惩罚。 |
| session_id | string | 否 | 可选的会话 ID 覆盖项。 |
| workflow_name | string | 是 | 可重复使用的简短工作流标签,例如 'Support Ticket Triage & Response'。 |
| transcript_path | string | 否 | 可选的显式转录文件路径覆盖项。 |
| work_unit_count | integer | 否 | 可选,但须与 work_unit 一起声明。本次运行实际处理的工作单元数量——必须是能从输出中确认的整数,而非估算值。 |
| workflow_category | string | 否 | 可选。工作流的类别,取自 ami_get_workflow_categories。此类别决定本次运行与哪些其他工作流进行比较;未声明类别的工作流只会与自身比较。如有 workflow.json,请从工作流自身的文件中获取类别——不要自行编造。 |
| workflow_end_time | string | 否 | 工作流结束时间的可选 ISO-8601 覆盖值。 |
| workflow_start_time | string | 否 | 工作流开始时间的可选 ISO-8601 覆盖值。默认使用本次会话中第一个人工轮次的时间。 |
| workflow_description | string | 是 | 用 1–3 句话说明工作流接收了什么输入,以及产出了什么业务成果。至少 20 个字符。 |
详细介绍
AMI 调查客户端
通过读取运行时自身的会话日志,衡量一个已完成 Agent 工作流的运行成本,并将结果提交至 AMI 调查
survey.agentbenchmark.dev。
单次 API 调用的成本很容易获取。但完成一项工作的成本却不容易:比如分流一张工单、筛选一份简历、起草一封回复,计算 Agent 为此进行的所有调用、重试和工具往返的总成本。本工具衡量的就是这个数字。
所有数据都来自运行时的记录,而非 Agent 自行报告。询问 Agent 刚才用了多少 Token,它只会估算,并且会信心十足地给出估算结果。
返回结果
Claude Opus 5 在 Claude Code 中对六张支持工单进行分流并作答的一次真实运行:
Maturity Index 85.0 Strong (observability 40%, evidence 30%, quality 30%)
Performance 78.13 Strong confidence Very High
quality 80.0 graded Good on ami-quality-v2
cost 72.73 $0.123226 per ticket ($0.739355 for the run)
speed 84.47 20.90s per ticket
evidence 70.0 measured, on a self-issued token
observability 100.0
findings
weakness Cost is the weakest pillar at 72.73; speed is strongest at 84.47.
$0.123226 per unit against a $0.01 reference. A cheaper model, or
fewer calls, moves this; check calls[] for where the tokens went.
note Cost and speed were scored against a provisional reference, which is
a placeholder rather than a measurement. Do not quote them as settled
yet. The Maturity Index does not use the reference and is unaffected.
每张工单 $0.12,耗时 21 秒。 本工具旨在得出这个数字,而大多数团队目前无法说出自己工作中的这个数字。
调查结果会指出评分卡自身数据中不准确之处。仍为占位符的成本参考会如实标记为占位符,而不会纳入评分。
安装
有两种方式。两种方式的区别,以及下文各宿主之间的区别,在于是否有办法读取运行时日志。这决定了结果会被记录为 measured 还是 unmeasured。
安装客户端
添加一段配置,然后重启 Agent。
Claude Code:在 ~/.claude.json 中配置,或通过 Claude Desktop 的 Developer 设置配置:
{ "mcpServers": { "ami-survey": { "command": "uvx", "args": ["ami-survey"] } } }
运行结果会经过测量:客户端读取 Claude Code 自身的会话日志,因此 Token 数量和成本来自运行时,而非 Agent。
Codex(经过测量)
在 ~/.codex/config.toml 中配置。Codex 在这里使用 TOML,而非 JSON:
[mcp_servers.ami-survey]
command = "uvx"
args = ["ami-survey"]
客户端会读取 Codex 的 rollout 日志。通过 Codex 驱动的本地或可自托管模型也适用,因为无论哪种情况都会写入日志。
Copilot(未经测量)
在 .vscode/mcp.json 中配置,或通过 MCP: Open User
Configuration 命令在用户配置文件中配置。这里的键是 servers,而非 mcpServers:
{ "servers": { "ami-survey": { "command": "uvx", "args": ["ami-survey"] } } }
工具可正常使用,调查也会提交,但 Copilot 不会写入客户端可读取的会话日志。此次运行会包含工作流、评分和各阶段耗时,但不含 Token 数量或成本,并会记录为 unmeasured。
然后,在 Agent 完成一项工作后,向它提出请求:
请填写关于你刚才所做工单分流的 AMI 调查
无需克隆任何内容,也无需持续更新。无需提供 Token:首次需要 Token 的调用会注册这台机器,并将 Token 保存在 ~/.ami-survey/token。
uvx 是 uv 的一部分,MCP 文档使用该工具运行 Python 服务。如果尚未安装 uv,GETTING-STARTED.md 提供了 pipx 方案,以及一种无需 uv 或 pipx 的方式。
如果你已经有 Token,可将其设为该配置块 env 中的 AMI_API_TOKEN,客户端会使用它,而不会注册新 Token。
或使用远程连接器,无需安装任何内容
在 claude.ai 中,依次打开 Settings、Connectors 和 Add custom connector,然后填写:
https://survey.agentbenchmark.dev/mcp
无需安装任何内容,也无需 Token。这些运行会记录为 unmeasured,绝不会与经过测量的运行进行比较:远程服务无法读取运行时日志,因此不会提供 Token 数量和成本,也不会进行估算。
许可证
MIT。可使用、修改、再分发,也可将其纳入自己的作品。
许可证仅适用于此客户端。它不授予你对客户端提交数据的调查服务,或该服务所收集数据的任何权利。
完整条款见 LICENSE。
离开你电脑的数据
Token 数量、耗时、模型名称、工作流声明的阶段名称,以及等级。不包括你的文件、提示词或 shell 命令。 GETTING-STARTED.md 对此有完整说明。
提交内容只会发送到 survey.agentbenchmark.dev。该目标地址是源代码中的常量,而非设置项,因此过时的环境变量无法将提交内容重定向到你自己的磁盘。这是唯一一种会导致运行看似成功、实际却什么也没收集到的故障。
要求
Python 3.9 或更高版本。无依赖项;仅使用标准库。
延伸阅读
- GETTING-STARTED.md 假定你尚未进行任何设置,涵盖 macOS、Linux 和 Windows,并说明工具未显示时该怎么做。
- COMMANDS.md 介绍克隆并运行的方式:使用你自己的 API 密钥,在多个模型上对同一工作流进行基准测试。参与调查并不需要采用这种方式。
- MAKE-IT-MEASURABLE.md 说明如何构建工作流,让它具备值得衡量的内容。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。