エージェントと MCP
使いすぎられないトークンをエージェントに渡し、MCP で接続します。
エージェント専用のトークンを渡す
API & agents で、必要な権限だけを与えたエージェント用のトークンを作成します:
- スコープは read と rent(manage や billing は付けない)。
- 支出上限(ドル単位)、最長レンタル時間(時間単位)、有効期限。
トークンは一度しか表示されません。エージェントのシークレットストアに保管し、プロンプトやリポジトリには決して書かないでください。上限つきのトークンでは、すべてのレンタルに停止時刻の設定が必要で、上限を超えるレンタルは拒否されます。
MCP で接続
MCP エンドポイントは $ARRAKIS_URL/mcp で、エージェントのトークンを使って接続します。MCP の Streamable HTTP で通信し、レスポンスはプレーンな JSON です。
Claude Code:
シェル
claude mcp add --transport http arrakis $ARRAKIS_URL/mcp --header "Authorization: Bearer ark_..."Cursor (mcp.json):
JSON
{
"mcpServers": {
"arrakis": {
"url": "$ARRAKIS_URL/mcp",
"headers": { "Authorization": "Bearer ark_..." }
}
}
}ツール
| ツール | 機能 |
|---|---|
search_gpus | GPU の性能、価格、ホストの信頼性から見て良い順にマシンを検索します。おすすめの 1 台とその理由も示します。絞り込み条件:GPU の種類、最小・最大 GPU 数、メモリ、GPU 1 時間あたりの上限価格、国。 |
get_market_summary | GPU ファミリーごとの最新価格と空き状況。 |
get_balance | 残高で支払える金額。 |
rent_gpu | マシンをレンタルし、SSH コマンドとともに返します。template_id か任意の公開 image で起動します。課金対象。 |
deploy_model | Hugging Face のモデルを、そのモデルに合った規模のマシン上で vLLM、SGLang、llama.cpp を使って推論サーバーとして動かし、エンドポイントと API キーを返します(モデルをデプロイ)。課金対象。 |
list_images | template_id に指定できる Arrakis イメージと、保存済みのイメージ。 |
list_instances | 自分のマシンの一覧。 |
get_instance | 1 台のマシンの最新の状態と、ホストからの通知(ある場合)。 |
get_events | マシンに起きたこと:起動完了、終了とその理由(ホストによる回収かどうか)、ホストからの通知。どのツールの結果にも、直近 1 日分のアラートが含まれます。 |
terminate_instance | マシンを停止して削除します。 |
schedule_removal | マシンが自動で削除される時刻を設定します。 |
get_partner_earnings | パートナー向け:自分のパートナーコードとリンク、紹介した顧客、獲得した額、パートナープログラムが受付中かどうか。 |
join_partner_program | アカウントの所有者が同意する場合に、そのアカウントでパートナープログラムに参加します(/partners)。 |
再試行しても二重にレンタルされない
予定しているレンタルごとに、変わらない idempotency_key を付けます。同じキーで再試行すると、二重に請求されることなく同じマシンが返ります。MCP では、キーを付けない呼び出しでも、同じマシン、名前、時間数で 10 分以内に繰り返された場合は、最初のマシンが返ります。
最初に試すプロンプト
エージェントとして読んでいますか?このページの Markdown 版をどうぞ。