token-report について
Roslyn MCP server のトークン削減量を測定するスキルです。セッション内ツールと複数リポジトリ向け CLI を使い、テレメトリーが任意であることや測定値の限界も示します。
主な機能
- 01MCP ツールによるトークン削減量の集計
- 02ツール別の呼び出し数と削減量の表示
- 03複数リポジトリの集計と各種形式への出力
- 04トークン推定の除数の校正
- 05収集状態と測定上の注意点の報告
活用シーン
- 01MCP サーバーのコンテキストコストに見合う効果の評価
- 02呼び出されていないツールの特定
- 03検証可能なトークン効率の根拠づくり
- 04リポジトリ間のツール利用状況の比較
MCP 対応
Roslyn MCP server のセッション内で get_token_savings を呼び出し、リポジトリ単位の統計を確認できます。CLI は複数リポジトリを集計し、テレメトリーは既定で無効、許可時の記録はローカルに保存されます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ codewithmukesh/ dotnet-claude-kit --skill token-reportインストール後、Claude Code で/token-reportを入力して読み込まれたか確認します。
詳細
/token-report — Roslyn Navigator のトークン削減量
概要
Roslyn MCP サーバーが実際にどれだけ削減したかを、主張ではなく測定に基づいて報告します。 対象は次の 2 つです。
| 範囲 | 対象 | 使用する場面 |
|---|---|---|
| このリポジトリ、セッション中 | get_token_savings MCP ツール | 「ここでの状況はどうですか?」 |
| すべてのリポジトリ、集計 | CWM.RoslynNavigator.Stats CLI | 公開用の数値を算出するとき |
使用する場面
- MCP サーバーがコンテキストコストに見合う価値をもたらしているかを判断するとき
- 誰も呼び出していないツールを見つけるとき — 説明に問題があるのか、ツール自体が不要なのかを確認します
- トークン効率に関する主張を、検証可能な根拠で裏付けるとき
前提条件
収集はオプトイン方式で、デフォルトでは無効です。 次の設定を有効にしてサーバーを起動しない限り、何も記録されません。
CWM_ROSLYN_TELEMETRY=on cwm-roslyn-navigator --solution MySolution.sln
データは送信されません。記録はリポジトリ外の %LOCALAPPDATA%/cwm-roslyn-navigator/(または XDG 相当の場所)に書き込まれます。このディレクトリを削除すれば、すべて消去できます。
導入率は Claude Code のトランスクリプトから読み取るため、オプトインは不要です。そのため、テレメトリが有効になっていなかった場合でも利用できます。
方法
1 — このリポジトリ、セッション中。 get_token_savings MCP ツールを呼び出します。合計、ツールごとのランキング、結果なし/準備未完了/エラーの個別件数、および測定方法が返されます。Enabled: false と表示された場合は、テレメトリが一度も有効になっていません。測定値であるかのようにゼロと報告するのではなく、その旨を伝えてください。
2 — すべてのリポジトリ。
cd mcp/CWM.RoslynNavigator
dotnet run --project stats/CWM.RoslynNavigator.Stats.csproj # table
dotnet run --project stats/CWM.RoslynNavigator.Stats.csproj -- --markdown
dotnet run --project stats/CWM.RoslynNavigator.Stats.csproj -- --json
dotnet run --project stats/CWM.RoslynNavigator.Stats.csproj -- --repo myapp
3 — 誠実に解釈する。 数値を引用する際は、必ず次の 3 点を伝えてください。
- 除数は未調整です。 1 トークンあたり 3.5 バイトという値は推定値であり、すべての数値に比例して影響します。
DivisorCalibratedが false の場合、その数値は目安であり、正確な値ではありません。 - ベースラインは過小評価です。 回答の根拠となったファイルのみを数え、テキスト検索で最初に開いていたはずの無関係なファイルは無視します。
- 導入率は上振れします。 分母には、C# を対象としていたことが明確な Read/Grep/Glob 呼び出しのみを数えます。対象が曖昧な検索は除外されます。
4 — ランキングに基づいて対応する。 呼び出しのないツールこそ、対処すべき発見事項です。設定済みのリポジトリで導入率が低い場合、通常はツールの説明が本来そのツールが担うべき作業を引きつけていません。これは、削減量そのものよりも有用な情報です。
除数の調整
推定入力値を測定値に変換します。無料で手動で行う作業であり、サーバーが実行することはありません。
dotnet run --project stats/CWM.RoslynNavigator.Stats.csproj -- calibrate \
--api-key $ANTHROPIC_API_KEY --path /path/to/dotnet/repo --sample 200
C# ファイルをサンプリングし、Anthropic の count_tokens エンドポイントから正確な数を取得して、バイト数とトークン数の回帰分析を行います。結果をサーバーの TokenEstimator に適用し、数値を検証可能な状態に保つため、サンプルサイズと R² を定数の隣に記録してください。
例
Repositories 3 (1 with telemetry)
Tool calls 412
Tokens saved 1,284,000
Adoption 68%
Tool leaderboard
tool calls saved p50 ms 0-result
find_references 180 612,000 84 4%
find_symbol 150 431,000 22 2%
Never called (2): get_nuget_packages, resolve_stack_trace
Divisor: 3.5 bytes/token — UNCALIBRATED estimate.
サーバーが一度も呼び出されていない場合、レポートはゼロを表示する代わりに、その旨を明確に伝えます。「呼び出しなし」と「削減なし」は、異なる発見事項です。
関連項目
/verify— PR の前に実行する品質ゲート/health-check— コードベースの健全性評価