mcpField
L
llmkit

llmkit

ローカル
github.com/smigolsmigolデータ・分析157 週間前に更新

llmkit について

llmkitは、AI利用料の帰属管理と予算制御を行うオープンソースのゲートウェイおよびSDK群です。Agentの支出を追跡する開発者向けに、アカウントやプロキシが不要なローカル計測と、11個のツールを備えたMCPサーバーを提供します。

主な機能

  1. 01ローカル利用量からコストを推定
  2. 02予算に基づく受付と実費精算
  3. 03Claude CodeとClineのセッション確認
  4. 04支出、予算、キーの照会
  5. 05指定モデルの参考価格比較

活用シーン

  1. 01ローカルAgentのモデル費用を集計
  2. 02予算超過となるリクエストを拒否
  3. 03MCPクライアントでコーディングセッションを確認
  4. 04選択したモデルの参考価格を比較

MCP 対応

11個のツールを備えたMCPサーバーで、Claude CodeのセッションとClineのタスクをローカルで確認できます。ゲートウェイ用ツールでは支出、予算、キー、セッション、サービス状態を照会でき、既存のLLMKit APIキーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"smigolsmigol-llmkit": {
"command": "npx",
"args": [
"-y",
"@f3d1/llmkit-mcp-server"
],
"env": {
"LLMKIT_API_KEY": "<LLMKIT_API_KEY>",
"LLMKIT_PROXY_URL": "<LLMKIT_PROXY_URL>"
}
}
}
}
起動コマンドnpx -y @f3d1/llmkit-mcp-server
設定が必要な環境変数
LLMKIT_API_KEYシークレットLLMKit API key. Optional: local tools work without it.
LLMKIT_PROXY_URLLLMKit proxy URL (defaults to hosted service)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@f3d1/llmkit-mcp-server0.4.10

ツール

11

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
periodenumいいえ期間today | week | month

詳細

LLMKit

AI エージェントのコストを測定。予算を超える前にリクエストを停止します。

CI PyPI npm OpenSSF Scorecard OpenSSF Best Practices MIT license

ウェブサイト | ドキュメント | 料金 API | アーキテクチャ | セキュリティ | 保証ケース

LLMKit は、コストの帰属、予算によるリクエスト受付、リクエストの証跡を実現する、オープンソースの AI ゲートウェイおよび SDK スイートです。ゲートウェイはプロバイダーにリクエストを送信する前に、推定支出額を確保します。有効な予算内に収まらないリクエストは拒否し、受け付けた予約額はレスポンス完了時に実際の使用量に基づいて精算します。

このリポジトリには、LLMKit のアカウントやプロキシを必要としないローカルのトラッキング機能も用意されています。

機能の選択

機能用途パッケージ
Python トランスポート既存の SDK 呼び出しにローカルのコスト見積もりを追加したい場合llmkit-sdk
CLI ラッパーOpenAI または Anthropic のクライアントが標準の base-URL 環境変数に対応している場合@f3d1/llmkit-cli
TypeScript SDK既存のキーを使い、TypeScript からセッション、ストリーミング、ゲートウェイにアクセスしたい場合@f3d1/llmkit-sdk
MCP サーバーMCP クライアント内で支出、予算、ローカルのコーディングセッション用ツールを利用したい場合@f3d1/llmkit-mcp-server
AI SDK プロバイダーVercel AI SDK 6 を使用している場合@f3d1/llmkit-ai-sdk-provider
ゲートウェイとダッシュボード共有予算、プロバイダールーティング、レシート、分析機能が必要な場合packages/proxy、packages/dashboard

クイックスタート

ローカルの Python トラッキング
pip install llmkit-sdk
from llmkit import tracked
from openai import OpenAI

costs = []
client = OpenAI(http_client=tracked(on_cost=costs.append))

client.chat.completions.create(
    model="gpt-4.1",
    messages=[{"role": "user", "content": "Summarize this incident."}],
)

print(f"${sum(item.total_cost or 0 for item in costs):.6f}")

このトランスポートはプロバイダーの使用量メタデータを読み取り、同梱の料金カタログに基づいてコストを見積もります。トラッキングデータが LLMKit に送信されることはありません。

コード不要の CLI トラッキング
npx @f3d1/llmkit-cli -- python my_agent.py

リクエストごとの出力には -v を、機械可読な結果には --json を使用してください。

ゲートウェイモード(既存のキー)

ゲートウェイの例では、既存の LLMKit API キーが必要です。認証サービスの復旧中は、アカウントの作成とキーの管理を一時的に利用できません。キーをお持ちでない場合は、上記のローカルトラッキング機能を使用してください。

from openai import OpenAI

client = OpenAI(
    base_url="https://api.llmkit.sh/v1",
    api_key="llmk_your_key_here",
)

response = client.chat.completions.create(
    model="gpt-4.1",
    messages=[{"role": "user", "content": "Draft a release note."}],
)

予算の制御経路

LLMKit は各リクエストを認証し、推定コストを予約します。予算を超えるリクエストはプロバイダーへのディスパッチ前に拒否し、受け付けたリクエストは実際の使用量に基づいて精算します。

