Prototype · Preview: every server in the official registry, synced every 30 minutes. Sign in with Google to write reviews.
PopNx MCPMCP servers for people who use AI · explained in plain words

ParallelSandbox

by parallel-sandboxversion 1.0.20i★ 0iComputer or cloud
Registry namecom.parallelsandbox/parallelsandbox

How to install

What it does

Remote Linux boxes for coding agents: Docker, a browser, screenshots, logs, human takeover.

  • Connects Computer or cloud
  • Account or key Cloud: Needs Authorization · Local: Needs PARALLELSANDBOX_API_KEY
  • Category Developer tools

Install

Pick the AI app you use, then copy the settings.

Passed 5/5 checks · What you ask goes through the maker’s server (mcp.parallelsandbox.com)

First: which AI do you use?

Pick your app and the steps appear below.

Works with Claude · about 5 min

You need a ParallelSandbox key (create it on the maker’s site) · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1 · on Team/Enterprise an Owner adds it

  1. Sign up and create a ParallelSandbox key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    Open the ParallelSandbox site ↗

  2. Open Claude’s Connectors page

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  3. Click “+ Add” → “Add custom connector” and fill in these 2 fields

    Copy each value into the field with the same name in Claude, then click Continue

    Name · NameParallelSandbox
    Remote MCP server URL · Addresshttps://mcp.parallelsandbox.com/mcp

    Under Request headers, add this name and value

    Header nameAuthorization
    ValueBearer <paste your key here>

    Paste the key only into the app’s field, never into a chat or to anyone

    Leave Authentication as Claude detected it, then click Add

  4. Turn it on in a chat

    +ConnectorsParallelSandbox

  5. Try it

    Use ParallelSandbox and tell me what you can do for me, then show me one thing

    ✓ If Claude says it is using ParallelSandbox or shows a ParallelSandbox tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

ChatGPT cannot connect ParallelSandbox yet

ParallelSandbox needs your own key to connect, but OpenAI’s help page only describes OAuth sign-in; there is no key option we could verify

What you can do instead

A · Use an app that can connect ParallelSandbox

  • You need a ParallelSandbox key (create it on the maker’s site) · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1 · on Team/Enterprise an Owner adds it
  • You need a ParallelSandbox key (create it on the maker’s site)
  • You need a ParallelSandbox key (create it on the maker’s site)
  • You need a ParallelSandbox key (create it on the maker’s site)

B · Others in Developer tools that work with ChatGPT

Picked from the most used in the same category, only ones that connect by address with no key

Works with Claude Code · about 5 min

You need a ParallelSandbox key (create it on the maker’s site)

  1. Sign up and create a ParallelSandbox key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    Open the ParallelSandbox site ↗

  2. Open Terminal

    Mac: press Command+Space and type Terminal · Windows: open PowerShell

  3. Paste this command and press Enter

    claude mcp add --transport http --scope user parallelsandbox https://mcp.parallelsandbox.com/mcp --header 'Authorization: Bearer your-value'

    Replace “your-value” with your key before pressing Enter

    Paste the key only into the app’s field, never into a chat or to anyone

  4. Type /mcp in Claude Code

    You should see ParallelSandbox listed as connected

  5. Try it

    Use ParallelSandbox and tell me what you can do for me, then show me one thing

    ✓ If Claude Code says it is using ParallelSandbox or shows a ParallelSandbox tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Cursor · about 5 min

You need a ParallelSandbox key (create it on the maker’s site)

  1. Sign up and create a ParallelSandbox key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    Open the ParallelSandbox site ↗

  2. Click this button to open Cursor

    Open in Cursor

    Cursor asks you to confirm; click Install

  3. Fill in your key

    In the ParallelSandbox settings, Authorization is empty; add your key and save

    Paste the key only into the app’s field, never into a chat or to anyone

  4. Open the AI chat in Cursor in Agent mode

  5. Try it

    Use ParallelSandbox and tell me what you can do for me, then show me one thing

    ✓ If Cursor says it is using ParallelSandbox or shows a ParallelSandbox tool in the answer, you are connected

Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with VS Code · about 5 min

