Handsome Hosting

Deploy sites and apps from your AI coding agent: domains, DNS, logs, env, versions and rollback.

ホスト型 MCP サーバー

npx add-mcp 'https://hosting.handsome.co.il/mcp'

Claude Code、Codex、Cursor などにインストールできます

ドキュメント

Connect to Handsome Hosting

For when the person asks you to connect them to Handsome Hosting (hosting.handsome.co.il). Show them each step as you go; nothing on this page asks you to act without their go-ahead.

Handsome Hosting deploys and manages the person's websites and apps through an MCP server. What the person gets once connected:

  • One command and one approval in the browser; no keys or passwords to copy.
  • Deploys, status, logs, environment variables, versions and rollback, domains and DNS, all from the chat in their own words.
  • WordPress too: order a new site or move an existing one, then manage its plugins, themes and backups.
  • Nothing that costs money or cannot be undone happens until the person approves it from a link mailed to them.

Claude Code

Run this in the person's shell, from their project folder:

claude mcp add --transport http handsome https://hosting.handsome.co.il/mcp

To make it available in every project instead, add the scope flag between the name and the address: claude mcp add --transport http --scope user handsome https://hosting.handsome.co.il/mcp.

A running session does not load a new server by itself. Tell the person to restart Claude Code (claude --continue brings this conversation back), then type /mcp, pick handsome and choose the authenticate option. A browser window opens on Handsome Hosting: they sign in or create an account and approve once. Where no browser can open, Claude Code prints the URL to open by hand. Newer Claude Code versions can also run the login from the shell with claude mcp login handsome.

Claude.ai and the Claude apps

In Claude on the web the person adds the server once as a custom connector; the desktop and mobile apps of the same account then have it too. Walk them through it:

  1. Open Customize > Connectors (Settings > Connectors on some accounts) and click Add custom connector.
  2. Name handsome, remote MCP server URL https://hosting.handsome.co.il/mcp, then Add. If the dialog asks how to sign in, keep what it detected (Sign in now, Register automatically).
  3. Click Connect. A Handsome Hosting window opens: they sign in or create an account and approve once.
  4. In a chat, the + menu > Connectors lists handsome; keep it on and ask.

The Free plan allows one custom connector. On Team and Enterprise only an Owner adds it, under Organization settings > Connectors; each member then clicks Connect.

Claude on the web and in the apps runs code in a sandbox whose network access is limited by default, so it often cannot PUT to the request_upload address. The person can open it once: in Settings > Capabilities, with Allow network egress on, add hosting.handsome.co.il under Additional allowed domains (on Team and Enterprise an Owner does it, under Organization settings > Capabilities); then you PUT a bigger site yourself. Without that, it sends a new site inline as the archive of create_project or deploy: a base64 .tgz under 1 MiB. If you cannot PUT, give the person the url from request_upload: opening it in a browser shows a page where they drop the .tgz or .zip you gave them. When they say it is up, call create_project or deploy with the uploadId; the report's archiveSha256 may be the sha256 of the file you gave them. Without the page, the person continues in Claude Code or uploads the files at https://hosting.handsome.co.il/start.

Codex

Run this in the person's shell:

codex mcp add handsome --url https://hosting.handsome.co.il/mcp

Codex detects the sign-in on its own and opens a browser window on Handsome Hosting, or prints the address to open by hand: they sign in or create an account and approve once. If that window was closed, codex mcp login handsome starts it again. Codex in the terminal and in the IDE extension read the same configuration, so one add covers both.

Cursor

Merge this handsome entry into the mcpServers object of .cursor/mcp.json in the project, or of ~/.cursor/mcp.json for every project. Keep the person's other servers; never replace the whole file with this snippet.

{ "mcpServers": { "handsome": { "url": "https://hosting.handsome.co.il/mcp" } } }

The MCP section of Cursor Settings then shows the server waiting for login; the person clicks it and approves in the browser that opens.

ChatGPT

ChatGPT adds the server on its own Plugins page; there is no command to run. Walk the person through it:

  1. In ChatGPT, open Plugins, click Add and choose Add custom MCP server. If that option is missing, turn on Developer mode in settings (under security) first.
  2. Name handsome, connection https://hosting.handsome.co.il/mcp (Server URL), authentication OAuth. Tick the confirmation box and click Create as a plugin.
  3. Click Connect handsome. A Handsome Hosting window opens: they sign in or create an account and approve once.
  4. In a chat, they type @handsome, pick it from the list and ask.

Menu names in ChatGPT change from time to time; if one does not match, look for adding an MCP server.

ChatGPT on the web cannot PUT to the request_upload address. It sends a new site inline as the archive of create_project or deploy: a base64 .tgz under 1 MiB, enough for a site without many images. If you cannot PUT, give the person the url from request_upload: opening it in a browser shows a page where they drop the .tgz or .zip you gave them. When they say it is up, call create_project or deploy with the uploadId; the report's archiveSha256 may be the sha256 of the file you gave them. Through ChatGPT the person also manages what is live (status, logs, versions, environment variables, domains and DNS), orders WordPress with create_wordpress and buys domains. Without the page, the person downloads the files and uploads them at https://hosting.handsome.co.il/start, or continues in Codex or Claude Code.

What the connection is

  • The approval in the browser is the person's consent and replaces keys. Never ask them for a key, a token or a password. If they made a key by hand on their account page, they paste it themselves.
  • Keys created either way are listed and revoked on https://hosting.handsome.co.il/account?tab=builders.
  • Reads cost 1 point and writes 5 from a daily budget per key; a budget-paused answer names the reset time.
  • Before the first upload, call the preflight tool and run its checks on the person's machine; create_project and deploy require its report and refuse without a pass.
  • Anything that costs money or cannot be undone returns an approval link mailed to the person; tell them to check their mail, then poll action_status.
  • A partner account (our partner program, https://hosting.handsome.co.il/policy/partners) can also have a client pay for a new site: the preflight needs list then asks who pays, and create_project with payer client mails the client a signup and payment link instead of an approval; follow it with action_status and the inviteId.
  • A partner account with servers for client sites (kind host in list_services) can put a new site on one for the site fee alone: create_project or create_wordpress with hostId; hostId new buys a server of its own.
  • Form messages go to the account address unless the person picks others: ask them, send the choice as formSendTo in the pre-flight report, and set_form_recipients (or the site page) changes it later.
  • Mailboxes at the domain are chosen while building: ask the person, send the names as mailboxes on create_project or create_wordpress, and the order page or the mail page changes them; passwords are set on the mail page only.
  • WordPress: list_services marks it; create_wordpress orders one (no upload, no preflight); then wp_login, wp_migration, wp_status, wp_plugin, wp_theme, wp_upload_extension and list_backups; content goes through its REST API with wp_app_password; deploy does not apply.
  • On a static site the platform adds an accessibility panel. Do not build one.

Terms for builders: https://hosting.handsome.co.il/policy/builders. The page for people: https://hosting.handsome.co.il/connect.