Sprites MCP Server について
Sprites MCP Serverは、隔離された永続的なコンピューティング環境であるSpritesをAIエージェントに公開します。ホスト型HTTPSエンドポイントを通じて、コマンド実行、ファイル、サービス、チェックポイント、外向きネットワークポリシーを操作できます。
主な機能
- 01隔離されたSpritesの作成と管理
- 02コマンド実行とファイル管理
- 03サービスの設定と状態確認
- 04チェックポイントの作成と復元
- 05外向きネットワークポリシーの参照と更新
活用シーン
- 01隔離環境でのコマンド実行
- 02ファイルと長時間稼働するサービスの管理
- 03環境状態の保存または復元
MCP 対応
リモートサーバーはStreamable HTTPを使い、`https://sprites.dev/mcp` でSprites管理ツールを公開します。MCPクライアントはOAuth 2.1で認証し、stdioのみ対応するクライアントではサードパーティ製の `mcp-remote` アダプターを利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://sprites.dev/mcpclaude mcp add --transport http dev-sprites https://sprites.dev/mcp{"mcpServers":{"dev-sprites":{"type":"http","url":"https://sprites.dev/mcp"}}}Cursor で開く{"servers":{"dev-sprites":{"type":"http","url":"https://sprites.dev/mcp"}}}VS Code で開く{"mcpServers":{"dev-sprites":{"type":"http","url":"https://sprites.dev/mcp"}}}{"mcpServers":{"dev-sprites":{"serverUrl":"https://sprites.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Sprites MCP サーバー
Sprites の公式 Model Context Protocol サーバーです。AI エージェントから、サンドボックス化され、チェックポイントを作成できるコンピューティング環境を作成し、そこでコマンドを実行したり、サービスを管理したりできます。
これは リモート MCP サーバー です。ローカルにインストールして実行するものはありません。MCP クライアントは HTTPS 経由でホストされたエンドポイントに直接接続し、OAuth で認証します。このリポジトリはサーバーの公開ページであり、掲載マニフェスト、接続手順、ツールのリファレンスを提供します。サーバー自体は、Sprites プラットフォームの一環として Fly.io が運用しています。
- エンドポイント:
https://sprites.dev/mcp - トランスポート: Streamable HTTP(JSON-RPC 2.0)
- 認証: OAuth 2.1(
sprites:read/sprites:writeスコープ) - レジストリ: 公式 MCP レジストリの
dev.sprites/mcp - ドキュメント: https://docs.sprites.dev/integrations/remote-mcp/
Sprites とは?
Sprite は、分離された永続的なコンピューティング環境です。プログラムから作成し、その内部でコマンドを実行し、長時間稼働するサービスを動かし、状態全体のスナップショットをチェックポイントとして保存して後から復元できます。また、アウトバウンドネットワークポリシーも制御できます。MCP サーバーは、AI エージェントがユーザーに代わって Sprites を操作できるよう、これらの機能をツールとして提供します。
詳しくは、sprites.dev および docs.sprites.dev をご覧ください。
接続方法
リモートサーバーなので、クライアントに URL を指定し、初回にブラウザーで OAuth ログインを完了します。パッケージのインストールやローカルプロセスは不要です。
Claude Code
claude mcp add --transport http sprites https://sprites.dev/mcp
続いて Claude Code 内で /mcp を実行し、OAuth ログインを完了します。
Cursor
上の Cursor に sprites MCP サーバーを追加 ボタンをクリックするか、~/.cursor/mcp.json(グローバル)または .cursor/mcp.json(プロジェクトごと)に手動で追加します。
{
"mcpServers": {
"sprites": {
"url": "https://sprites.dev/mcp"
}
}
}
Cursor は初回使用時に、OAuth による認証を求めます。
Claude Desktop/その他の HTTP ネイティブクライアント
https://sprites.dev/mcp を指定するリモートサーバーを追加します。リモートサーバーに対応した汎用 MCP クライアントの設定例は次のとおりです。
{
"mcpServers": {
"sprites": {
"url": "https://sprites.dev/mcp"
}
}
}
初回使用時に、OAuth による認証を求められます。
stdio のみを使用するクライアント
一部の古い MCP クライアントは、stdio 経由でローカルコマンドを起動することしかできず、URL に直接接続できません。そのようなクライアントでは、汎用の mcp-remote アダプターが stdio とリモートエンドポイントを橋渡しします(OAuth フローも処理します)。
{
"mcpServers": {
"sprites": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://sprites.dev/mcp"]
}
}
}
mcp-remote は市販のサードパーティ製ツールです。Sprites サーバーではなく、必要なクライアント向けのトランスポートシムにすぎません。
認証
サーバーは OAuth 2.1 を実装しており、MCP クライアントが想定するメタデータ検出エンドポイントと動的クライアント登録エンドポイントを備えています。そのため、URL を指定すれば、ほとんどのクライアントは自動的に設定されます。
| エンドポイント | 用途 |
|---|---|
GET /.well-known/oauth-protected-resource | 保護対象リソースメタデータ(RFC 9728) |
GET /.well-known/oauth-authorization-server | 認可サーバーメタデータ(RFC 8414) |
POST /oauth/register | 動的クライアント登録(RFC 7591) |
GET/POST /oauth/authorize | 認可エンドポイント |
POST /oauth/token | トークンエンドポイント |
スコープ: sprites:read(一覧表示/取得操作)と sprites:write(作成/更新/削除およびコマンド実行)。
制限付きトークン。 同意フロー中にトークンを制限できます。Sprite 名のプレフィックスを指定したり、作成できる Sprite の総数に上限を設定したり、ラベルの範囲を指定したり、有効期限を設定したりできます。制限はすべての呼び出しで適用されます。
ツール
24 個のツールを以下に分類しています。アクセス権は read(安全で読み取り専用)または write(作成、変更、実行)です。スプライトを対象とする各ツールには、対象のスプライトを指定する必須の sprite パラメーターがあります。
スプライト管理
| Tool | Access | Description |
|---|---|---|
list_sprites | read | 認証済みの組織に属するスプライトを一覧表示します。 |
create_sprite | write | 新しいスプライトを作成します。 |
destroy_sprite | write | スプライトを破棄します。 |
コマンドの実行
| Tool | Access | Description |
|---|---|---|
exec | write | スプライト内でコマンドを実行します(非 TTY HTTP 実行)。 |
exec_list | read | アクティブな実行セッションを一覧表示します。 |
exec_kill | write | ID を指定して実行セッションを終了します。 |
ファイル
スプライトのファイルシステム内のファイルを読み取り、操作します。パスは workingDir を基準に解決され、すべてのアクセスはスプライトのルート内に制限されます(シンボリックリンクはたどりますが、ルートの外には出られません)。
| Tool | Access | Description |
|---|---|---|
file_read | read | ファイルの内容を読み取ります。埋め込みのテキストまたはバイナリーリソースを返します。 |
file_list | read | ディレクトリーのエントリーを一覧表示します。 |
file_write | write | ファイルに内容を書き込みます。 |
file_copy | write | ファイルまたはディレクトリーをコピーします。 |
file_rename | write | ファイルまたはディレクトリーの名前を変更するか、移動します。 |
file_delete | write | ファイルまたはディレクトリーを削除します。 |
チェックポイント
| Tool | Access | Description |
|---|---|---|
checkpoint_create | write | 現在のスプライトの状態をスナップショットとして保存します。 |
checkpoint_list | read | チェックポイントを一覧表示します。 |
checkpoint_get | read | 特定のチェックポイントの詳細を取得します。 |
checkpoint_restore | write | スプライトをチェックポイントの状態に復元します。 |
サービス
| Tool | Access | Description |
|---|---|---|
service_list | read | 設定済みのサービスとその状態を一覧表示します。 |
service_get | read | 特定のサービスの詳細を取得します。 |
service_create | write | サービス定義を作成または更新します。 |
service_start | write | サービスを起動します。 |
service_stop | write | 実行中のサービスを停止します。 |
service_logs | read | サービスのログをストリーミングします。 |
ネットワークポリシー
| Tool | Access | Description |
|---|---|---|
policy_network_get | read | 現在のアウトバウンドネットワークポリシーを取得します。 |
policy_network_update | write | アウトバウンドネットワークポリシーを更新します。 |
Parameters
共通:すべてのスプライト対象ツールには、sprite(文字列)— 対象となるスプライト名が必要です。
list_sprites—prefix(文字列、省略可能)、max_results(整数、省略可能)、continuation_token(文字列、省略可能)。create_sprite—name(文字列、必須)、wait_for_capacity(ブール値、省略可能)。destroy_sprite—name(文字列、必須)。exec—cmd(文字列、必須。コマンドと引数を指定するために繰り返し指定可能)、path(文字列、 省略可能)、stdin(ブール値、省略可能)、env(文字列KEY=VALUE、省略可能、繰り返し指定可能)、dir(文字列、省略可能)。exec_kill—session_id(文字列、必須)、signal(文字列、省略可能、デフォルトはSIGTERM)、timeout(文字列、省略可能、デフォルトは10s)。file_read—path(文字列、必須)、workingDir(文字列、必須)、encoding(文字列、省略可能。utf8(デフォルト)またはbase64。utf8は埋め込みテキスト リソースを返し、base64は埋め込みバイナリリソースを返します)。file_list—path(文字列、必須)、workingDir(文字列、必須)。file_write—path(文字列、必須)、workingDir(文字列、必須)、content(文字列、必須。utf8の場合はリテラルテキスト、base64の場合は Base64 エンコードされたバイト列)、encoding(文字列、省略可能。utf8(デフォルト)またはbase64)、mode(文字列、省略可能。8 進数形式、 例:0644)、mkdir(ブール値、省略可能 — 親ディレクトリを作成します)。file_copy—source(文字列、必須)、dest(文字列、必須)、workingDir(文字列、必須)、recursive(ブール値、必須)、preserveAttrs(ブール値、 必須)、asRoot(ブール値、必須)。file_rename—source(文字列、必須)、dest(文字列、必須)、workingDir(文字列、必須)、asRoot(ブール値、必須)。file_delete—path(文字列、必須)、workingDir(文字列、必須)、recursive(ブール値、必須)、asRoot(ブール値、必須)。checkpoint_create—comment(文字列、省略可能)。checkpoint_get—checkpoint_id(文字列、必須。例:v7)。checkpoint_restore—checkpoint_id(文字列、必須)。policy_network_update—rules(配列、必須。各ルールにはdomain、action、 および省略可能なincludeが含まれます)。service_get/service_start/service_stop/service_logs—service_name(文字列、必須)。service_start/service_stopでは省略可能なduration/timeoutを指定します。service_logsでは省略可能なlines(整数)とduration(文字列)を指定します。service_create—service_name(文字列、必須)、cmd(文字列、必須)、args(配列、省略可能)、needs(配列、省略可能)、http_port(整数、省略可能)、duration(文字列、省略可能)。
正式な最新ツールスキーマは、稼働中のサーバーから MCP の tools/list メソッドを通じて提供されます。
レジストリと検出
このサーバーは、公式 MCP レジストリに dev.sprites/mcp として公開されています。
レジストリを取り込むディレクトリ(Smithery、Glama、GitHub MCP registry など)では、自動的に登録されます。
マニフェストは server.json にあります。
このリポジトリについて
このリポジトリには、公開リスティングのメタデータとドキュメントのみが含まれています。MCP サーバーは
Sprites プラットフォームの一部として実装され、https://sprites.dev/mcp でリモート提供されています。
ここで実行するサーバーコードはありません。
ライセンス
MIT © Fly.io, Inc.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。