GUIDE

Deploy from Claude & Cursor — to your own server

Vibe-code an app with Claude Code or Cursor, then let the same agent ship it — over MCP — to infrastructure you own. Unlike hosted "chat-to-URL" services, your code and your model API keys never leave your box. AppCrane is the enterprise, self-hosted home for the apps your AI builds and your AI deploys.

Get AppCrane on GitHub ↗ Jump to the setup steps

The loop: build with your agent, deploy with your agent

The workflow people actually want from AI coding is a straight line: describe the app, watch the agent write it, and get a live URL — without babysitting a CI pipeline or clicking through a cloud console. Hosted tools deliver that line by running everything on their cloud. That's fine for a throwaway demo. It's a non-starter the moment the app touches customer data, internal APIs, or your model keys.

AppCrane keeps the same one-command feel but flips where it runs. Your agent talks to an AppCrane instance on your Ubuntu server through the Model Context Protocol. It creates the app, pushes the code the agent just wrote, deploys to a sandbox, and — when you say so — promotes to production with a zero-downtime swap. Every step is a normal MCP tool call, so the agent narrates exactly what it's doing and you approve as you go.

Why the secret hard-wall matters. AppCrane's middleware makes it physically impossible for the platform operator to read an app's env vars — even direct database access returns ciphertext. So when your agent sets ANTHROPIC_API_KEY or a database URL, that secret lives encrypted on your box and nowhere else. No vendor, no shared tenant, no support engineer can see it.

Set it up in five steps

  1. 1 · Install AppCrane

    On a fresh Ubuntu server you control, run the one-liner. It brings up Docker isolation, the Caddy reverse proxy with automatic HTTPS, and the AppCrane control plane.

    # on your Ubuntu server
    curl -fsSL https://raw.githubusercontent.com/gitayg/appCrane/main/install.sh | sudo bash
  2. 2 · Get your MCP key

    Sign in to your AppCrane dashboard and generate a per-user MCP API key. This key is what binds every agent action to you for the audit log — deploys, secret writes, and access changes are all recorded against the token that made them.

  3. 3 · Connect the agent over MCP

    Two ways to wire up Claude Code, Cursor, or any MCP client. The standalone connector proxies to your instance:

    # the standalone MCP connector — proxies to your AppCrane box
    APPCRANE_URL=https://your-server.example.com \
    APPCRANE_KEY=your_mcp_key \
    npx appcrane-mcp

    Or connect the client straight to the HTTP endpoint with a config block:

    {
      "mcpServers": {
        "appcrane": {
          "type": "http",
          "url": "https://your-server.example.com/api/mcp",
          "headers": { "X-API-Key": "your_mcp_key" }
        }
      }
    }

    Restart the client and it will list the 35 appcrane_* tools.

  4. 4 · Tell the agent to deploy to sandbox

    No new commands to learn — just ask:

    You: Deploy this app to AppCrane sandbox and give me the URL.

    The agent creates the app (or a managed repo if you don't want a GitHub account in the loop), pushes the code, runs the Nixpacks build for whatever language you wrote it in, and returns the live sandbox URL. Auto-HTTPS is already handled.

  5. 5 · Promote to production

    Kick the tires on the sandbox. When it's right:

    You: Looks good — promote it to production.

    The agent promotes the exact build you tested to the production environment with a zero-downtime deploy. Same artifact, no rebuild-drift, on your domain with TLS.

What you get that hosted tools can't give you

Your infra, your data

Runs in your VPC, on-prem, or an air-gapped-friendly box. Code and secrets stay put — nothing round-trips through a vendor cloud.

Keys that stay yours

The secret hard-wall means even the operator can't read app env vars. Your model API keys never leave your server.

Enterprise controls

SAML/OIDC/SCIM SSO, four-role RBAC, and per-user token-bound audit on every action — the compliance story a hosted demo tool doesn't have.

No lock-in

AGPL-3.0, one-command install, standard Docker + Caddy underneath. Leave whenever you want, take everything with you.

Frequently asked

Can Claude Code really deploy the app itself?

Yes. AppCrane exposes 35 appcrane_* MCP tools. The agent creates the app, pushes code, deploys to sandbox, and promotes to production in plain language — to a server you own.

Do my code and secrets leave my server?

No. AppCrane is self-hosted, and a middleware-enforced secret hard-wall keeps env vars encrypted and unreadable — even to the operator. Your keys stay on your infrastructure.

Is this a self-hosted AppDeploy alternative?

Yes — see the full AppCrane vs AppDeploy breakdown. Same agent-first deploy flow, but on your infrastructure with enterprise SSO, RBAC, and audit.

Which agents are supported?

Any MCP client: Claude Code, Cursor, Codex, and Claude Desktop, via npx appcrane-mcp or a direct HTTP config.

Ready to try it? Install on your own server and connect your agent in minutes.

Keep reading

AppCrane — self-hosted · open source · agent-native github.com/gitayg/appCrane ↗