You need a ParallelSandbox key (create it on the maker’s site)

  1. Sign up and create a ParallelSandbox key

    Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.

    Open the ParallelSandbox site ↗

  2. Click this button to open VS Code

    Open in VS Code

    VS Code asks you to confirm; click Install

  3. Fill in your key

    In the ParallelSandbox settings, Authorization is empty; add your key and save

    Paste the key only into the app’s field, never into a chat or to anyone

  4. Open the AI chat in VS Code in Agent mode

  5. Try it

    Use ParallelSandbox and tell me what you can do for me, then show me one thing

    ✓ If VS Code says it is using ParallelSandbox or shows a ParallelSandbox tool in the answer, you are connected

Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.

See every app that uses MCP →

Address for apps that connect over the web

Addresshttps://mcp.parallelsandbox.com/mcp

JSON settings are under “For developers” below

Stuck? Ask people who use ParallelSandbox💬 Discussion →
For developers: Terminal commands and JSON settings

Over the web

Claude Code

claude mcp add --transport http --scope user parallelsandbox https://mcp.parallelsandbox.com/mcp --header 'Authorization: Bearer your-value'

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "parallelsandbox": {
      "url": "https://mcp.parallelsandbox.com/mcp",
      "headers": {
        "Authorization": "Bearer your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "parallelsandbox": {
      "type": "http",
      "url": "https://mcp.parallelsandbox.com/mcp",
      "headers": {
        "Authorization": "Bearer your-value"
      }
    }
  }
}

Installed on your computer

Claude Code

claude mcp add --scope user parallelsandbox --env PARALLELSANDBOX_API_KEY=your-value --env PSBX_TOOL_TIMEOUT_SEC=your-value -- npx -y parallelsandbox-mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "parallelsandbox": {
      "command": "npx",
      "args": [
        "-y",
        "parallelsandbox-mcp"
      ],
      "env": {
        "PARALLELSANDBOX_API_KEY": "your-value",
        "PSBX_TOOL_TIMEOUT_SEC": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "parallelsandbox": {
      "command": "npx",
      "args": [
        "-y",
        "parallelsandbox-mcp"
      ],
      "env": {
        "PARALLELSANDBOX_API_KEY": "your-value",
        "PSBX_TOOL_TIMEOUT_SEC": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "parallelsandbox": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "parallelsandbox-mcp"
      ],
      "env": {
        "PARALLELSANDBOX_API_KEY": "your-value",
        "PSBX_TOOL_TIMEOUT_SEC": "your-value"
      }
    }
  }
}

Values you fill in

  • PARALLELSANDBOX_API_KEY secret env
    Optional existing psbx_ API key; without it the adapter opens OAuth sign-in
  • PSBX_TOOL_TIMEOUT_SEC env
    Configured MCP host absolute tool timeout in seconds (default 60 gives a safe 25-second review wait; set both the host timeout and this value to 1920 for a 30-minute wait). Requires adapter restart.
  • Authorization secret required HTTP header
    Bearer psbx_ API key from app.parallelsandbox.com (Account → API keys)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

At a glance

Downloads per weeki
615/wk
Verified domain
✓ parallelsandbox.com
Connection
Computer or cloud
Transport
stdio, streamable-http
Latest versioni
1.0.20
Published to registryi
Nov 6, 2026
Code last changedi
Nov 6, 2026
Maker
parallel-sandbox
Packages
npm: parallelsandbox-mcp
Registry status
Active

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Connect over the internet in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

Run on your computer in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

All apps, with pros and cons →

Related guides

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 12, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain parallelsandbox.com (the registry checks domain ownership)

  • ✓ Pass

    Still maintained

    Code last changed 6 days ago

  • ✓ Pass

    Has a licence

    Uses MIT

  • ✓ Pass

    Endpoint responds

    Responded in 770 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Discussion

