Skip to main content
Hostwares

Deploy from Claude Code with Hostwares MCP

One command in your terminal. Then Claude Code can deploy the repo you are sitting in, read its logs, set its environment and attach your domain, with you approving anything that costs money.

1

Create an agent key

Sign up or log in, open Dashboard → API Keys, and create an agent key with the Coding agent preset. Paid and destructive actions stay off unless you turn them on.

2

Add the server

Claude Code

claude mcp add --transport http hostwares https://mcp.hostwares.com \
  --header "Authorization: Bearer hwk_your_key_here"

Check it with claude mcp list.

Cursor: ~/.cursor/mcp.json, or .cursor/mcp.json for one project

{
  "mcpServers": {
    "hostwares": {
      "url": "https://mcp.hostwares.com",
      "headers": {
        "Authorization": "Bearer hwk_your_key_here"
      }
    }
  }
}
A client that only runs local commands? Use the bridge instead +
{
  "mcpServers": {
    "hostwares": {
      "command": "npx",
      "args": [
        "-y",
        "hostwares-mcp"
      ],
      "env": {
        "HOSTWARES_API_KEY": "hwk_your_key_here"
      }
    }
  }
}

The bridge forwards to the same hosted server, so the tools are never stale.

3

Ask

  • > Deploy this repo to Hostwares as my-app
  • > Why is my-app returning 502? Check the logs
  • > Set DATABASE_URL on my-app and redeploy
  • > Point app.example.com at my-app
  • > Create a Postgres database for my-app

A deploy returns a price and an approval link; the build starts once the invoice is paid. Deleting data or erasing a machine asks for approval every time.

What the agent can do

Every tool below exists today for every client. Nothing here is a roadmap.

Sites and deploys

  • deploy - Order a site from a GitHub repo. Returns a price and an approval link.
  • create_upload - Deploy a folder that is not on GitHub.
  • list_sites - Your sites, their status and URL.
  • get_status - One site's status, including whether it is running.
  • get_site_config - Domain, port, repo, branch, build and start commands.
  • redeploy_site - Build again; the current version serves until the new one is ready.
  • restart_site - Restart a site.
  • stop_site - Take a site offline (asks for approval).
  • start_site - Start a stopped site.
  • deployment_history - Past deploys of a site.
  • instance_power - Start, stop or restart your Cloud Instance (stop asks for approval).

Logs and health

  • get_logs - Recent build and deploy logs.
  • diagnose_site - One check of logs, HTTP, the app and its database together.
  • verify_site_health - Waits until a site really serves traffic.
  • http_check - Status, timing, redirects and headers of any URL.
  • verify_ssl - A real TLS handshake against a domain.

Environment

  • list_env_vars - Variable names on a site. Values are never shown.
  • set_env - Set or change variables.

Domains

  • add_domain - Attach your domain. SSL is automatic.
  • get_domains - Domains on your sites.
  • get_domain_info - Expiry, nameservers and lock status of your registered domain.
  • dns_list_records - DNS records of your domain.
  • dns_create_record - Add or update a DNS record on your domain.
  • dns_delete_record - Delete a DNS record (asks for approval).

Email hosting

  • email_list_mailboxes - Mailboxes and disk use on your email hosting.
  • email_create_mailbox - Create a mailbox; the password is shown once.
  • email_dns_status - The MX, SPF, DKIM and DMARC records your mail domain needs.

Databases

  • create_database - Order PostgreSQL, MySQL, MariaDB, Redis or MongoDB. Asks for approval; set up once the invoice is paid.
  • list_databases - Your databases.
  • get_database_status - One database's status.
  • verify_db_connection - Checks that the database engine itself answers.
  • db_schema - PostgreSQL: tables, columns, indexes, constraints and roles.
  • db_query - PostgreSQL: one read-only SELECT. Never changes data.
  • db_execute - PostgreSQL: apply a change or migration in one transaction (asks for approval).
  • db_connection_info - PostgreSQL: health, and how your app connects. No host or password is shown.
  • db_create_app_role - PostgreSQL: a limited login for your app, never the admin user (asks for approval).
  • db_start - Start a stopped database.
  • db_restart - Restart a database.
  • db_stop - Stop a database (asks for approval).

Supabase instances

  • supabase_status - Which containers of your Supabase instance are up.
  • supabase_logs - Recent log lines of one Supabase service, secrets masked.
  • supabase_start - Start your Supabase instance.
  • supabase_restart - Restart your Supabase instance.
  • supabase_stop - Stop your Supabase instance (asks for approval).

Backups

  • create_backup - Take a database backup now (needs a backup pack on it).
  • list_backups - A database's backup pack and its recent backups.
  • list_vm_backups - Restore points of a site or database server.
  • request_vm_restore - Ask for a restore from one restore point.

Account

  • check_invoices - Invoices with their status and payment link.
  • whoami - Which account and access the key has.
  • get_action - Whether an approval is still waiting or done.
  • cancel_resource - Cancel a site or database at the end of its paid period (asks for approval).
  • delete_resource - Ask for a site, database or Supabase instance to be removed (asks for approval; our team removes it).

Questions

Does Claude Code need anything installed?+

No. The server is hosted at https://mcp.hostwares.com and the one-line command registers it. Clients that only run local commands use the npx bridge instead, which forwards to the same server.

Can the agent spend money without asking?+

No. Hosting is pay-first: a deploy or a new database creates an invoice and nothing is built until you pay it. Deleting data or erasing a machine returns an approval link every time.

What can the agent reach?+

Only your own account, and only what the key's preset allows. A read-only key can see status, logs and lists and change nothing.

Does this work in Cursor, VS Code and Windsurf?+

Yes. Each keeps the same URL and key in its own MCP config; the Cursor form is on this page and the others are on the connect guide.

Will new tools appear without reinstalling?+

Yes. The client fetches the tool list from the server when it connects, so a tool added server-side is available on the next session.