ami-survey について
ami-surveyは、実行時ログから完了したエージェントのワークフローのコスト、トークン数、所要時間を測定し、AMI調査へ送信するMCPクライアントです。推定ではなく実測値を把握したいチーム向けです。
主な機能
- 01実行時のセッションログを読み取り
- 02トークン数・コスト・所要時間を測定
- 03ワークフローの結果をAMIへ送信
- 04実測または未測定として記録
活用シーン
- 01完了したサポート業務のコスト測定
- 02ワークフローの時間とトークン数の比較
- 03AMI調査への実行結果の送信
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 調査クライアント
ランタイム自身のセッションログを読み取り、完了したエージェントのワークフローの実行コストを測定して、その結果を survey.agentbenchmark.dev の AMI 調査に送信します。
単一の API 呼び出しのコストを知るのは簡単です。しかし、エージェントが作業を完了するまでに行ったすべての呼び出し、再試行、ツールとの往復を含めて、完了した作業ひとつ分(チケットのトリアージ、履歴書の選考、返信文の作成など)のコストを知るのは簡単ではありません。このクライアントは、その数値を測定します。
すべての数値は、エージェントからの報告ではなく、ランタイムの記録から読み取ります。エージェントに、たった今使用したトークン数を尋ねても、推定値を自信ありげに答えるだけです。
得られる結果
Claude Code の Claude Opus 5 で、サポートチケット6件をトリアージして回答した実際の実行結果です。
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.
チケット1件あたり0.12ドル、21秒です。 このクライアントが算出するのはこの数値であり、多くのチームが自分たちの作業について現時点で示せない数値でもあります。
調査結果には、スコアカードの数値のうち、根拠が弱い項目も記録されます。コストの参照値がまだプレースホルダーの場合は、スコアに含めるのではなく、プレースホルダーとして報告します。
インストール
方法は2つあります。以下の方法やホストの違いを分けるのは、ランタイムのログを読み取れるかどうかです。それによって、結果が measured として記録されるか、unmeasured として記録されるかが決まります。
クライアントをインストールする
設定を1ブロック追加してから、エージェントを再起動します。
Claude Code の場合は ~/.claude.json に設定するか、Claude Desktop の Developer 設定から追加します。
{ "mcpServers": { "ami-survey": { "command": "uvx", "args": ["ami-survey"] } } }
実行結果は測定されます。クライアントが Claude Code 自身のセッションログを読み取るため、トークン数とコストはエージェントではなくランタイムから取得されます。
Codex(測定あり)
~/.codex/config.toml に設定します。ここでは JSON ではなく TOML を使用します。
[mcp_servers.ami-survey]
command = "uvx"
args = ["ami-survey"]
クライアントは Codex のロールアウトログを読み取ります。ログはモデルの種類にかかわらず書き込まれるため、Codex を通じて実行するローカルモデルやセルフホスト型モデルも対象になります。
Copilot(測定なし)
.vscode/mcp.json に設定するか、MCP: Open User
Configuration コマンドからユーザープロファイルに設定します。ここでのキーは mcpServers ではなく servers です。
{ "servers": { "ami-survey": { "command": "uvx", "args": ["ami-survey"] } } }
ツールは動作し、調査結果も送信されますが、Copilot はクライアントが読み取れるセッションログを書き込みません。実行結果にはワークフロー、評価、各段階の所要時間が含まれますが、トークン数やコストは含まれず、unmeasured として記録されます。
その後、エージェントが作業を終えたら、次のように依頼します。
たった今行ったチケットのトリアージについて、AMI 調査に回答してください
リポジトリをクローンする必要も、更新し続ける必要もありません。トークンを用意する必要もありません。トークンが必要な最初の呼び出しでマシンが登録され、トークンは ~/.ami-survey/token に保存されます。
uvx は、MCP ドキュメントが Python サーバーに使用しているツール、uv の一部です。uv がインストールされていない場合は、GETTING-STARTED.md に pipx を使う方法と、どちらも不要な方法が記載されています。
すでにトークンをお持ちの場合は、そのブロックの env で AMI_API_TOKEN に設定すると、新しいトークンを登録せずにそのトークンが使用されます。
または、何もインストールせずにリモートコネクターを使用する
claude.ai で「Settings」、「Connectors」、「Add custom connector」の順に開き、次の情報を入力します。
https://survey.agentbenchmark.dev/mcp
インストールは不要で、トークンも必要ありません。これらの実行結果は unmeasured として記録され、測定済みの実行結果と比較されることはありません。リモートサーバーはランタイムのログを読み取れないため、トークン数とコストは推定されず、記録されません。
ライセンス
MIT ライセンスです。使用、改変、再配布、ご自身の成果物への組み込みが可能です。
このライセンスが適用されるのは、このクライアントのみです。クライアントの送信先である調査サービスや、そのサービスが収集するデータに関する権利は付与されません。
利用規約の全文は LICENSE をご覧ください。
コンピューターから送信される情報
トークン数、所要時間、モデル名、ワークフローで宣言されたステージ名、そして評価結果です。ファイル、プロンプト、シェルコマンドは送信されません。 GETTING-STARTED.md で詳細をすべて説明しています。
送信先は survey.agentbenchmark.dev のみです。ほかの送信先はありません。送信先は設定ではなくソース内で定数として定義されているため、古い環境変数によって送信内容が手元のディスクに保存されることはありません。実行が成功したように見えても何も収集されない、という事態を招くのはこのケースだけです。
要件
Python 3.9 以降。依存関係はなく、標準ライブラリのみを使用します。
さらに詳しく
- GETTING-STARTED.md は事前のセットアップを前提とせず、macOS、Linux、Windows に対応し、ツールが表示されない場合の対処方法を説明しています。
- COMMANDS.md では、独自の API キーを使って複数のモデルで 1 つのワークフローをベンチマークする、クローンして実行する方法を説明しています。参加するために実行する必要はありません。
- MAKE-IT-MEASURABLE.md では、測定する価値のあるものが得られるよう、ワークフローを構成する方法を説明しています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。