Ask, share a tip or report that it does not work. Sorted by what people marked helpful.

No posts yet. Be the first to ask or share.

Posts here are written by users, not the PopNx team.

Sign in with Google to post

User reviews

No reviews yet

Sign in with Google to write a review

Compared with others in Developer toolsi

  • More stars than 0% of the other 5811 servers in this category
  • Published to the registry more recently than 75% of the other 5811 servers in this category
  • Basic checks equal to or better than 100% of the other 5811 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is ParallelSandbox safe?

It passed 5 of 5 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: Authorization, PARALLELSANDBOX_API_KEY

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed 6 days ago, and the latest version (1.0.20) reached the registry 6 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT Business and above.

What can I use instead?

In the same category: REA, GitHub, Serena MCP: the IDE for your agent

Others in the same category

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

REA

Reverse engineer anything from your terminal or agent with one CLI and MCP server.

by morlutoWidely used↓ 388.7K/wk★ 453.3KUpdated today

Runs on your computer

GitHub

GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.

by githubWidely used★ 34.4KUpdated 9 days ago

Computer or cloud

Serena MCP: the IDE for your agent

A powerful toolkit for coding, providing semantic retrieval and editing capabilities.

by oraiosWidely used↓ 35.2K/wk★ 31.3KUpdated 6 months ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

parallelsandbox-mcp

stdio adapter for the ParallelSandbox MCP server. It exposes the same tools as https://mcp.parallelsandbox.com/mcp (sandbox_*, logs_*), signing in with OAuth, and implements sandbox_sync and sandbox_pull locally: an agent can upload its working directory into a box without committing, and write files from the box back to its machine. Version 0.4.0 and later opens the browser to sign in and allow the connection. No API key is needed.

Use

npx -y parallelsandbox-mcp

Claude Code:

claude mcp add parallelsandbox -- npx -y parallelsandbox-mcp

Any other MCP client: run the command above as a stdio server.

The first connection starts immediately, then opens the browser for OAuth. Until sign-in finishes, the parallelsandbox_connect tool returns the sign-in link. Afterwards the adapter announces its sandbox and log tools; clients that do not reload tool lists need to reconnect once. Call parallelsandbox_connect again to check status or retry a cancelled sign-in. Sign-in waits five minutes before a retry is needed.

The token file lives in ~/.parallelsandbox, separately for each MCP endpoint, with mode 0600. Multiple conversations share this sign-in and serialize refreshes with a file lock. A lost refresh response requires a new sign-in so a used refresh token is never replayed. Existing PARALLELSANDBOX_API_KEY configurations continue to work.

If you never need sandbox_sync or sandbox_pull, skip this package and connect directly over HTTP, signing in with OAuth (run /mcp in Claude Code afterwards; no key needed). Over plain HTTP those two tools return an error, because they read and write files on your machine:

claude mcp add --transport http parallelsandbox https://mcp.parallelsandbox.com/mcp

Environment

VariableDefaultPurpose
PARALLELSANDBOX_API_KEYunsetOptional existing API key; skips OAuth
PARALLELSANDBOX_AUTH_DIR~/.parallelsandboxOAuth token files and locks
PARALLELSANDBOX_NO_BROWSERunsetSet to 1 to get the sign-in link without opening a browser
PARALLELSANDBOX_MCP_URLhttps://mcp.parallelsandbox.com/mcpMCP endpoint
PARALLELSANDBOX_API_URLhttps://api.parallelsandbox.comREST base used by sandbox_sync
PSBX_TOOL_TIMEOUT_SEC60The MCP host’s configured absolute tool deadline in seconds; used to declare a safe review wait (default 25 seconds, maximum 1800)
PSBX_ADAPTER_SILENCE_MS75000How long a call's connection may stay silent before the adapter gives up on it (see Timeouts)
PSBX_FEEDBACK_HOSTunsetDevelopment feedback bridge: claude-code or codex; ordinary MCP connections remain unchanged
PSBX_CODEX_CLIhost codex processAbsolute codex executable used for codex queue feedback delivery (and for an explicitly paired App Server)
PSBX_FEEDBACK_DIR~/.cache/parallelsandbox/feedbackFeedback tickets, mailboxes and relay state
PSBX_HOOK_HOLD_SEC1200How long Cursor's and Gemini CLI's end-of-turn hook waits right after a review is requested
PSBX_CODEX_HOST_SOCKETunsetAbsolute path to that existing App Server's private control socket; Desktop IPC is unsupported
PSBX_CODEX_FEEDBACK_DIR~/.cache/parallelsandbox/codex-feedbackPrivate binding tickets shared by the Codex hook and adapter

