capsulate について
capsulate は、Claude Code、Claude Desktop、Cursor、Windsurf、Antigravity などの MCP クライアントから、隔離されたクラウド上の Linux・Windows 環境を起動して操作する MCP サーバーです。コマンドやファイル操作に加え、デスクトップ・ブラウザー制御、人間への引き継ぎ、再利用できるスキルに対応します。
主な機能
- 01クラウド環境の起動・確認・破棄
- 02コマンドやコードの実行とファイル操作
- 03デスクトップ操作と要素の確認
- 04ブラウザーツールによる Chrome 操作
- 05ライブ画面の共有と操作権の引き継ぎ
- 06スキルの記録・保存・実行
活用シーン
- 01隔離環境でテストスイートを実行
- 02Windows や Linux の GUI アプリを操作
- 03ログイン時に画面を人間へ引き継ぐ
- 04定型のデスクトップ作業をスキルとして保存
MCP 対応
MCP サーバーとして、クラウド環境の起動、コマンド、ファイル、デスクトップ、ブラウザー、ライブ連携、スキル管理のツールをクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @capsulate/mcpCAPSULATE_API_KEYシークレットA cap_live_ API key from the dashboard (Settings → API & Keys).CAPSULATE_BASE_URLAPI base URL. Defaults to https://api.capsulate.dev.CAPSULATE_TEAM_IDTeam to bill. Defaults to the API key's team.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
49掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| env | object | いいえ | 注入する環境変数 |
| size | string | いいえ | リソースサイズ。例:'2c4g'(デフォルト) |
| wait | boolean | いいえ | ACTIVE になるまで待機(デフォルトは true) |
| bundle | string | いいえ | 起動元となるソフトウェアバンドル(Bucket B)の ID |
| region | string | いいえ | リージョンのヒント。省略すると自動配置されます |
| snapshot | string | いいえ | 復元元となるスナップショット/テンプレート ID |
| template | string | はい | テンプレート/OS/バンドル ID。例:'ubuntu-22.04-headless' |
詳細
@capsulate/mcp
Capsulate の Model Context Protocol サーバーです。 Claude Code、Claude Desktop、Cursor、Windsurf、Antigravity など、あらゆる MCP クライアントから、分離されたクラウドコンピューター(「カプセル」)を起動して操作できます。実際の Linux および Windows デスクトップも利用でき、人が画面をリアルタイムで見ながら操作を引き継ぐことができます。
セットアップ
- Capsulate ダッシュボードで API キーを作成します:Settings → API & Keys。
- MCP クライアントの設定にサーバーを追加します。
Claude Code
claude mcp add capsulate -e CAPSULATE_API_KEY=cap_live_... -- npx -y @capsulate/mcp
Claude Desktop / Cursor
{
"mcpServers": {
"capsulate": {
"command": "npx",
"args": ["-y", "@capsulate/mcp"],
"env": {
"CAPSULATE_API_KEY": "cap_live_…"
}
}
}
}
キーを設定ファイルに記載しないようにするには、キーをファイルに保存し、CAPSULATE_API_KEY_FILE でそのファイルを指定します。ファイルには、キーのみ、または CAPSULATE_API_KEY=cap_live_... の行を記載します。
セルフホスト環境またはデフォルト以外のデプロイ環境では、"CAPSULATE_BASE_URL": "https://api.your-domain" も設定します。
ツール
| ツール | 機能 |
|---|---|
capsulate_launch | カプセルを起動し、準備が整うまで待機します |
capsulate_list / capsulate_get | カプセルの情報を確認します |
capsulate_destroy | カプセルを破棄します |
capsulate_exec | コマンドを実行します(argv 配列) |
capsulate_run_code | Python/Node/Bash のスニペットを実行します |
capsulate_write_file / capsulate_read_file | ファイルの読み書きを行います |
capsulate_set_env | 環境変数を設定します |
capsulate_snapshot | カプセルのスナップショットを作成します |
capsulate_catalog | 起動可能なテンプレートとバンドルを検索します |
デスクトップコンピューターの操作
| ツール | 機能 |
|---|---|
capsulate_screenshot | 画面を確認します(画像を返します。format: "jpeg"、scale または領域を指定すると画像を小さくできます) |
capsulate_screen_info | 画面サイズ、ポインター、アクティブウィンドウを確認します |
capsulate_click / capsulate_move / capsulate_drag / capsulate_scroll | ポインターを操作します |
capsulate_type / capsulate_key | キーボードを操作します |
capsulate_ui_tree | クリック可能な中心座標を含むアクセシビリティツリーを読み取ります(Linux では AT-SPI、Windows では UI Automation) |
capsulate_find_element / capsulate_wait_element | ロール、名前、テキストで要素を検索するか、表示を待ちます |
capsulate_click_element | 要素を検索してクリックします。名前を指定したボタンを押すための信頼性の高い方法です |
capsulate_clipboard | クリップボードの読み取りまたは設定を行います(長いテキストは入力せずに貼り付けられます) |
capsulate_element | 座標を使わずに要素を操作します:値の設定、クリア、切り替え、展開または折りたたみ、実行、名前によるオプションの選択、フォーカス、表示領域へのスクロール |
capsulate_windows | ウィンドウを一覧表示するか、ウィンドウを最前面に表示します |
capsulate_window | ウィンドウの最小化、最大化、復元、閉じる、移動、サイズ変更を行います |
capsulate_open | URL、ファイル、または名前を指定したアプリを開き、そのウィンドウが表示されるまで待機します |
capsulate_wait_for | 要素の表示、非表示、操作可能化、テキスト表示を待機します。また、ウィンドウや画面が安定するまで待機します |
capsulate_ocr | UI ツリーにラベルがない場合に、画面上のテキストを読み取ります |
capsulate_run_actions | 複数の手順を1回の呼び出しで連続して実行し、失敗した時点で停止して、最後に画面を確認します |
入力操作の動詞では screenshot: true(および screenshotDelayMs)を指定すると、操作後のフレームが返されます。
すべてのツールは Linux と Windows のデスクトップで同じように動作します。複数行エディターは、Windows では document、Linux では text です。
ブラウザーの高速操作
カプセル内蔵の Chrome を、ページの構造を使ってページ速度で操作します。画面は人が見るものと同じです:capsulate_browser_open、_navigate、_tabs、_snapshot(ref を含む概要)、_click、_fill(値は応答に含まれません)、_select、_press、_scroll、_wait、_text、_eval、_screenshot。
ライブ:人が見守り、操作を引き継ぎ、返します
デスクトップカプセルには、共有画面が1つあります。AI は上記のツールを使って操作し、人はブラウザーで同じ画面を見守ります。AI のポインターや、画面上に表示されるクリックとキー入力を確認し、ナレーションを読みながら、いつでも画面の操作を引き継げます。
| ツール | 機能 |
|---|---|
capsulate_console_link | ログインなしでライブ画面を任意のブラウザーで開く、署名付きの有効期限付き URL(control または view) |
capsulate_say | ライブコンソールにナレーションを1行表示します |
capsulate_control | 操作する人を指定します:free、agent(AI)、human。画面の操作を引き継ぐ(take)か、手放す(release)かを選択し、見守る人向けの速度(pace)(natural または presentation)を設定します |
capsulate_handoff | メモ(「サインインしてください」など)を添えて画面を人に渡し、操作が返されるまで待ち、相手のメモを受け取ります |
capsulate_wait_for_handback | 人が画面の操作を返すまで待ち続けます |
人が画面を操作している間、AI の入力動詞は human_in_control を返し、カプセルには何も届きません。ツールの結果には、capsulate_wait_for_handback を使って待つよう表示されます。画面の読み取り(スクリーンショット、UI ツリー、OCR)は引き続き利用できます。AI が入力するたびに45秒間、AI が画面を操作します。その間、他の人が使うコンソールは表示専用となり、AI の操作が止まるか、画面を手放すと再び操作できるようになります。
スキル:一度学べば、数分で再実行
| ツール | 機能 |
|---|---|
capsulate_lesson | カプセルで作業を学習します。人が共有画面で操作(クリック、キー入力、入力内容と対象要素の記録、パスワードのマスキング、任意で動画と音声の記録)を教えるか、AI が目標に向けて自ら学習します。get で要約を読み取ります |
capsulate_skills | チームのスキルを管理します:レッスンの要約からスキルを保存する、バージョンを管理する、承認する、環境を保存する、リハーサルを行う、週次リハーサルを実施する |
capsulate_skill_run | スキルの手順をバックグラウンドで実行します。スキルで判断が保留されている箇所があれば、入力を求めます |
capsulate_inbox | 待機中の実行、承認が必要なバージョン、失敗したリハーサル、ソフトウェアが変更されたスキルを表示します |
サーバーの指示には学習プロトコルが含まれています。目標を設定して探索し、学んだことを記録し、完了したら要約を読み、スキルを保存します。次回は、その環境を起動して手順を実行します。
試してみる
「
ubuntu-22.04-headlessカプセルを起動して、テストスイートを実行し、出力を見せてください。」
モデルは capsulate_launch を呼び出し、続けて capsulate_exec を呼び出して、結果を報告します。
「
ubuntu-22.04-desktopカプセルを起動して、ライブリンクを教えてください。また、Firefox の最新リリースノートを探してください。ログインが必要な場合は、操作を私に渡してください。」
モデルはデスクトップを起動し、capsulate_console_link を呼び出して URL を伝え、作業中は capsulate_say で状況を説明します。あなたの操作が必要になると、capsulate_handoff を呼び出します。作業が終わったら、ライブコンソールで 完了、操作を返す を押すと、モデルは続行します。
開発
npm run build # from the repo root: sdk, ai-tools, cli, mcp
node apps/mcp/scripts/smoke-live.mjs # live tools end to end against a fake API
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。