hostsmith avatar

Mcp Server

hostsmith/mcp-server

Connects Claude to Hostsmith's hosting platform so agents can deploy static sites and get back live HTTPS URLs without touching a repo or CI pipeline. Exposes site CRUD, domain management, account queries, and two deployment paths: inline file upload for small artifacts or a chunked upload flow for binaries. Authentication is OAuth only, no static tokens. Supports EU and US data residency with partition selection baked into the tool calls. Ships as stdio for most editors, remote streamable HTTP for Claude Desktop and Cursor, or self-hosted HTTP if you want to run it locally. Built for the workflow where an agent generates an HTML report or demo page and you want it live in seconds.

tools
9
transport
STDIO, HTTP
env vars
3
last updated
Nov 12, 2026

Tools

9 tools

Public tool metadata for what this MCP can expose to an agent.

list_sitesList Hostsmith sites in the user's account. Returns each site's `siteId`, `subdomain`, `domain`, and current status - feed `siteId` into `get_site`, `deploy_files`, `deploy_create_upload`, or `delete_site`. This is the source of truth for "does the user already have a site at...1 params

List Hostsmith sites in the user's account. Returns each site's `siteId`, `subdomain`, `domain`, and current status - feed `siteId` into `get_site`, `deploy_files`, `deploy_create_upload`, or `delete_site`. This is the source of truth for "does the user already have a site at...

Parameters* required
partitionstring
Filter by data partition. Omit to query all partitions.one of us · eu
list_domainsList domains the user can host sites under. Returns shared hosting domains (e.g. `hostsmith.link`, available to everyone) and custom domains owned by the user's organization. Use this to pick a `domain` value before calling `create_site`. By default queries all partitions and...2 params

List domains the user can host sites under. Returns shared hosting domains (e.g. `hostsmith.link`, available to everyone) and custom domains owned by the user's organization. Use this to pick a `domain` value before calling `create_site`. By default queries all partitions and...

Parameters* required
partitionstring
Filter by data partition. Omit to query all partitions.one of us · eu
sharedboolean
Filter by domain type: true for shared only, false for custom only. Omit for both.
get_accountGet the user's account: organization details (`orgId`, `orgName`), the calling user's home partition under `user.homePartition`, current subscription plan with its limits (max sites, max domains, storage, bandwidth), and current usage counts. Use to check how much headroom the...

Get the user's account: organization details (`orgId`, `orgName`), the calling user's home partition under `user.homePartition`, current subscription plan with its limits (max sites, max domains, storage, bandwidth), and current usage counts. Use to check how much headroom the...

No parameter schema in public metadata yet.

get_siteGet full details of a specific Hostsmith site by ID, including its public URL (`https://<subdomain>.<domain>`), current deployment status, and configuration. Use after `list_sites` to inspect a single site, or after `deploy_files` / `deploy_finalize` to confirm the site is liv...2 params

Get full details of a specific Hostsmith site by ID, including its public URL (`https://<subdomain>.<domain>`), current deployment status, and configuration. Use after `list_sites` to inspect a single site, or after `deploy_files` / `deploy_finalize` to confirm the site is liv...

Parameters* required
partitionstring
Data partition the site lives in (visible in list_sites output). Omit to use the user's home partition.one of us · eu
siteIdstring
The site ID returned by `list_sites` or `create_site`.
create_siteCreate a new Hostsmith site and return its `siteId`, full URL, and configuration. Use when the user wants to publish or host new content and no suitable site already exists. After creation, deploy content with `deploy_files` (small inline text) or `deploy_create_upload` + `dep...3 params

Create a new Hostsmith site and return its `siteId`, full URL, and configuration. Use when the user wants to publish or host new content and no suitable site already exists. After creation, deploy content with `deploy_files` (small inline text) or `deploy_create_upload` + `dep...

