BoxCompute’s remote MCP server lets an AI app create Linux VMs in your account, run commands in them, read and edit their files, and open preview URLs for servers they run.
https://mcp.boxcompute.ai/mcpYou need a BoxCompute account with credit. New customers can join the early-access waitlist.
Connect an app
Apps that support MCP sign-in need only the URL. The first time the app connects, it opens a BoxCompute page in your browser that names the app and what it will be able to do. Choose Allow access to connect it, or Cancel to refuse.
- In Claude, open Settings → Connectors.
- Choose Add custom connector, name it BoxCompute, and enter
https://mcp.boxcompute.ai/mcp. - Choose Connect and sign in to BoxCompute when asked.
The connector is then available in Claude on the web, Claude Desktop and the Claude mobile apps.
claude mcp add --transport http boxcompute https://mcp.boxcompute.ai/mcpThen run /mcp in Claude Code, select boxcompute and choose Authenticate.
Add a remote (Streamable HTTP) server with the URL https://mcp.boxcompute.ai/mcp. A client that
supports MCP authorization signs you in through the browser. For one that does not, use an
API key.
What an app can do
The sign-in page lists what you grant:
| Permission | Tools |
|---|---|
| See your VMs and their files | account_get, workspace_list, sandbox_list, sandbox_get, file_read, file_list |
| Create, start and stop VMs | sandbox_create, sandbox_start, sandbox_stop |
| Run commands and change files in your VMs | command_run, process_start, process_get, process_output, process_cancel, file_write, file_edit, preview_create |
| Delete VMs and their disks | sandbox_delete |
| See your credit balance | the balance in account_get |
Allowing access creates an API key named after the app, such as MCP · Claude, on your API keys page. The app acts as that key: its requests appear in your API activity and the VMs it creates are attributed to it. Revoke the key to disconnect the app. Connecting again asks you to allow it again.
Use an API key instead
Every client can authenticate with a BoxCompute API key in the Authorization
header. The key’s scopes decide which tools the client is offered.
claude mcp add --transport http boxcompute https://mcp.boxcompute.ai/mcp \
--header "Authorization: Bearer $BOXCOMPUTE_API_KEY"For Cursor (~/.cursor/mcp.json) and similar clients:
{
"mcpServers": {
"boxcompute": {
"url": "https://mcp.boxcompute.ai/mcp",
"headers": { "Authorization": "Bearer ${env:BOXCOMPUTE_API_KEY}" }
}
}
}VS Code uses the same entry in .vscode/mcp.json, under servers instead of mcpServers.
Keep the key in an environment variable or secret store, not in a file you commit.
Tools
| Tool | What it does |
|---|---|
account_get |
The account and key in use, and the credit balance when allowed |
workspace_list |
Workspaces in the account |
sandbox_list, sandbox_get |
VMs with their state, compute size, root-disk size when known, and network access |
sandbox_create |
Create and start a VM: small (0.5 vCPU, 1 GiB) or large (1.5 vCPU, 3 GiB), with or without internet; default 30 GiB root disk holding the OS and /workspace |
sandbox_start, sandbox_stop |
Start a stopped VM, or stop one now and keep its files |
sandbox_delete |
Permanently delete a VM and its /workspace |
command_run |
Run a shell command and wait up to 60 seconds |
process_start, process_get, process_output, process_cancel |
Run a command in the background for up to 15 minutes, check on it and read its output |
file_read, file_list |
Read a file or list a directory under /workspace |
file_write, file_edit |
Write a file (up to 2 MiB) or replace text in one |
preview_create |
A public HTTPS URL, valid for one hour, for a port a server in the VM listens on |
sandbox_create accepts optional disk_gib, a whole number from 10 to 30, defaulting to 30.
Below 30 requires early access; other accounts receive INVALID_REQUEST. The disk is fixed for
the VM’s lifetime and counts in full against account storage even when stopped. sandbox_list
and sandbox_get return disk_gib: null for older VMs whose disk size was not recorded.
Do not infer those disks’ sizes from today’s default.
Each tool is marked read-only or not, and destructive or not, so your app can ask before it stops,
deletes or changes anything. These annotations describe the requested operation, not a guarantee
that compute stays stopped: file_read and file_list can start a stopped VM and incur compute
charges, even though they do not change its files. sandbox_list and sandbox_get never start it.
Limits
- Every call answers within about 75 seconds. A VM that is still booting returns
ready: falsefromsandbox_createorsandbox_start, and the boot continues; commands and file tools on it say it is still starting, and can be called again a few seconds later. - Commands longer than 60 seconds belong in
process_start. - Files are confined to
/workspace.file_readdefaults to 64 KiB and allows up to 256 KiB per part; passnext_offsetand the returned cursor to continue. Binary data is base64.file_listdefaults to 200 entries and allows up to 500 per page; pass its cursor to continue. command_runoutput is capped at 48 KiB per stream.process_startretains up to 1 MiB per stream;process_outputreads up to 48 KiB at a time. Passnext_offsetback to continue;earliest_offsetidentifies output already discarded.- A preview URL is public: anyone with it can reach that port until it expires.
- Account limits on running and total VMs apply as they do in the app and the HTTP API.
Errors carry the same codes as the HTTP API, such as INSUFFICIENT_CREDIT or NOT_FOUND, with a
message the app can act on.
Privacy and support
The app receives the output of the tools it calls, such as command output and file contents, and handles it under its own terms. BoxCompute records each request in your API activity without the tool’s arguments. See the privacy policy.
For help, email [email protected]. Do not include API keys or passwords in your message.