kilawatt-mcp-server について
kilawatt-mcp-serverは、アカウントAPIまたはx402決済を通じて、エージェントからKilawatt CloudのGPU計算資源を利用できるようにします。実際のゲートウェイ応答から、容量、料金、稼働状況、ジョブの再開情報も取得します。
主な機能
- 01アカウント認証によるGPUノードの確保
- 02Base USDCによる見積もりとジョブ実行
- 03ジョブ単位とセッション単位の支出上限
- 04GPU容量、料金、稼働状況の確認
- 05チェックポイント付きジョブの確認と再開
活用シーン
- 01計算ジョブ向けGPU容量のリクエスト
- 02USDC決済前の料金見積もり
- 03サービス稼働状況とGPU料金の確認
- 04最新のチェックポイントからのジョブ再開
MCP 対応
MCP サーバーは、Kilawatt Cloudの容量確認、GPU確保、決済、状態確認、ジョブ再開のための9個のツールを提供します。各ツールはKilawattゲートウェイを呼び出し、実際のHTTP応答を返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y kilawatt-mcp-serverKILAWATT_API_KEYシークレットYour API key for the serviceKILAWATT_BASE_URLOptional gateway endpoint overrideKILAWATT_SITE_URLOptional site root for the discovery and resume toolsKILAWATT_X402_PRIVATE_KEYシークレットWallet private key for paying for x402 jobsKILAWATT_X402_MAX_USD_PER_JOBMaximum USD spend per x402 job (default 0.25)KILAWATT_X402_MAX_USD_PER_SESSIONMaximum USD spend per server session (default 1.00)KILAWATT_X402_URLOptional x402 execution endpoint overrideローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Kilawatt Cloud MCP サーバー
Kilawatt Cloud から GPU コンピューティング容量をリクエストするための Model Context Protocol(MCP)サーバーです。アカウントベースと x402 の決済オプションを利用できます。
このサーバーは実際の Kilawatt ゲートウェイを呼び出します。 すべての応答は、Kilawatt 公開 API または x402 エンドポイントからの実際の HTTP 結果です。捏造された応答はありません。
目次
対応クライアント
- goose(手順ガイド:docs/GOOSE_TUTORIAL.md)
- Claude Desktop
- Cursor
- LangChain と LangGraph(例)
- CrewAI(例)
- SkyPilot(例)
- Node.js クライアント(例)
- MCP Python SDK(例)
すべての例は見積もり専用です。examples/README.md を参照してください。
クライアントのセットアップ手順は docs/clients.md にあります。
エンドポイント
デフォルトのエンドポイントは Kilawatt Cloud のゲートウェイです:https://www.kilawattcloud.dev/api/public/v1。KILAWATT_BASE_URL 環境変数で変更できます。
検出ツールと再開ツール(get_capacity、get_platform_status、get_pricing、get_resume_info、resume_job)は、代わりにサイトのルートを使用します:https://www.kilawattcloud.dev。省略可能な KILAWATT_SITE_URL 環境変数で変更できます。末尾のスラッシュは削除されます。
| 変数 | 使用するツール | デフォルト |
|---|---|---|
KILAWATT_BASE_URL | deploy_gpu_node | https://www.kilawattcloud.dev/api/public/v1 |
KILAWATT_SITE_URL | get_capacity、get_platform_status、get_pricing、get_resume_info、resume_job | https://www.kilawattcloud.dev |
インストール
npx 経由でインストールして実行します:
npx -y kilawatt-mcp-server
設定
deploy_gpu_node、get_resume_info、または resume_job を使用するには、Kilawatt API キーを設定してください。サーバーの起動、x402 ツールの使用、get_capacity、get_platform_status、get_pricing の使用には必要ありません:
export KILAWATT_API_KEY=kw_live_YOUR_KEY_HERE
API キーは kw_live_ で始まる必要があります。API キーは Kilawatt Cloud アカウントから発行されます。キーを生成する権限がまだない場合は、[email protected] までお問い合わせください。
Claude Desktop / Cursor での使用
この設定を MCP クライアントの設定に追加します:
{
"mcpServers": {
"kilawatt": {
"command": "npx",
"args": ["-y", "kilawatt-mcp-server"],
"env": {
"KILAWATT_API_KEY": "kw_live_YOUR_KEY_HERE"
}
}
}
}
deploy_gpu_node を使用する場合は、kw_live_YOUR_KEY_HERE を Kilawatt API キーに置き換えてください。x402 のみを使用する場合は、KILAWATT_API_KEY を省略してください。
goose を使用していますか?GOOSE.md を参照してください。
サーバーの実行
MCP サーバーを起動します:
npm start
または、直接実行します:
node index.js
サーバーは stdio 経由で、エージェントからの MCP リクエストを待ち受けます。
利用可能なツール
このサーバーは、deploy_gpu_node、x402_quote、x402_run_job、x402_job_status、get_capacity、get_platform_status、get_pricing、get_resume_info、resume_job の9つのツールを公開します。
deploy_gpu_node
Kilawatt Cloud で実際の GPU コンピューティングリソースをプロビジョニングします。実際のマシンを起動し、呼び出し元の Kilawatt ウォレットに料金が発生します。プロビジョニングや課金を行わずに料金とルーティングを確認するには、dry_run: true を設定します。KILAWATT_API_KEY が必要です。
| Parameter | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
gpu_type | string | No | nvidia-h100 | 空でない任意の文字列(最大64文字。ローカルでは列挙値のチェックは行いません) | GPU モデルの識別子。受け入れ可能な値はゲートウェイが判断します |
card_count | integer | No | 1 | 1~64 | GPU の数 |
duration_seconds | number | No | 600 | 1~86400 | ノードが必要な時間。前払いです。 |
routing_policy | string | No | lowest_cost | lowest_cost、lowest_latency、zero_quota | スマート注文ルーターがノードを選択する方法 |
dry_run | boolean | No | false | true、false | 料金の確認と事前承認のみ |
{
"name": "deploy_gpu_node",
"arguments": { "card_count": 2, "duration_seconds": 1800, "dry_run": true }
}
x402_quote
支払いを行わずに、GPU ジョブの現在の料金と Base USDC の支払い詳細を取得します。
| Parameter | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
gpu_type | string | No | nvidia-h100 | nvidia-b300、nvidia-b200、nvidia-h200、nvidia-h100、nvidia-a100、nvidia-l40s、nvidia-l40、nvidia-a40、nvidia-a10、nvidia-rtx-a6000、nvidia-rtx-a5000、nvidia-rtx-a4500、nvidia-rtx-a4000、nvidia-rtx-5090、nvidia-rtx-4090、nvidia-rtx-3090 | GPU モデル |
card_count | integer | No | 1 | nvidia-b200 は1~4、nvidia-h100、nvidia-h200、nvidia-a100、nvidia-l40s は1~8、それ以外はすべて1~16 | GPU の数 |
duration_seconds | number | No | 600 | 60~86400 | ジョブの実行時間(秒) |
routing_policy | string | No | not sent | lowest_cost、lowest_latency、zero_quota | ルーティングポリシー |
workload_type | string | No | not sent | agent_exec、fine_tune、batch_inference | ワークロードの種類 |
公開されている入力スキーマでは、card_count の最大値は16とされています。GPU ごとの上限はこれより厳しく、呼び出し時にコードで適用されます。
x402_run_job
Base USDC で1件の GPU ジョブの見積もりを取得して支払います。x402_quote と同じパラメーターに加えて、以下を指定します。
| Parameter | Type | Required | Description |
|---|---|---|---|
max_usd | number | Yes | 0より大きい値を指定する必要があります。この金額、またはいずれかの支出上限を超える場合、支払いは拒否されます。 |
confirm | boolean | Yes | true でなければ、支払いは行われません。 |
x402_job_status
x402_run_job によってローカルに保存された API キーを使用して、x402 経由で作成されたジョブのステータスを取得します。
| Parameter | Type | Required | Description |
|---|---|---|---|
job_id | string | Yes | 1~128文字 |
get_capacity
現在の GPU 容量データを読み取ります。読み取り専用です。API キーも引数も必要ありません。GET {KILAWATT_SITE_URL}/api/capacity を呼び出します。現在データを取得できない場合(コードが unavailable の HTTP 503)、その旨をツールが通知します。
{ "name": "get_capacity", "arguments": {} }
get_platform_status
プラットフォームのステータスを読み取ります。読み取り専用です。API キーも引数も必要ありません。GET {KILAWATT_SITE_URL}/api/status を呼び出します。結果には、status(operational、degraded、incident、unknown のいずれか)、status_note、last_checked、status_page、latest_test_summary が含まれます。
{ "name": "get_platform_status", "arguments": {} }
get_pricing
各 GPU ティアの GPU 時間あたりの参考 USD 価格を読み取ります。読み取り専用です。API キーも引数も必要ありません。GET {KILAWATT_SITE_URL}/api/pricing を呼び出します。これらの価格は参考価格にすぎません。ジョブの正確な料金は、たとえば x402_quote のような未払いの x402 リクエストで確認できます。
{ "name": "get_pricing", "arguments": {} }
get_resume_info
ジョブを最後のチェックポイントから再開できるか確認します。読み取り専用です。何も起動されず、料金も発生しません。KILAWATT_API_KEY が必要です。GET {KILAWATT_SITE_URL}/api/jobs/{job_id}/resume-info を呼び出します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
job_id | string | はい | 36 文字の16進数とハイフンです。リクエストを送信する前に検証されます。 |
結果には、job_id、checkpoint_count、last_checkpoint_at、can_resume、reason(null、no_checkpoint、または job_still_running)、および resume_action が含まれます。
{ "name": "get_resume_info", "arguments": { "job_id": "YOUR_JOB_ID" } }
resume_job
別のサプライヤーで、ジョブを最後のチェックポイントから再開する新しい有料実行を開始します。料金が発生します。 KILAWATT_API_KEY が必要です。先に get_resume_info を呼び出し、確定する前にユーザーに確認してください。POST {KILAWATT_SITE_URL}/api/jobs/{job_id}/resume を一度呼び出し、自動的に再試行することはありません。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
job_id | string | はい | 36 文字の16進数とハイフンです |
confirm | boolean | はい | 正確に true である必要があります |
max_spend_usd | number | はい | 新しい実行の支出上限です。0 より大きい値である必要があります。 |
duration_seconds | integer | いいえ | 60~86400 です。指定された場合のみ送信されます。 |
これらはすべて、リクエストを送信する前にローカルで検証されます。検証に失敗した場合、何も送信されません。
{
"name": "resume_job",
"arguments": { "job_id": "YOUR_JOB_ID", "confirm": true, "max_spend_usd": 5 }
}
deploy_gpu_node と x402 ツールの違い
deploy_gpu_nodeのgpu_typeは自由入力(最大64文字)ですが、x402 ツールでは固定リストから選択します。deploy_gpu_nodeのcard_countは最大64ですが、x402 ツールでは最大16です(一部の GPU ではさらに少なくなります)。deploy_gpu_nodeのduration_secondsは1~86400ですが、x402 ツールでは60~86400です。deploy_gpu_nodeのrouting_policyの既定値はlowest_costです。x402 ツールでは、指定しない限りルーティングポリシーは送信されません。
ツールの結果は、Kilawatt ゲートウェイから返された実際の HTTP レスポンスをもとに整形されます。
x402 の設定
x402 ツールを使用すると、Kilawatt アカウントや API キーがなくても、Base USDC でコンピューティング容量をリクエストできます。支出上限はローカルで適用されます。
x402 決済を使用する場合、サーバーが次の環境変数を読み取れる必要があります。
| 変数 | 用途 | 既定値 |
|---|---|---|
KILAWATT_X402_PRIVATE_KEY | Base 対応ウォレットキー。x402_run_job での支払いにのみ必要です | 未設定 |
KILAWATT_X402_MAX_USD_PER_JOB | 有料ジョブ1件あたりの最大料金 | 0.25 |
KILAWATT_X402_MAX_USD_PER_SESSION | このサーバープロセスでの累計支出上限 | 1.00 |
KILAWATT_X402_URL | x402 実行エンドポイントの上書き | Kilawatt 本番エンドポイント |
返された API キーは、制限付きファイル権限で ~/.config/kilawatt/x402-api-key に保存されます。ツールの出力に表示されることはありません。既存の deploy_gpu_node には引き続き KILAWATT_API_KEY が必要です。
x402 用に少額の専用ウォレットを用意し、秘密鍵をプロンプトや共有設定に含めないでください。 支払者に ETH は必要ありません。トランザクションはファシリテーターが送信します。
x402 のユーザー向け:Base ウォレットに十分な USDC があり、支出上限がその金額を許容していることを確認してください。
エラー処理
すべてのエラーは内容が明確で、リソースがプロビジョニングされたか、料金が発生したかを示します。よくあるケースは次のとおりです。
- 400 Bad Request:引数が無効です(例:
card_countが64を超えている)。修正して再試行してください。 - 401 Unauthorized:API キーがない、形式が不正、または失効しています。Kilawatt アカウントで新しいキーを発行するか、[email protected] にお問い合わせください。
- 402 Payment Required:支払いが承認されませんでした。残高と支出上限を確認してから、再試行してください。
- 429 Rate Limited:同時実行数またはレート制限に達しました。時間をおいて再試行してください。
- 503 No Capacity:条件に一致するノードがありません。別の
gpu_typeを試すか、card_countを小さくしてください。 - タイムアウト:ゲートウェイが60秒以内に応答しませんでした。コンピューティングリソースはプロビジョニングされていません。必要に応じて再試行してください。
Links
- npm Package: https://www.npmjs.com/package/kilawatt-mcp-server
- GitHub Repository: https://github.com/KilaWattCloud/kilawatt-mcp-server
- Kilawatt Cloud: https://kilawattcloud.dev
- Model Context Protocol: https://modelcontextprotocol.io
License
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。