When to use it
- An agent is doing the work: you would rather not leave the conversation to ship what it just wrote.
- You want the deploy in the loop: the agent reads the build result and can fix what broke without you relaying it.
- Nothing to install: your agent runs the server with
npxon demand.
These are not exclusive. Connect GitHub later and every
push redeploys; use folder upload when you just want to
drag a directory into the dashboard once. An app deployed over MCP can be
connected to a repository afterwards without losing anything.
Set it up
1
Create an application and an API key
Create the application in the dashboard, then create an API key for it.The key identifies the application, so you never pass an application id:
one key, one app.
2
Add the server to your agent
3
Ask it to deploy
Start a new session so your agent picks up the server, then say deploy
this. It calls
deploy, gets a task id back, and polls
deployment_status until the application is live.The tools
Deploys are asynchronous.
deploy returns immediately with a taskId, and your
agent polls deployment_status until it reads succeeded or failed. A small
static site is usually live in about thirty seconds.
Warnings and hazards in the
deployment_status response are structured data,
meant to be read out to you. A deploy can succeed and still tell you something
worth acting on.What happens to your .env
A.env in the project directory is uploaded, on purpose. Its values go
into the encrypted secret store, and the file itself is then dropped from the
build, so you do not retype nine API keys you already have on disk.
Move the file before deploying if that is not what you want. See
secrets for how values are stored, and
environment variables for how they reach
your application.
What is excluded automatically
Limits
These are checked on your machine before anything uploads, so going over one
costs you an error rather than a transfer.
Configuration
Compared to the other ways in
API reference
The MCP server is a thin client over the HTTP API. Anything it can do, a
script can do with
curl.