コンテンツにスキップ

MCP で Restorm を操作する

Restorm は MCP サーバーModel Context Protocol)を公開しています。 そのため、Claude Code や Cursor をはじめ、あらゆる MCP クライアントの AI エージェントが、 プロジェクトを読み取り、リクエストを作成・実行し、インターフェースを操作できます。

これにより「この Swagger をインポートして、注文フローをテストするシナリオを作って実行して」 と頼み、目の前で動いているアプリケーションの中で検証可能な結果を得られます。

サーバーは 既定で有効 です。制御する仕組みは 2 つあります。

  • 設定 ▸ MCP ▸ MCP サーバーを有効にする の設定項目。
  • 絶対的なルール:ディスプレイのないマシンでは、設定に関係なく MCP サーバーは 一切起動しません。CI サーバーがうっかりエントリーポイントを公開してしまうことはありません。

ステータスバーの MCP インジケーター は、着信のたびに点滅します。 そのポップオーバーからは、このセッションのあいだサーバーを一時停止したり再開したり、 MCP ログ を開いたりできます。

ステータスバーの MCP インジケーターとそのポップオーバー。サーバーの待ち受けポート、接続中のセッション名、そして「MCP サーバーを停止」「ログを表示」のアクションが表示されています

起動時、Restorm は空いているポートを選び、プロセス固有のアクセストークン を生成して、 システムの一時ディレクトリに検出用のファイルを書き込みます。 JSON-RPC サーバーは 127.0.0.1:<ポート>/mcp で待ち受けます。 ループバックのみ で、外部からの呼び出しには 403 を返します。

小さなプロキシが、MCP クライアントの標準入出力と Restorm の HTTP サーバーを橋渡しします。

{
"mcpServers": {
"restorm": {
"command": "node",
"args": ["scripts/mcp-launcher.mjs"]
}
}
}

実行中のインスタンスを検出してトークンを注入し、 Restorm を黙って起動することは決してありません。 MCP サーバーを止めたインスタンスは止まったままで、 分かりやすいエラーメッセージが返ります。

検出用ファイルからポートとトークンを読み取り、 Authorization: Bearer <トークン> ヘッダーを付けて JSON-RPC リクエストを送ります。

複数の Restorm を並行して動かせます。 各呼び出しは、対象のインスタンスを指定する予約キー __session を受け付けます。 list-instancescreate_instanceterminate_instance のツールがこれを補完します。

読み取り · ナビゲーション · プロジェクト · 書き込み · 環境とシークレット · インポート · 実行 · シナリオ · インスタンス · インターフェースの自動化 (スクリーンショット、DOM クエリ、入力、ショートカット、テーマ、レイアウト)。

さらに 4 つのリソースが公開されています。restorm://projectrestorm://treerestorm://active-tabrestorm://request/{id} です。

完全な一覧は MCP ツール にあります。

MCP サーバー自体には制限がかかりません。 各ツールが呼び出しの時点で自分の権限を確認します。

  • Community 版リクエスト に関するすべての操作。実行、キャンセル、 レスポンスと履歴の読み取り、ストリームの読み取り、メッセージの送信、 URL からのインポート、タブの開閉、プロジェクトの管理、ツリーへの書き込み、 環境と変数の管理、クイック設定、お気に入り、そしてファイアウォールの 6 つのツール。
  • Pro 版シナリオ 領域(読み取りも含みます)、キャプチャインターフェースの自動化 全般、テーマミニブラウザーworkbench のレイアウト複数インスタンス、そして git のツール

制限されたツールも 一覧には残ります。 名称に (Restorm Pro) の接尾辞が付き、消えてしまうのではなく、 明示的で機械的に解釈できるエラーを返します。

  • ループバックとトークン:サーバーは 127.0.0.1 でしか待ち受けず、 トークンの照合は定数時間で行われます。
  • シークレット:エージェントは、アプリケーションの他の部分と同じように、 シークレットの 解決済みの値 を受け取ります。 エージェントはあなたに代わって、あなた自身のシークレットで Restorm を操作するからです。 Secret 型が保証することは変わりません。 値がプロジェクトやエクスポートに入ることはなく、 許可されていない第三者のサービスへ渡ることもありません。
  • 実際にネットワークに影響しますrun_request は本当に対象を呼び出します。 歯止めの役割を果たすのは お使いの MCP クライアント の承認フローです。 有効にしたままにしてください。
  • ファイアウォールが適用されます:エージェントが未知のオリジンへ呼び出しを行った場合も、 自分で行ったときと同じ許可の確認が表示されます。
  • ログ:すべての呼び出しは、リクエストとレスポンスとともに MCP ログ に記録されます。