When using a dev endpoint, set both PARALLELSANDBOX_MCP_URL and PARALLELSANDBOX_API_URL to its dev addresses.

sandbox_sync

{"id": " ", "localPath": "/abs/path/to/repo", "dest": "repo"} syncs localPath into /work/ on the box. dest is relative to /work (repo, not /work/repo; a leading /work/ is dropped and any other absolute path is refused before anything is uploaded). Pass an absolute path: a relative one resolves against this adapter's working directory (where your MCP client started it), which is not necessarily the agent's. In a git working tree it takes the tracked files plus the untracked files .gitignore does not exclude, asks the box which of them differ from what is already in dest, and uploads only those, so syncing after an edit sends just that edit. A file changed inside the box counts as different and gets the local version back, unless an "exclude" glob covers it (["capacitor.config.ts", "renderer/dist-win"]: such paths are neither sent nor compared, and the box's copy is never listed as stale or pruned). Outside git, and with commit, it compares and sends only the differences the same way; outside git it takes every file except node_modules, .git, dist, build, coverage, .venv and similar. No .git is sent.

A sync that would send more than 100 MB (size on disk) sends nothing and lists the largest folders; raise the limit with "maxMB" when that size is expected. "dryRun": true compares with the box and reports what would be sent without sending or deleting anything. While it runs, the adapter reports progress every 10 seconds (hashing, comparing, megabytes uploaded) to clients that ask for progress. An upload that fails with fetch failed, a reset connection or HTTP 502/504 is sent once more, and notes says so; one where nothing moves for two minutes, or the box does not answer within ten minutes of receiving everything, fails with a message naming that step.

The result says what happened: sentPaths (the first 50 files sent; sentFiles is the count), changedOnBox (files the box actually rewrote), remotePath, and in a working tree uncommitted, the paths that differ from HEAD. If other sessions share the checkout, those may be their unfinished work: pass "commit": "HEAD" with "alsoPaths" listing your own files instead. commit takes any revision and fails if it does not exist. Without commit, alsoPaths sends only those paths.

Files deleted or renamed locally stay in the box and are listed in staleInDest, leaving out paths your ignore rules skip (node_modules, build output, .env). "prune": true deletes them. A single file in localPath lands at dest itself ("dest": "renderer/.env" writes /work/renderer/.env), unless dest ends in / or is already a folder in the box.

node_modules is never sent, so notes (and deps) say when a folder with a package-lock.json, pnpm-lock.yaml or yarn.lock has no node_modules in the box, or, for npm, one whose installed packages differ from the lockfile, with the command to run there. On the first sync into a dest, notes also lists build settings the ignore rules kept out (tsconfig.json, .env.local) and says how to send them, and a gradlew, mvnw or *.sh script starting with #! that lacks the executable bit is pointed out whenever it is sent.

Submodules: without commit, an initialized submodule goes over as a plain directory, everything on disk in it. git archive leaves them out, so with commit pass "submodules": true to add each initialized submodule at the commit the tree records. "baseline": "origin/main" sends that commit to -baseline as well, so a failing test can be run on both sides to see whether it was already failing; each node_modules in dest is copied into the baseline as hard links where it has none ("baselineDeps": false skips that), leaving out Vite's cache so the two trees do not share one. When a sync fails, nothing new reached the box; the next sandbox_exec on that box carries a reminder.

sandbox_pull

{"id": " ", "path": " ", "localPath": "/abs/path/on/your/machine"} downloads a file or a directory from the box. A file is written to localPath. A directory's contents are extracted straight into localPath, the reverse of sandbox_sync: path app/dist with localPath /abs/dist gives /abs/dist/index.html, not /abs/dist/dist/index.html (versions before 0.3.3 added that extra level). The result gives files, the number of files written, and paths, the first 50 of them. Pass "extract": false to keep the tar.gz as one file instead; it holds the directory itself as its top entry. Relative paths resolve the same way as for sandbox_sync; dest is accepted as another name for localPath. Only the local copy stays: the hand-off copy on ParallelSandbox's side is deleted after about a day.

Extracting merges into what is already in localPath. "clean": true makes it exactly the box's directory instead: the archive is unpacked next to it first and swapped in only when that succeeds, and the result's removed counts the local files that went. clean is refused for a git checkout, your home directory, the adapter's working directory and their parents. Files the box was still writing while it packed the directory are listed in changedWhileReading. The download reports progress, gives up after two minutes without data, and fetches a fresh link once when the first is refused.

Which conversation is using a box

Ordinary MCP connections choose a random id when the adapter starts and send it as X-Psbx-Agent on every call. Registered native sessions keep one supervisor-owned id across all turns; the supervisor maintains its presence until it stops. After the first tool call it is reported once a minute, and when its conversation closes (stdin ends, or SIGTERM, SIGINT or SIGHUP) it reports /v1/agents/ /leave. With the feedback relay below, the relay sends one /v1/agents/heartbeat a minute for every live adapter of the account on that machine (each adapter keeps a small presence file with its id and process); otherwise each adapter reports /v1/agents/ /heartbeat itself. The app uses this to tell a box the AI is still working in from one whose conversation was closed without sandbox_review or sandbox_stop; a conversation killed outright (no leave) counts as gone three minutes after its last heartbeat. Nothing else is sent: no prompt, no transcript. Restarting the client starts a new adapter with a new id, so a box the conversation used before the restart shows agent.state left until it is used again; the restarted conversation can simply continue with it.

Timeouts

sandbox_takeover blocks until a person hands the box back, up to 30 minutes. sandbox_review immediately creates the person's review card, then waits for their report or completion within the caller’s declared budget. The default adapter and unknown HTTP clients wait up to 25 seconds; explicitly supported clients can wait up to 30 minutes. An explicit waitSec is capped by that budget and the time spent preparing the review. The result includes the effective waitSec and callerWaitMaxSec. Its progress includes the review ID and entry URL before the final result. Use waitSec: 0 for an explicit handoff without waiting, or resume a timed-out round with reviewId instead of creating another card with what. The adapter waits 31 minutes for takeover and review, and 65 minutes for other calls (a foreground sandbox_exec runs at most 60 minutes). Cancelling a client call also cancels its control connection; it does not delete the review or feedback. Each foreground sandbox_exec carries an execId the adapter picks. If its result is lost on the way back (no data for 75 seconds, or the stream ends without it), the command keeps running on the box, and the error names sandbox_procs {action: "wait", bgId: }, which returns its exit code and the end of its output once it ends. The adapter also checks the server's tool list every 10 minutes and sends notifications/tools/list_changed when it changed, so a long conversation does not keep using an old schema. The waiting-tool route lasts for that active call. Registered native sessions use the supervisor below to continue after a turn exits.

Continue after the AI finishes

parallelsandbox-agent runs a persistent supervisor for a registered native Claude Code, Codex or Gemini CLI session. The first prompt and

Only the beginning is shown; read the rest in the repo