Handlify deploys the apps Claude builds for you — straight to Qiscus infrastructure. Ask in a Claude chat, or use this dashboard. No server to manage, no Git required, no ops queue.
Every app gets a live https://<id>.handlify.qiscus.io URL. You can gate who may open it
(private / your team / anyone), attach a custom domain, set env secrets, and redeploy — all from
chat or the dashboard.
You: build a countdown landing page for our Q3 hackathon with a signup form,
and deploy it.
Claude uses deploy_project under the hood and replies with the URL.
Iterate by asking for changes — it redeploys at the same URL.
The most common path. Claude writes the files and deploys them directly — no git repo needed.
Static sites (HTML/CSS/JS) or Node apps. If the app needs a database, a managed PostgreSQL is
provisioned and its DATABASE_URL injected automatically (credentials never shown).
Use the Project → Import a Git repository form, or ask Claude to import a repo URL.
Add an SSH deploy key (Settings → Deploy keys), put its public half as a read-only deploy key on the repo, then deploy the SSH URL. Multi-service repos deploy via docker-compose.
Open an app from Apps to manage it. From the dashboard you can:
Or from chat: get_app, get_logs, restart_app,
deploy_app, update_project, delete_project.
Control who can open an app's URL. Change it from the app's Access card, or from
chat with set_access / get_access. Changes take effect immediately — no
redeploy.
qiscus.com).@qiscus.com account.You: make gate-demo-b1c229 accessible only to andi@qiscus.com and me
On the app's Custom domain card: add a domain you own, point its DNS (a CNAME or A record)
at handlify.qiscus.io, click Check DNS, then Apply to this app. The app then serves
on your domain alongside the auto-generated one.
Beyond the Claude.ai connector (which uses Google sign-in), you can call this MCP from a CLI or script with a personal API key. Generate one in Settings → API keys, then point a client at the endpoint with a Bearer header:
claude mcp add --transport http qiscus-builder \ https://handlify.qiscus.io/mcp \ --header "Authorization: Bearer <your-key>"
[mcp_servers.qiscus-builder] command = "npx" args = ["-y", "mcp-remote", "https://handlify.qiscus.io/mcp", "--header", "Authorization: Bearer <your-key>"]
{
"mcpServers": {
"qiscus-builder": { "url": "https://handlify.qiscus.io/mcp", "headers": { "Authorization": "Bearer <your-key>" } }
}
}
Keys are scoped like the dashboard (only your own apps) and revocable anytime.
list_apps / get_app | List your apps / one app's details. |
get_logs / list_deployments_for_app | Container logs / deploy history. |
deploy_project | Deploy code Claude generated (static/node, optional DB). |
create_app_from_repo / deploy_private_repo | Deploy from a public / private git repo. |
update_project / deploy_app / restart_app | Redeploy / trigger / restart. |
get_access / set_access | Read / set who can open a URL. |
manage_secrets | Get the dashboard link to set env secrets out-of-band. |
delete_project | Delete an app (owner/admin). |
You only ever see and act on your own apps (admins see all). Roles are per-email.