Moonshift in your coding agent.
Every coding agent can write code. Moonshift MCP is how it ships. Connect Claude Code, Cursor, or any MCP client and give it tools to build, deploy, check, and iterate on real apps, without leaving the editor.
What it is
A remote, hosted Model Context Protocol server at https://moonshift.io/api/mcp. The consumer is another agent, not a person: the exact sibling of the CLI, a new entrypoint to the same platform. The agent writes the code; Moonshift provisions, deploys, verifies, and hands back a live URL and a repo you own.
Connect
Claude Code:
claude mcp add --transport http moonshift https://moonshift.io/api/mcp \
--header "Authorization: Bearer msk_your_token"Any other MCP client connects the same way: point it at the URL over Streamable HTTP and send your token as an Authorization: Bearer header. There is nothing to install, no package, and no binary.
Authentication
The endpoint is authenticated by the Moonshift platform. It accepts the same per-user token the CLI uses: a msk_ key, validated on every request and revocable at any time. Without a valid token the server returns 401 and exposes nothing, not even the tool list.
Create the token by signing in once with the CLI. It is written to ~/.moonshift/config.json; copy it from there into the header above.
moonshift loginTools
moonshift_whoamiConfirm the authenticated Moonshift account. Call it first to check the connection is authorized.
moonshift_shipBuild AND deploy an app from one prompt. Returns a runId right away; the run takes 5-40 minutes, so poll moonshift_status.
moonshift_statusGet a run's status by id. Once it's ready, this returns the deployed URL.
moonshift_iterateChange an existing run: describe the edit and get a new version of the same app, with a new runId to poll.
A typical loop: moonshift_ship returns a runId, then the agent polls moonshift_status until the deployed URL appears, then calls moonshift_iterate to refine it.
Safety rails
The caller is an autonomous agent, not a person at a keyboard, so shipping is bounded by default:
moonshift_ship runs in approval mode, so nothing publishes until you approve it. Pass autonomous: true to override.
Every run sets a maximum spend, defaulting to $5 and hard-clamped to $25, so a looping agent cannot drain your account.
Security and source
The server is remote and hosted. Nothing runs on your machine and nothing is downloaded, so there is no source or source map to inspect. Your client sends JSON-RPC and receives JSON-RPC; that is the entire visible surface.
Each tool is a thin proxy that forwards your own token to the Moonshift API, so every action is authorized and metered as you. The MCP layer grants no capability you did not already have, and holds no product logic of its own.
Troubleshooting
- 401 Unauthorized.The token is missing, wrong, or revoked. Re-run moonshift login and copy the fresh msk_ token into your client's Authorization header.
- Tools don't appear.MCP servers load when the client starts. Restart the client (or the session) after adding the server.
- A ship never finishes.Runs take 5-40 minutes. Keep polling moonshift_status; the deployed URL appears when it completes.
- Nothing publishes.That is the default. Ship runs in approval mode; approve the run, or pass autonomous: true.
Give your agent hands.
Connect once, then let your agent ship real, deployed apps from inside the editor.
Prefer a terminal? The CLI