ShipStatic Docs llms.txt llms-full.txt

One URL. Your agent ships.

https://mcp.shipstatic.com

Drop that URL into any MCP client. Your agent can publish a static site in its next message. Free, no install, no signup, no API key. You get a live URL and a claim link. Open the claim link to keep the site; without it, the site stays up for 3 days.

Connect an account and the same URL answers with the rest: your list of sites, names and custom domains, and sites that never expire. Connecting is optional, and publishing without an account keeps working exactly as it does today.

Add it to your client

ChatGPT: add the ShipStatic plugin from its page in ChatGPT. There is nothing to paste.

Claude (desktop and web): open Settings, then Connectors, and add a custom connector with https://mcp.shipstatic.com.

Step by step for both: shipstatic.com/agents.

Claude Code

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

Cursor, Antigravity, Windsurf, n8n, Zed and anywhere else with mcp.json

{
  "mcpServers": {
    "shipstatic": {
      "url": "https://mcp.shipstatic.com"
    }
  }
}

OpenClaw

openclaw mcp add shipstatic --url https://mcp.shipstatic.com --transport streamable-http --auth oauth

Publishing works straight away. To connect your account later, run openclaw mcp login shipstatic.

Hermes: add this to ~/.hermes/config.yaml.

mcp_servers:
  shipstatic:
    url: https://mcp.shipstatic.com

Hermes connects with no account, so publishing works straight away. To keep sites in your account, publish with the CLI set up with your API Key.

VS Code: install the ShipStatic extension. The server is built in, with no config at all.

That's it. Your agent can ship.

What you can ask

Say any of these to your agent. No account needed:

"Publish this with ShipStatic."

"Publish this with ShipStatic's built-in password protection."

"Publish the new version with ShipStatic."

Saying "built-in" matters: your agent then uses ShipStatic's own password protection and does not write one itself.

Your agent calls deployments_upload and shows you:

✓ Live: https://happy-cat-abc1234.shipstatic.com
  Visit https://my.shipstatic.com/claim/... within 3 days to keep this deployment permanently.

Once you claim it, the deployment is yours and never expires.

Connect an account

Nothing to configure. Ask your agent for something that needs an account, like "show me my ShipStatic sites", and your client will offer to sign you in. Approve the permissions once and the whole toolset is available:

"Show me my ShipStatic sites."

"Give my site the name yourproject."

"Point www.yourname.com at my ShipStatic site."

"Show me the DNS records I need to set up."

"Point my domain at the previous version."

Connected deployments never expire, and you can pass a ttl when you want one that cleans itself up.

You can disconnect at any time from the same place in your client. Access is scoped and expires; it never includes creating API keys or deleting your account.

Tools

Fifteen tools, the same whichever way you connect. What changes is not which tools exist, but which ones answer.

Publishing, no account needed

Tool Description
deployments_upload Publish files as a new deployment (supports password)

Deployments, with an account

Tool Description
deployments_list List all deployments
deployments_get Show deployment details by hostname
deployments_set Update deployment labels
deployments_delete Delete a deployment permanently

Domains, with an account

Tool Description
domains_set Create a domain, link to deployment, or update labels
domains_list List all domains
domains_get Show domain details
domains_records Get required DNS records for a domain
domains_dns Look up the DNS provider for a domain (e.g. Cloudflare, Namecheap)
domains_share Get a shareable DNS setup link: anyone with it can view the records without an API key
domains_validate Check if a domain name is valid and available
domains_verify Trigger DNS verification after records are set
domains_delete Delete a domain permanently

Account, with an account

Tool Description
whoami Show current account info

Typical workflows

Publish with no account (nothing to set up):

  1. Agent calls deployments_upload with files
  2. Response has url (live now) and claim (visit to keep)
  3. Agent shows you both URLs

Custom domain (with an account):

  1. domains_validate to check availability
  2. domains_set to create or link
  3. domains_records to get DNS records and show them to you
  4. domains_dns to identify your DNS provider (optional)
  5. domains_verify after you set up DNS

Prefer to run it yourself?

The same fifteen tools also run as a local process, published as @shipstatic/mcp on npm. Use it when you would rather set a key once than sign in, or when your client does not speak OAuth yet. To publish a folder on your own machine, your agent uses the CLI instead: it reads the files from disk, and the hosted endpoint only receives files sent inline.

To add the local server:

claude mcp add shipstatic -e SHIP_TOKEN=ship-your-api-key -- npx -y @shipstatic/mcp

Or in any mcp.json:

{
  "mcpServers": {
    "shipstatic": {
      "command": "npx",
      "args": ["-y", "@shipstatic/mcp"],
      "env": {
        "SHIP_TOKEN": "ship-your-api-key"
      }
    }
  }
}

SHIP_TOKEN is optional and takes a free API Key. Without it, deploys are public with a claim link and expire in 3 days. With it, they go to your account and never expire: the same two states connecting gives you on the hosted endpoint.

NPM • GitHub • MCP Registry • Smithery • Glama

Agents that run shell commands

If your agent can run a terminal command, it does not need MCP at all. The CLI publishes with nothing installed and nothing configured:

npx @shipstatic/ship ./dist

Same platform, same publish with no account, same claim link. Many agents use this first because there is no client configuration to add. The Skill is a single file that teaches any agent to use it.