Remote MCP Server
Sprites runs a hosted MCP server. Connect an MCP client to it and the client can control Sprites directly. It can create and manage them, run commands, inspect checkpoints, and change network policy through standard MCP tools.
Why use it? Your MCP client gets persistent, isolated Linux environments without you pasting API tokens into a prompt or running a local MCP bridge.
MCP server URL
Section titled “MCP server URL”Use this URL when adding the connector:
https://sprites.dev/mcpThe connector uses OAuth. During setup, you sign in with your Fly.io account, choose the organization the client should use, and approve the level of Sprites access for that connector.
Add the connector
Section titled “Add the connector”- Open your MCP client’s connector settings.
- Add a remote (or custom) MCP connector. Different clients label this differently. Look for “Remote MCP server”, “Custom connector”, or similar.
- Enter
https://sprites.dev/mcp. - Follow the browser authentication flow for Fly.io.
- Choose the Sprites organization the connector should use.
- Review the token restrictions on the consent screen and approve the connection.
If your client asks for a connector name, use Sprites.
Permissions
Section titled “Permissions”The default token is restricted. The connector can only create Sprites whose names start with mcp-, and it can only create a limited number of them.
You can change both on the consent screen: pick a different name prefix, raise or lower the cap, or switch to full access if you want the connector to act on the whole organization without those guardrails.
Full access lets the connector manage any Sprite the selected organization token can access. Use restricted mode unless your workflow needs broader control.
Available tools
Section titled “Available tools”MCP clients see Sprites as tools. There are two layers: organization-level tools that act across your Sprites, and Sprite-level tools that act inside a specific one.
Organization tools
Section titled “Organization tools”| Tool | Access | What it does |
|---|---|---|
list_sprites | Read-only | Lists Sprites visible to the authenticated organization and token policy. |
create_sprite | Destructive | Creates a Sprite in the selected organization. |
destroy_sprite | Destructive | Permanently destroys a Sprite. |
Sprite tools
Section titled “Sprite tools”The Sprite-level tools are generated from the public Sprite environment API. The exact list may change as new Sprite environment versions ship, but commonly includes:
| Category | Examples |
|---|---|
| Exec | Run a command, list exec sessions, kill a session |
| Checkpoints | Create, list, inspect, and restore checkpoints |
| Network policy | Read or update outbound network rules |
| Services | List, create, start, stop, and inspect background services |
| Service logs | Read recent service logs |
Tools are annotated as either read-only or destructive. Your MCP client may ask for additional confirmation before using destructive tools, depending on its settings.
Safety model
Section titled “Safety model”Sprites are isolated Linux environments. That isolation is useful for agent work, but MCP tools can still perform real actions in your organization.
destroy_spritepermanently deletes a Sprite and its data. There is no undo.- Command execution can modify files, install packages, start services, or use network access allowed by the Sprite policy.
- Checkpoint restore rewinds a Sprite to a previous filesystem state. Any work done since that checkpoint is gone.
- Network policy updates can allow or block outbound access from a Sprite.
For safer workflows, use a restricted OAuth token, pick a clear name prefix such as mcp-, and create a fresh Sprite for experiments.
Example requests
Section titled “Example requests”Create a Sprite named mcp-demo, run python --version, and tell me what runtime is installed.Create a checkpoint on mcp-demo before making changes. Then install ripgrep and verify rg --version.List my Sprites with the mcp- prefix and summarize which ones are running.Troubleshooting
Section titled “Troubleshooting”The client cannot connect
Section titled “The client cannot connect”Check that the connector URL is exactly:
https://sprites.dev/mcpThe MCP endpoint is not the REST API host. Do not use https://api.sprites.dev.
Authentication loops or fails
Section titled “Authentication loops or fails”Sign out of Fly.io in your browser, sign in again, and retry the connector flow. If you belong to multiple organizations, make sure you select the one that should own Sprites created through MCP.
A Sprite is not found
Section titled “A Sprite is not found”The Sprite may belong to a different organization, may be outside the token’s allowed name prefix, or may have been destroyed. Call list_sprites and verify the exact Sprite name.
A parameter is missing
Section titled “A parameter is missing”Some tools require an existing Sprite name, service name, checkpoint ID, or exec session ID. List the relevant resource first, then retry the tool call with the exact identifier.
A Sprite is starting
Section titled “A Sprite is starting”Cold Sprites can take a moment to wake. If the client receives a retry message, wait a few seconds and run the same tool again.
REST API reference
Section titled “REST API reference”The MCP server wraps the same Sprite capabilities documented in the Sprites API reference. Use the API reference when you want endpoint schemas, SDK examples, or direct REST access instead of MCP.