cubeship

MCP

The same API for an agent, authenticated with the same key. Two lines it deliberately does not cross.

https://your-instance/mcp is the same API for an agent, authenticated with the same key. Point Claude Code, Cursor or whatever you run at it:

mcp.json
{
  "mcpServers": {
    "cubeship": {
      "type": "http",
      "url": "https://cubeship.example.com/mcp",
      "headers": { "Authorization": "Bearer <your-api-key>" }
    }
  }
}

From there it can create a project, deploy an app, read the logs and how the last deploy ended, attach a database and set the variables — the work of the dashboard, without the dashboard. It is stateless on purpose: every call carries the key, so nothing an agent opened can be picked up by another.

Two lines are deliberately not crossed

No tool reads a secret, and no tool sets a container's ceiling. Those stay with a person, at the dashboard or the CLI.

What it does not do

Beyond the two lines above, no tool touches what a person should: no tool reads or sets a database's password or a credential, exposes a database or a store, reads a bucket's contents, writes DNS or firewall rules, adds or removes a machine, or manages users. Every tool that exists is in the tool reference.

What the key allows

An agent holds an API key, and a key has its owner's role. A member deploys published images; an admin also builds source on the host and configures the instance. Give an agent a member's key unless it has business doing the other thing.

On this page