# Viberooster Hatch MCP server

Source: https://glimind.com/server/mcp-registry%2Fcom.viberooster%2Fhatch
Registry id: `mcp-registry/com.viberooster/hatch`
Status: live (checked 2026-10-27T07:03:31.426Z)

## Measurements (30 days)

- Uptime: 99.9%
- Checks: 2020
- Outages (90 days): 0

## Install

```json
{
  "mcpServers": {
    "viberooster-hatch-mcp-server": {
      "type": "http",
      "url": "https://mcp.theroost.dev/mcp"
    }
  }
}
```

Claude Code:

```sh
claude mcp add --transport http viberooster-hatch-mcp-server https://mcp.theroost.dev/mcp
```

## Tools (25)

- `alarm`: Sound a loud alarm on the phones paired to this roost. Pass `hatchId` and a short `message` — the phone shows that message and repeats the alarm until the perso
- `auth`: Put a sign-in screen in front of any roost so visitors must authenticate. Works on free, workspace, and forever hatches. Pass `hatchId` plus an `action`: • `ena
- `await_decision`: Create a human-in-the-loop review on the live artifact. Default options: Approve / Request changes / Reject. Reviewers see a Review required chip → modal. Reque
- `catalog`: List VibeRooster features the user can pay for (Pin $4.99/yr, Pack $4.99/yr/GB, Roost $259/mo, Roost Audit $459/mo, custom domain +$29/mo) with Stripe Price ids
- `checkout`: Create a Stripe Checkout Session so the user can pay for a VibeRooster feature in this chat. Returns `{ checkoutUrl, sessionId, grant, amountCents }` — ALWAYS s
- `continue_decision`: After poll_decision returns status changes_requested, regenerate, then call this to reopen the same decision as pending_review for the next human round. Only de
- `convert`: Atomically rename a roost's URL, change gallery listing, mark or unmark Promo, or bind a custom domain (Roost / Roost Audit after checkout grant custom_domain).
- `deploy`: Replace the server-side code of an existing roost. Advanced — most agents should use `upload` (for static files) or `convert` (for renames) instead. Pass `hatch
- `get_pairing_code`: Issue a pairing code + URL (TTL 10 minutes) for claiming a hatch (`hatchId`) or authorizing an agent session in a workspace (workspaceId). Reuses the active pen
- `hatch`: Create a NEW site (a 'roost') and return its public URL in one call. Returns `{ hatchId, slug, url, apex, promo, uploads? }` — show `url` to the user and rememb
- `list`: List every hatch in a workspace. Returns `{ workspaceId, name, count, hatches: [{ hatchId, slug, url, apex, kind, tier, state, expiresAt, createdAt, promo, page
- `list_templates`: List HTML templates and explorable archetypes from the public template catalog (https://github.com/VibeRooster/hatch-mcp/tree/main/templates). Returns `{ repo, 
- `lookup`: Resolve a roost by `slug` or `hatchId`. Returns a compact view `{ hatchId, slug, url, apex, tier, state, expiresAt, customDomain, galleryListed, promo, pageview
- `poll_approval`: Poll a pending Tier-2 phone approval. Returns the result once the owner approves or denies on their phone.
- `poll_checkout`: Long-poll a Checkout Session from `checkout` (~18s). Returns `{ status: open|complete|expired, grantApplied, roostUrl, tier }`. If still `open`, tell the user t
- `poll_decision`: Long-poll (~20s) until the decision leaves pending_review. Only decisionId is required (hatchId is read from the decision). Returns changes_requested (regenerat
- `poll_pairing`: Poll for pairing completion (Device-Grant style). Waits up to ~20s for phone approval before returning. Statuses: pending / completed / expired / not_found. On 
- `publish_site`: Publishes a live website from provided content, ephemeral or permanent.
- `refresh_session`: Renew a short-lived access token (~1h) using the refreshToken from poll_pairing. The grant (and refresh capability) lasts up to 7 days — after that, re-pair via
- `rename_org`: Rename the organization and/or workspace after Roost or Roost Audit has been paid. Pass `orgName`, `workspaceName`, or both. Requires a workspace-paired session
- `share`: Issue a signed, expiring guest view URL for any tier (`?vt=…`). Use for private run reports without the shared site password. Returns `{ url, viewToken, expires
- `squawk_poll_access`: Poll an admit request opened by squawk_request_access. Uses the same Hatch pairing session. While pending, returns `{ status: "pending", expiresAt }`. After the
- `squawk_request_access`: Ask the roost owner to admit this agent to Squawk. Uses the caller's Hatch pairing session (Authorization: Roost, the bound connector session, or sessionToken f
- `upload`: Add or replace files on an EXISTING roost. Pass `hatchId` plus a `manifest` listing each file's path, size, and optional content type. Returns one presigned PUT
- `whoami`: Return the caller's current identity and hatch state. Never errors when unidentified — returns a pairing path instead. After poll_pairing completes, whoami with

Measured by Glimind (https://glimind.com): MCP handshake + tool list only, no tool is ever called. CC BY 4.0.
