mcpField
S
Spawner

Spawner

ローカル
spawner.runクラウド・インフラ03 週間前に更新

Spawner について

Spawnerは、開発チームやコーディングエージェント向けのオープンソースでセルフホスト可能なプレビュー環境管理ツールとコマンドラインです。Gitブランチごとに、URL、データベース、ログを分けたアプリの複製を作成します。

主な機能

  1. 01Gitワークツリーから環境を作成
  2. 02未コミットの変更を反映
  3. 03サービス内でコマンドを実行
  4. 04環境ログを取得
  5. 05環境のライフサイクルを管理

活用シーン

  1. 01レビュー前に機能ブランチをプレビュー
  2. 02隔離環境でワークツリーの変更をテスト
  3. 03ブランチ環境でデータベースコマンドを実行
  4. 04プレビューのデバッグ中にログを確認

MCP 対応

`spawner mcp`コマンドは、コマンドラインユーザーのログイン状態と権限でstdioのMCPサーバーを起動します。9つのツールで環境管理、状態・ログ確認、コマンド実行、URL共有を行えます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"flosk6-spawner": {
"command": "npx",
"args": [
"-y",
"spawner-cli"
],
"env": {
"SPAWNER_URL": "<SPAWNER_URL>",
"SPAWNER_TOKEN": "<SPAWNER_TOKEN>"
}
}
}
}
起動コマンドnpx -y spawner-cli
設定が必要な環境変数
SPAWNER_URLAddress of your Spawner server's dashboard, such as https://spawner.preview.example.com. Without it, the server of spawner login
SPAWNER_TOKENシークレットPersonal API token (spn_...), from spawner token create or the dashboard. Without it, the token of spawner login

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmspawner-cli2.2.1

ツール

9

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
envstringいいえ環境名。デフォルトでは worktree のブランチ名(feat/login は feat-login になります)
ttlstringいいえ有効期間。例:"24h"
pathstringいいえworktree の絶対パス。デフォルトではクライアントが共有する最初のルートを使用し、それがない場合は MCP サーバーの実行ディレクトリを使用します
refsobjectいいえ代わりに git の指定ブランチから取得するソース:{ "front": "develop" }
waitbooleanいいえ環境の準備が整うまで待機します(デフォルトは true)
freshbooleanいいえデータ(ボリューム)を破棄して最初から開始します
reseedbooleanいいえspawner.yaml のシード手順を再実行します
sourcesobjectいいえローカル worktree から送信する他の spawner.yaml リポジトリ:{ "front": "/path/to/front" }
timeout_secintegerいいえ待機時間(デフォルトは 1200)

詳細

spawner-cli

Spawner のコマンドラインツールと MCP サーバーです。Spawner はオープンソースのセルフホスト可能なプレビュー環境マネージャーです。チームやコーディングエージェント向けに、自分のサーバー上で、Git ブランチごとに URL、データベース、ログがそれぞれ独立したアプリのコピーを用意します。

spawner を使うと、開発者やコーディングエージェントは、未コミットの変更も含めて、ワークツリーから環境を作成、更新、削除し、その環境でコマンドを実行してログを確認できます。

インストール

npm install -g spawner-cli

Node.js 20 以降と Spawner サーバーが必要です。Spawner サーバーは、1 つのコマンドでインストールできます。各サーバーは、独自のバージョンの CLI も /api/v1/cli/spawner で提供します。

ログイン

spawner login https://spawner.preview.example.com

ダッシュボードに表示されたコードを入力し、ログインを承認してください。CLI に個人用トークンが保存されます。CI またはコンテナーでは、ログインの代わりに SPAWNER_URL と SPAWNER_TOKEN を使用します。

コマンド

# write .spawner/, and offer to add the instructions for coding agents
spawner init

# the environment of the current branch, from this worktree
spawner up --wait

# run a command in a service
spawner exec feat-login db -- psql -U app -c "select * from users"

# only the error lines, stack traces kept whole
spawner logs feat-login api --errors

# a link for someone without an account
spawner share feat-login

spawner down feat-login

プロジェクトで初めて spawner up を実行する前に、管理者がダッシュボード(Projects、New project)でプロジェクトを追加する必要があります。ほかのコマンドは、status、ls、stats、capacity、url、shell、stop、start、sleep、wake、extend、token、whoami、logout です。

コマンドは --json を指定すると JSON を出力し、安定した終了コードを返します。環境の起動に失敗した場合は 4、クォータまたはサーバーの容量に達した場合は 6、.spawner/ が拒否された場合は 7 です。

MCP サーバー

spawner mcp は、CLI と同じログイン状態および権限で動作する stdio 接続の MCP サーバーです。Claude Code では、次のように設定します。

claude mcp add spawner -- spawner mcp

プロジェクトの .mcp.json または Cursor の .cursor/mcp.json では、次のように設定します。

{
  "mcpServers": {
    "spawner": { "command": "spawner", "args": ["mcp"] }
  }
}

9 つのツールがあります。spawner_up、spawner_status、spawner_list、spawner_logs、spawner_exec、spawner_stats、spawner_url、spawner_share、spawner_down です。spawner_exec と spawner_down は破壊的な操作としてマークされています。実行前にクライアントが確認を求めるかどうかは、クライアントとその権限設定によって異なります。

ドキュメント

ソース:github.com/Flosk6/Spawner。ライセンス:Apache-2.0。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。