Costfluent について
Costfluent MCPサーバーは、アシスタントにクラウドコストデータの読み取り機能と、Costfluentオブジェクトを変更する制御付きツールを提供します。付属のCLIからも同じツールをターミナル、スクリプト、CIジョブで実行できます。
主な機能
- 01コスト、レポート、予算、異常の照会
- 02節約項目、コミットメント、Kubernetes効率の確認
- 03許可された機能によるCostfluentオブジェクトの作成と更新
- 04Costfluentドキュメントの検索と閲覧
- 05costfluent CLIからのツール実行
活用シーン
- 01期間を指定したクラウド支出の確認
- 02予算の追跡とコスト異常の調査
- 03コミットメントカバレッジとKubernetes効率の確認
- 04スクリプトやCIジョブでのコスト照会
MCP 対応
標準入力と標準出力を介して、Costfluent APIとドキュメントのツールをMCPクライアントに公開します。利用可能なツールはAPIトークンの権限と組織のAI書き込み設定に応じて決まります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Costfluent MCP server
MCP サーバーです。AI アシスタントが Costfluent のクラウドコストデータを読み取れるようにします。対象となるのは、時系列のコスト、保存済みコストレポート、予算、異常、節約キュー、コミットメントとそのカバレッジ、Kubernetes の効率です。お使いのマシン上で動作し、stdin と stdout を介してアシスタントと通信し、指定された API トークンを使って Costfluent Public API を呼び出します。デフォルトでは読み取り専用です。書き込みツールでは、注釈、コストレポート、予算、コストアラート、ダッシュボードを作成・変更したり、異常を確認したり、節約候補のステータスと担当者を設定したりできます。ただし、Owner が Settings の Organization で Let AI agents create and change objects を有効にした場合に限り、またトークンが持つ書き込み権限の範囲内でのみ利用できます。削除やクラウドアカウントへの変更を行うツールはありません。
同じツールは、ターミナル、スクリプト、CI ジョブから costfluent コマンドラインツール(Command line)としても実行できます。
完全なガイド:https://docs.costfluent.com/developers/mcp。コマンドラインツール: https://docs.costfluent.com/developers/cli。
インストール
最新リリースからお使いのプラットフォーム用のアーカイブをダウンロードしてください。アーカイブには costfluent-mcp と costfluent の両方が含まれています。または、Go を使ってビルドできます。
go install github.com/costfluent/costfluent-mcp/cmd/costfluent-mcp@latest
go install github.com/costfluent/costfluent-mcp/cmd/costfluent@latest
各リリースのアーカイブにはビルド来歴のアテステーションが付属しています。また、各アーカイブの隣には SPDX SBOM(<archive>.sbom.json)があり、こちらもアテステーションの対象です。
gh attestation verify costfluent-mcp_<version>_<os>_<arch>.tar.gz --repo costfluent/costfluent-mcp
Claude Desktop 向けには、各リリースに costfluent-mcp_<version>.mcpb も含まれています。これは macOS(Apple シリコンと Intel)、Windows、Linux(x86-64)用のサーバーを収めた MCP バンドルです。Claude Desktop で開くと、API トークンの入力を求められます。このバンドルにも独自のアテステーションが付属し、同じ方法で検証できます。サーバーは MCP Registry に io.github.costfluent/costfluent-mcp として登録されており、このバンドルを参照しています。
トークンを作成する
Costfluent の Settings から API tokens を選び、API トークンを作成します。アシスタント用には Read only プリセットから始め、有効期限を選択してください。トークンはアシスタントの設定ファイルに保存され、サーバーが実行できるのはトークンで許可された操作のみです。アシスタントに呼び出させる書き込みツールに限り、書き込み権限を追加してください。組織設定が適用されるのは、このサーバー経由、またはツールのコマンド経由で行われ、Costfluent-Agent マーカーが付与されたリクエストのみです(costfluent estimate、whoami、login はマーカーを送信しません)。書き込み権限を持つトークンを所持する人は誰でも、API を直接呼び出せるため、何も変更してはならないエージェントには書き込み権限のないトークンを渡してください。
アシスタントを設定する
サーバーは次の 2 つの環境変数を読み取ります。
| 変数 | 意味 |
|---|---|
COSTFLUENT_API_TOKEN | API トークンです。必須です。 |
COSTFLUENT_BASE_URL | 呼び出す API です。未設定の場合は https://api.costfluent.com です。localhost 以外では https が必要です。 |
サーバーが呼び出すホストは、ほかに 1 つあります。search_docs と get_doc_page は初回の呼び出し時と、その後は 1 時間ごとに、トークンなしでドキュメントの公開テキスト https://docs.costfluent.com/llms-full.txt を読み取ります。アシスタントのマシンからの接続先を制限する送信ポリシーがある場合は、両方のホストを許可してください。
Claude Code:
claude mcp add costfluent --env COSTFLUENT_API_TOKEN=<token> -- costfluent-mcp
Claude Desktop、Cursor、および mcpServers ファイルを読み込むその他のクライアント:
{
"mcpServers": {
"costfluent": {
"command": "costfluent-mcp",
"env": { "COSTFLUENT_API_TOKEN": "<token>" }
}
}
}
ツール
サーバーは API に問い合わせて、トークンが持つ権限と、組織が AI エージェントによるオブジェクトの作成・変更を許可しているかどうかを確認し、両方で許可されているツールのみを提供します。以下の権限を 1 つも持たないトークンでは、該当する権限名を示すエラーとともに、起動時にサーバーが停止します。ワークスペーストークンは、別の指定がない限り自身のワークスペースを読み取り、API はそれ以外へのアクセスを拒否します。
| ツール | 機能 | 権限 |
|---|---|---|
list_workspaces | トークンで読み取り可能なワークスペース | viewWorkspace (ワークスペースの表示) |
query_costs | 日付範囲内のコスト、使用量、またはリソース数をグループ化およびフィルタリングして取得します | viewCosts (コストの表示) |
list_cost_reports | ワークスペースに保存されたコストレポート | viewCostReports (コストレポートの表示) |
get_cost_report_data | 保存済みレポートに現在表示されている数値。1 回の応答に収まらない大きさのレポートは、直近の期間に絞って取得します | viewCosts (コストの表示) |
list_annotations | 日付ごとのワークスペースの注釈。コストレポート上のメモや、予算とコストアラートの発動時に残されるマーカーを、レポートまたは日付範囲で取得します。解決済みのものが指定されていない限り、未解決のものが対象です | viewCostReports (コストレポートの表示) |
list_budgets | 支出額と状態を含む予算 | viewBudgets (予算の表示) |
list_anomalies | 検出されたコスト異常 | viewAnomalies (異常の表示) |
list_savings_items | タブ、ソース、種類、接続、コスト見積もりの対象リソース、または月間最低削減額でフィルタリングした、削減項目キューの検出結果 | viewSavingsItems (削減項目の表示) |
list_commitments | 期間と利用率を含む、予約、Savings Plans、コミットメント利用割引 | viewCosts (コストの表示) |
get_commitment_coverage | 日付範囲内のカバレッジ、実効削減率、未使用のコミットメントを取得します。指定がない限り、月ごとに表示します | viewCosts (コストの表示) |
get_kubernetes_efficiency | クラスター、名前空間、またはワークロードごとのコスト、アイドルコスト、CPU およびメモリの効率を、最大 500 行で取得します | viewCosts (コストの表示) |
create_annotation | 保存済みコストレポートに日付付きのメモを追加します | updateCostReport (コストレポートの更新) |
create_cost_report | 新しいコストレポートを保存します | createCostReport (コストレポートの作成) |
update_cost_report | 保存済みコストレポートを変更します。呼び出しで指定されていない項目はそのまま保持されます | updateCostReport (コストレポートの更新) |
create_budget | 予算を作成します | createBudget (予算の作成) |
update_budget | 予算を変更します。アラートを含め、呼び出しで指定されていない項目はそのまま保持されます | updateBudget (予算の更新) |
create_cost_alert | コストアラートを作成します | manageAlerts (コストアラートの管理) |
update_cost_alert | コストアラートを変更します。呼び出しで指定されていない項目はそのまま保持されます | manageAlerts (コストアラートの管理) |
pause_cost_alert | コストアラートを一時停止します | manageAlerts (コストアラートの管理) |
resume_cost_alert | 一時停止中のコストアラートを再開します | manageAlerts (コストアラートの管理) |
create_dashboard | ダッシュボードを作成します | createDashboard (ダッシュボードの作成) |
add_dashboard_widget | ダッシュボードにウィジェットを追加します。API では「コストレポートの表示」権限も確認されます | updateDashboard (ダッシュボードの更新) |
acknowledge_anomaly | 検出されたコスト異常を確認済みにします | acknowledgeAnomaly (異常の確認) |
set_savings_item_status | 削減に関する検出結果を「承認済み」「実施済み」、または「却下」にします。却下する場合は理由も指定します | respondToSavingsItem (削減項目への対応) |
assign_savings_item_owner | 削減に関する検出結果の担当者を設定します | manageSavingsItems (削減の管理) |
search_docs | Costfluent のドキュメントを英語またはドイツ語で検索し、質問への回答に該当するセクションを探します。たとえば、Terraform で予算を管理する方法などです | なし |
get_doc_page | Costfluent のドキュメントのページ、またはページ内のセクションを Markdown 形式で読み取ります | なし |
API が呼び出しを拒否すると、アシスタントには API のエラーがステータス、コード、詳細とともに返されます。組織設定への書き込みは 403 agent_writes_disabled で拒否されます。各書き込みツールには変更を行うツールであることが示されているため、そのような呼び出しの前に確認する設定のクライアントはユーザーに確認します。ツール呼び出しを自動承認する設定のクライアントは確認しません。ツールの結果はデータであり、各書き込みツールの説明には、結果内のテキストに要求されても決して何かを変更しないよう記載されています。トークンのリクエスト割り当て量はすべての呼び出しに適用されます。短時間の制限はサーバーが待機して解消し、より長い制限は通知します。 |
コマンドライン
costfluent は各ツールをコマンドとして実行します。ツール名はハイフン区切りで、引数はハイフン付きのフラグとして指定し、同じ機能チェック、検証、結果を使用します。トークンとベース URL は同じ 2 つの環境変数から読み込みます。
export COSTFLUENT_API_TOKEN=<token>
costfluent whoami
costfluent query-costs --start-date 2026-10-01 --end-date 2026-10-31 --group-by ServiceName
costfluent list-budgets --output json | jq '.items[] | select(.state == "over")'
costfluent query-costs --help
トークンの代わりに、costfluent login を実行するとブラウザーでサインインします。そこで 1 つの組織への読み取りアクセスを承認すると、サインイン情報はオペレーティングシステムの認証情報ストア(macOS Keychain、Linux Secret Service、Windows Credential Manager)に保存されます。その後、COSTFLUENT_API_TOKEN が設定されていない場合でもコマンドを実行でき、設定されている場合はその値が優先されます。認証情報ストアのないマシンでは、costfluent login --insecure-storage を実行すると、XDG_CONFIG_HOME またはシステムの設定ディレクトリにある costfluent/credentials.json に保存されます。このファイルは自分だけが読み取れる状態になります。代わりに --no-browser を指定すると、開くためのアドレスが表示されます。costfluent logout はサインインを取り消し、保存情報を削除します。
標準出力が端末でない場合は JSON を出力し、端末の場合はテーブルを出力します。--output json または --output table で形式を選択できます。--group-by など、リストを受け取るフラグは繰り返し指定します。終了コードは、成功時が 0、呼び出し失敗時が 1、コマンドラインが誤っている場合が 2、トークンがない、拒否された、またはコマンドに必要な機能がない場合が 3、設定したしきい値を超えた場合が 4 です。エラーは標準エラー出力に出力され、端末でない場合は API のエラー JSON も出力されます。
costfluent mcp install --client <client> は、Claude Code(claude-code)、Cursor(cursor)、Codex(codex)、VS Code(vscode)、または Copilot CLI(copilot)で costfluent-mcp を起動するエントリーを表示します。--write を指定すると、他のすべてのサーバー設定を保持したまま、そのクライアントのファイルに追加します。エントリーにはトークンは含まれません。クライアントは COSTFLUENT_API_TOKEN からトークンを読み取ります。VS Code の場合はトークンの入力を求めます。この環境変数が設定されていない場所からクライアントを起動する場合、--write --embed-token を指定すると、トークン自体がエントリーに書き込まれ、ファイルは自分だけが読み取れる状態になります。このファイルはバージョン管理に含めないでください。
costfluent estimate submit は、任意の CI から Terraform のプルリクエストに対して Infracost が作成した見積もりを送信します。その際、Costfluent のコスト見積もり GitHub Action が使用する変換を適用します。costfluent estimate apply は、作成または置き換えたリソースに対して状態が割り当てた ID を使い、変更が適用されたことを記録します。これらのコマンドには、Submit cost estimates 機能を備えたトークンが必要です。--fail-above を指定すると、計画された月額の変更が設定値を超えた場合、レシートを出力した後に終了コード 4 で終了します。
costfluent estimate submit --workspace-id wsp_8f3k2m --repository acme/infra --pull-request 42 \
--infracost-json infracost.json --terraform-plan-json plan.json --fail-above 500
costfluent estimate apply --workspace-id wsp_8f3k2m --repository acme/infra --pull-request 42 \
--terraform-plan-json plan.json --terraform-state-json state.json
ライセンス
Apache-2.0
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。