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.
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.
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.
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
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.
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.
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.
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.
Runs in your VPC, on-prem, or an air-gapped-friendly box. Code and secrets stay put — nothing round-trips through a vendor cloud.
The secret hard-wall means even the operator can't read app env vars. Your model API keys never leave your server.
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.
AGPL-3.0, one-command install, standard Docker + Caddy underneath. Leave whenever you want, take everything with you.
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.
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.
Yes — see the full AppCrane vs AppDeploy breakdown. Same agent-first deploy flow, but on your infrastructure with enterprise SSO, RBAC, and audit.
Any MCP client: Claude Code, Cursor, Codex, and Claude Desktop, via npx appcrane-mcp or a direct HTTP config.