コンテンツにスキップ

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:<port>/mcp で待ち受けます。 ループバックのみ で、外部からの呼び出しには 403 を返します。

このポートやトークンをあなたが手でコピーすることはありません。小さな ランチャー が、 MCP クライアントの標準入出力と Restorm の HTTP サーバーの橋渡しをします。実行中の インスタンスを見つけてトークンを注入し、あなたの呼び出しを転送します。initialize と tools/list には組み込みのマニフェストから即座に応答するため、Restorm の起動を待たずに クライアントがすばやく立ち上がり、最初の呼び出しが通った時点で実際のツール一覧を提供します。 Restorm を黙って起動することは決してありません。MCP サーバーを止めたインスタンスは 止まったままで、分かりやすいエラーメッセージが返ります。

最も手早い方法は、手動での設定を一切必要としません。(ステータスバーの)MCP インジケーター のポップオーバーを開き、「Restorm を AI アシスタントに追加」 をクリックしてください。クライアントごとに、コピーすべき 1 行を示すダイアログが表示されます。

  • Claude Code — claude mcp add … コマンド。「Claude Code に追加」 ボタンが併設されており、claude CLI が PATH 上で検出されると、そのコマンドを代わりに実行します。
  • Claude Desktop と Cursor — 貼り付ける mcpServers ブロックと、設定ファイルの場所。

「Restorm を AI アシスタントに追加」ダイアログ。Claude Code、Claude Desktop、Cursor の 3 つのセクションが縦に並び、それぞれにコピーすべき行が表示されています。Claude Code のセクションには、ワンクリックで実行できるボタンも用意されています

Restorm が他のアプリの設定ファイルを書き換えることは 決してありません。実行ボタンはあなた自身の claude CLI を操作するだけです。ほかのクライアントについては、スニペットをご自身で貼り付けてください。

Claude Code では、当社がセルフホストするマーケットプレイスから、Restorm を プラグイン としてインストールすることもできます。

/plugin marketplace add Monsieur-Dev/restorm
/plugin install restorm@restorm-marketplace

このプラグインは restorm MCP サーバーを登録します(npx -y restorm-mcp を利用します)。ほかに設定は不要です。

設定をご自身で書きたい、あるいは別のクライアントをお使いですか? 以下のオプションがあらゆるケースをカバーします。

  • MCP サーバーが有効であること — 既定で有効です(設定 ▸ MCP)。画面のないマシンでは、 設定がどうであれ決して起動しません。
  • Restorm のインスタンスが起動していること — ランチャーは あなたの 実行中のアプリに 接続します。自分で起動することはありません。
  • 下記の npx の方法には Node.js ≥ 18 が必要です。

インストール不要、管理すべきパスもなく、あらゆるクライアントとすべての OS で動作します。 クライアントをこれに向けてください。

{
"mcpServers": {
"restorm": {
"command": "npx",
"args": ["-y", "restorm-mcp"]
}
}
}

このスニペットをどこに置くかはクライアントによって異なります。

  • Claude Desktop — 設定 ▸ 開発者 ▸ 設定を編集、または claude_desktop_config.json ファイル(macOS: ~/Library/Application Support/Claude/、Windows: %APPDATA%\Claude\)。
  • Cursor — 設定 ▸ MCP ▸ 追加、または ~/.cursor/mcp.json。
  • Claude Code — claude mcp add restorm -- npx -y restorm-mcp、または プロジェクト内の .mcp.json。

方法 B — アプリに同梱のランチャー(npm 不要)

Section titled “方法 B — アプリに同梱のランチャー(npm 不要)”

Restorm のインストールにはいずれも同じランチャーが同梱リソースとして含まれているため、 npm を使わずに node を直接そこへ向けられます。

{
"mcpServers": {
"restorm": {
"command": "node",
"args": ["<path-to>/restorm-resources/mcp-launcher.mjs"]
}
}
}

<path-to> はアプリのリソースディレクトリです。

  • macOS — /Applications/Restorm.app/Contents/Resources/restorm-resources/mcp-launcher.mjs
  • Windows — %LOCALAPPDATA%\Programs\restorm\resources\restorm-resources\mcp-launcher.mjs
  • Linux — /opt/Restorm/resources/restorm-resources/mcp-launcher.mjs(.deb/.rpm)。 AppImage ではマウントされたイメージの中。Snap では $SNAP/resources/restorm-resources/mcp-launcher.mjs。

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

ランチャーとアプリは 検出ディレクトリ について一致している必要があります。どちらも既定では システムの一時ディレクトリの下の restorm-mcp を使います。環境変数 RESTORM_MCP_DIR を 設定する場合は、両側に 同じ 値を設定してください(Restorm が異なる一時ディレクトリを持つ サービスマネージャーの下で動作している場合にのみ必要です)。

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

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

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

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

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

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

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

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