制御経路は、次の 3 つの境界を中心に構成されています。

  • アトミックな受け付け: Durable Object が予算スコープごとの予約状態を管理します。並行するリクエストが、同じ残高を重複して消費することはありません。
  • ディスパッチを考慮した冪等性: ディスパッチ前に発生した確定的な失敗では、キーを解放します。プロバイダーへのディスパッチが発生した可能性がある場合は、重複した支出を避けるため、失敗を終端状態のままにします。
  • 応答の上限: ストリーミング以外の本文と個々の SSE フレームに、明示的なバイト数の上限を設けています。上限を超えると、LLMKit はアップストリームからの読み取りをキャンセルします。

リクエストのレシートでは、安定した識別子を使用して、受け付けの判定、プロバイダーへの試行、精算、分析データの引き渡しを関連付けます。データベースへの書き込みにはアウトボックスを使用するため、分析機能が停止しても、予算の記録がひそかに失われることはありません。

MCP サーバー

{
  "mcpServers": {
    "llmkit": {
      "command": "npx",
      "args": ["-y", "@f3d1/llmkit-mcp-server"]
    }
  }
}

5 つのローカルツールは、LLMKit のキーなしで、サポート対象の Claude Code セッションと Cline のタスクデータを調べます。6 つのゲートウェイツールは、LLMKIT_API_KEY に既存のキーが設定されている場合に、支出、予算、キー、セッション、サービスの正常性を照会します。これらを合わせて 11 個のツールを提供します。

価格データ

固定されたカタログは同梱の参照用スナップショットであり、リアルタイムの見積もりではありません。1 つのソースファイル packages/shared/pricing.json にスナップショットの日付を記録し、TypeScript、Python、MCP 用のテーブルを生成します。CI はソースファイルと生成ファイルの差異を検出すると失敗します。公開サイトには、データが入力されたプロバイダーテーブルだけを表示し、ソースの日付も表示します。

公開比較エンドポイントはアカウントなしで利用できます。

https://api.llmkit.sh/v1/pricing/compare?mode=text-token&models=anthropic%2Fclaude-sonnet-4-6%2Copenai%2Fgpt-4o&input=1000&output=1000&cacheRead=0&cacheWrite=0

このエンドポイントは、呼び出し元が指定した正確なモデルキーのみの価格を算出します。最安値のモデルを検索したり、おすすめしたりはしません。価格は推定値であり、プロバイダーの請求書ではありません。プロバイダーの請求ルール、モデルのモダリティ、カタログの鮮度は、引き続きエラー境界の一部です。

証拠と現時点での境界

主張このリポジトリにおける証拠境界
並行する予算の受け付けは直列化されるWorker のフィクスチャで、競合する予約、再試行、精算、復旧を検証ローカルの Worker とデータベースによる決定論的な証明
再試行の動作によって重複したディスパッチを回避する冪等性テストで、ペイロードの不一致、ディスパッチ前の解放、ディスパッチ後の不確定状態を網羅CI ではプロバイダーの動作をシミュレーション
大きなプロバイダー応答には上限が適用される成功、エラー、終端のない SSE のフィクスチャで、拒否とストリームのキャンセルを検証上限はバッファーされた応答または SSE フレームごとに適用
価格データの成果物は再現可能である1 つのジェネレーターと CI の --check により、公開対象のすべての言語テーブルを検証カタログの値を更新するには、引き続きソースの更新が必要
ホスト環境での復旧を安全に評価できるガード付きステージングデプロイと証明ランナーにより、分離された Worker、データベース、リビジョン、クリーンアップジャーナルを関連付けホスト環境での並行処理と障害復旧が完了したレシートは、ここでは主張していません

分離されたホスト環境での証明の契約については、STAGING_PROOF.md を参照してください。これは本番環境のターゲットと、変更が残っているワークツリーを意図的に拒否します。

プロジェクトのポリシーと設計

ドキュメント担当する内容
ガバナンス意思決定権限、役割、紛争、および現在の継続性の課題
ロードマップ2027年8月までに予定されている作業と対象外の作業
アーキテクチャコンポーネント、リクエストのフロー、ID、ストレージ、デプロイ、障害の境界
セキュリティセキュリティ要件、保証対象外の事項、報告、サポート対象バージョン
セキュリティ保証脅威モデル、信頼境界、実行可能な証拠、残存リスク、ランタイムのHOLD
アクセシビリティ公開サイトの操作要素、検証方法、既知の課題、言語の対象範囲
コントリビューションセットアップ、品質ゲート、レビューに関する期待事項、DCOによる署名

開発

git clone https://github.com/smigolsmigol/llmkit
cd llmkit
corepack [email protected] install --frozen-lockfile
corepack [email protected] build
corepack [email protected] quality:pr

開発専用のバインディングを使用してWorkerをローカルで実行します。

corepack [email protected] --filter @f3d1/llmkit-proxy dev

汎用のデプロイコマンドは意図的に記載していません。ステージングと本番環境では、対象を明示的に確認するガード付きの別個のスクリプトを使用します。

セキュリティ

プロバイダーの認証情報は、ランダムなIVと所有者/プロバイダーに紐付けられた追加認証データを使用し、AES-256-GCMで暗号化されます。LLMKitのAPIキーは保存前にハッシュ化されます。CIには、シークレットスキャン、静的解析、依存関係のレビュー、CodeQL、パッケージの来歴チェックが含まれています。

セキュリティポリシーとアーキテクチャおよび機械可読な Security Insightsスナップショットをお読みください。脆弱性は GitHubの非公開脆弱性報告 または[email protected]宛てのメールでご報告ください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。