Parameters* required
domainstring
Parent domain for the site, MUST be one returned by `list_domains` for this user. Examples: "us.hostsmith.link", "eu.hostsmith.link", or a custom domain the user owns. Do not invent domains.
partitionstring
Data partition for the new site. Must match the partition of the selected domain.one of us · eu
subdomainstring
Subdomain prefix; auto-generated if omitted. Lowercase alphanumeric with hyphens only - no dots, uppercase, or underscores. Pass `subdomain: "www"` only when the chosen `domain` has `enableApexDoma...
delete_sitePermanently delete a Hostsmith site and all of its deployed files. **Destructive - only call after explicit user confirmation.** The site URL becomes unreachable immediately and the content cannot be recovered. The user must pass `confirm: true` for the deletion to proceed; ot...3 params

Permanently delete a Hostsmith site and all of its deployed files. **Destructive - only call after explicit user confirmation.** The site URL becomes unreachable immediately and the content cannot be recovered. The user must pass `confirm: true` for the deletion to proceed; ot...

Parameters* required
confirmboolean
Set to true only after the user has explicitly confirmed they want to permanently delete this site. Required safeguard - never pass true speculatively.
partitionstring
Data partition the site lives in. Omit to use the user's home partition.one of us · eu
siteIdstring
The site ID to delete (from `list_sites` or `get_site`).
deploy_filesPublish in-memory file contents to a Hostsmith site without writing to disk. Use when you have just generated content (an HTML page, a report, JSON data) and the user wants it live. Returns the deployment version and status; call `get_site` afterwards if you need the public UR...3 params

Publish in-memory file contents to a Hostsmith site without writing to disk. Use when you have just generated content (an HTML page, a report, JSON data) and the user wants it live. Returns the deployment version and status; call `get_site` afterwards if you need the public UR...

Parameters* required
filesarray
Files to deploy. For an HTML site, include an `index.html` as the entry point; otherwise any single file (PDF, image, JSON, etc.) works on its own.
partitionstring
Data partition the site lives in. Omit to use the user's home partition.one of us · eu
siteIdstring
The site ID to deploy to (from `list_sites` or `create_site`).
deploy_create_uploadStart a direct-to-S3 upload for binary or large files. Use this instead of `deploy_files` for binaries (PDF, image, video, zip) or any file > ~1 MB. The MCP server has no access to the user's filesystem and `deploy_files` ships content inline through Lambda (capped at ~6 MB JS...3 params

Start a direct-to-S3 upload for binary or large files. Use this instead of `deploy_files` for binaries (PDF, image, video, zip) or any file > ~1 MB. The MCP server has no access to the user's filesystem and `deploy_files` ships content inline through Lambda (capped at ~6 MB JS...

Parameters* required
filesarray
Files to upload. Most user requests are a single file.
partitionstring
Data partition the site lives in. Omit to use the user's home partition.one of us · eu
siteIdstring
The site ID to deploy to (from `list_sites` or `create_site`).
deploy_finalizeCommit a deploy started with `deploy_create_upload`. Pass the `versionId` from the start response and a `completions` array containing the agent-collected ETags for each multi-part file (single-part uploads - those whose start response had an empty `uploadId` - do not need a c...4 params

Commit a deploy started with `deploy_create_upload`. Pass the `versionId` from the start response and a `completions` array containing the agent-collected ETags for each multi-part file (single-part uploads - those whose start response had an empty `uploadId` - do not need a c...

Parameters* required
completionsarray
Completions for multi-part uploads. Omit or pass an empty array if every file was single-part.
partitionstring
Data partition the site lives in. Omit to use the user's home partition.one of us · eu
siteIdstring
The site ID being deployed to (must match the start call).
versionIdstring
The `versionId` returned by `deploy_create_upload`.

Sponsors

Configuration

HOSTSMITH_URLdefault: https://hostsmith.net

Hostsmith app URL (OAuth endpoints).

HOSTSMITH_API_DOMAIN

Override the upstream API domain across both partitions; 'us.api.' and 'eu.api.' are prepended to this value.

HOSTSMITH_BASE_URL

Override the API base URL with a single fixed value, bypassing partition selection entirely.

Readme

@hostsmith/mcp-server

CI Latest Release Node Version License: MIT MCP

Hostsmith MCP connector – tool definition quality and endpoint health on Glama Hostsmith MCP on mcprush

Official Model Context Protocol server for the Hostsmith hosting platform.


View the full README on GitHub

Details

Repository
github.com/hostsmith/mcp-server
Website
hostsmith.net/docs/mcp/quick-start
Package
@hostsmith/mcp-server
Transport
STDIO, HTTP
Registry
MCP registry, active