fcvm について
fcvm-mcp は fcvm を MCP サーバーとして起動し、AI エージェントにコード実行・準備用の使い捨て Firecracker microVM サンドボックスを提供します。KVM 搭載の Linux ホストが必要で、実行中の VM のスナップショットと複製に対応します。
主な機能
- 01サンドボックスでのコマンド実行とファイル管理
- 02イメージのビルドと準備済み状態のコミット
- 03実行中 VM のスナップショットと複製
- 04サンドボックスのネットワークアクセス制御
活用シーン
- 01使い捨て VM での Agent 生成コードの実行
- 02VM の状態を準備して複製
- 03サンドボックスの接続先を指定ホストに制限
MCP 対応
`fcvm mcp` を起動し、コマンド実行、ファイル操作、イメージ作成、状態のコミット、スナップショット、VM の複製などのサンドボックス用ツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx fcvm-mcpFCVM_MCP_NETWORKPin the network policy for every sandbox: none, or an allowlist such as @pypi,@githubFCVM_MCP_TEMPLATETemplate used when the agent names neither an image nor a template, e.g. python-sandboxFCVM_MCP_TTLStop sandboxes this long after boot unless the agent sets a lifetime, e.g. 4hFCVM_MCP_IDLE_STOPStop sandboxes that saw no exec or file operation for this long, e.g. 30mFCVM_MCP_SECRETSシークレットNames of environment variables passed into every sandbox as secrets, e.g. GITHUB_TOKENFCVM_MCP_FORWARDHost credentials relayed into every sandbox: ssh-agent, gitFCVM_MCP_CACHE1: restricted sandboxes fetch pip and npm packages through the host's mirrorFCVM_MCP_JAIL0: don't run sandboxes under the Firecracker jailer even when it is set upFCVM_BINPath of the fcvm command, when it isn't on PATH, in ~/.local/bin or in /usr/local/binローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
fcvm-mcp
fcvm の MCP サーバーを起動します。fcvm は、AI エージェントに使い捨ての Firecracker microVM をサンドボックスとして提供します。各サンドボックスは、任意の OCI イメージから約 1 秒で独自のカーネルを起動します。エージェントは、コマンドの実行、ファイルの読み書き、イメージのビルド、準備した状態のコミット、VM のスナップショットから約 150 ms で実行中のコピーをフォークするためのツールを利用できます。ネットワークアクセスは、無効、全許可、またはログ記録プロキシで適用されるホストの許可リストから選べます。
このパッケージはランチャーのみです。インストール済みの fcvm を見つけて fcvm mcp を実行します。fcvm の実行には、KVM を備えた Linux ホストが必要です。
curl -fsSL https://raw.githubusercontent.com/carlosbravoa/fcvm/main/install.sh | sh
fcvm setup
次に、MCP クライアントにサーバーを登録します。Claude Code の場合:
claude mcp add fcvm -- uvx fcvm-mcp
claude mcp add fcvm -e FCVM_MCP_NETWORK=@pypi,@github -- uvx fcvm-mcp # agents can only reach PyPI and GitHub
クライアントの JSON 設定の場合:
{"mcpServers": {"fcvm": {"command": "uvx", "args": ["fcvm-mcp"]}}}
ランチャーはまず PATH 上で fcvm を探し、次に ~/.local/bin と
/usr/local/bin を探します。別の実行ファイルを使う場合は FCVM_BIN を設定してください。fcvm mcp を直接実行しても同じように動作し、Python パッケージは不要です。
設定は環境変数で行います。FCVM_MCP_NETWORK はネットワークポリシーを固定し、FCVM_MCP_TEMPLATE はデフォルトのテンプレートを選択します。FCVM_MCP_TTL と FCVM_MCP_IDLE_STOP は放置されたサンドボックスを停止し、FCVM_MCP_SECRETS と FCVM_MCP_FORWARD はエージェントに見せることなく、認証情報をサンドボックスに渡します。エージェントガイドでは、ツールとすべての設定について説明しています。
Apache License 2.0。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。