> ## Documentation Index
> Fetch the complete documentation index at: https://docs.makkii.jp/llms.txt
> Use this file to discover all available pages before exploring further.

# Remote MCP

> 外部の AI エージェントからクラウドワークスペースを操作する。トークン、ツール、上限

Remote MCP は、**手元で使っている AI エージェントに Storm Code を操作させる**ための機能です。
Storm Code が MCP サーバー側になり、推論は利用中のエージェントが行います。

<Note>
  **Storm Code 自身は推論を行いません。** モデルを持たず、AI Chat も提供していません。
  ここで渡すのは「ファイルを読む」「実行する」といった操作手段だけです。
</Note>

ブラウザを閉じていても動きます。処理はサーバー側で行われるためです。

## 使えるワークスペース

**クラウドワークスペース専用です。**
ローカルワークスペースと、一時共有のゲストには権限がありません。

クラウドワークスペースのオーナーとメンバーが、自分のアカウントのトークンを使います。

## 接続する

<Steps>
  <Step title="ログインする">
    Google アカウントでログインします。トークンの発行にはアカウントが必要です。
  </Step>

  <Step title="トークンを発行する">
    `MCP` ウィンドウの「接続」からトークンを発行します。
    エンドポイントと、クライアント別の登録手順もここに表示されます。

    トークンは既定で伏せられています。表示の切り替えとコピーができます。
  </Step>

  <Step title="外部クライアントへ設定する">
    使っているエージェントに、エンドポイントとトークンを登録します。
    ツールを呼ぶ際にはワークスペース ID が毎回必要です。
  </Step>
</Steps>

### トークンについて

* **1アカウントにつき1つ**です。複数のエージェントで同時に使えます。
* **再発行すると、それまでのトークンは即座に無効になります。**
* サーバーにはトークンそのものではなくハッシュが保存されます。

<Warning>
  **MCP トークンは、そのワークスペースを操作できる資格情報です。**
  第三者へ渡さないでください。zip にもソースコードにも入れないでください
  (実際、zip には含まれない設計になっています)。
</Warning>

ツールを呼ぶたびに、トークンと対象ワークスペースの権限がサーバーで検証されます。
ローカルワークスペースや一時共有のリンクから、クラウドワークスペースの権限が導かれることはありません。

## 使えるツール

| ツール                            | 内容                      |
| ------------------------------ | ----------------------- |
| `read_file`                    | ファイルを行番号付きで読む           |
| `write_file`                   | ファイルを書く                 |
| `edit_file`                    | unified diff で部分的に書き換える |
| `get_diagnostics`              | ブラウザ無しで全 `.lua` を解析する   |
| `exec`                         | シェルコマンドを実行する            |
| `exec_lua`                     | Lua を実行する               |
| `read_design` / `write_design` | Design を読み書きする          |
| `read_image`                   | 画像を読む                   |

<Note>
  `list_files` はありません。`exec` の `ls` / `find` / `grep` を使ってください。
</Note>

`.scode/` 配下は読めません。
画像のパスを `read_file` に渡すと拒否され、`read_image` へ案内されます。

### `exec` で使えるもの

`ls` `cat` `find` `grep` `head` `sort` と、シェルの構文が使えます。
**任意の OS コマンドは実行できません。**

ネットワークにも接続できません。設定で遮断しているのではなく、
実行するプロセスにネットワークインターフェース自体が存在しない状態にしています。

### `exec_lua` について

ブラウザで動いているものと同じ Lua の WASM をサーバー側で実行します。
ブラウザとサーバーで挙動がずれることがありません。

実行の単位はティック数です。特定の関数だけを呼ぶことはできません。

<Warning>
  **サーバー側の実行環境は毎回使い捨てです。** 状態は次の実行に引き継がれません。
</Warning>

## 上限

| 項目           | 値                    |
| ------------ | -------------------- |
| `exec` の実行時間 | 60秒                  |
| 順番待ち         | 12秒。超えると「サーバー過負荷」エラー |
| Lua のティック数   | 既定 60 / 最大 216,000   |
| 1プロセスのメモリ    | 512 MiB              |
| 同時実行数        | 4                    |

## 実行結果を見る

MCP ターミナルウィンドウで、エージェントが実行した内容を確認できます。

表示は `⚙ <コマンド>` → 出力 → `[exit N · Xms]` の形です。
[人間向けのログパネル](/storm-code/guides/run-and-debug)とは分けてあり、
こちらは読むだけで、入力はできません。

`MCP` ウィンドウの「アクティビティ」欄には、呼ばれたツール名・引数と結果の要約・所要時間が並びます。

<Note>
  **このウィンドウの記録は観測用であって、実行結果の正本ではありません。**
  誰も見ていなくても実行は成立します。

  保持されるのはワークスペースごとに直近50件または合計5 MBまでで、
  24時間で消えます。回線が切れた場合、実行自体は失われます。
</Note>

## 承認について

<Warning>
  **個々のツールの実行にブラウザ側の承認は挟みません。**

  これは「安全だから確認不要」という意味ではなく、承認のための画面を持っていないためです。
  **トークンを渡した時点で、そのワークスペースへの書き込み権限を渡しています。**
  渡す相手を選んでください。
</Warning>
