Two of the three tools need no auth at all, so an agent can connect with no credentials, call `provision_api_key`, and start asking — no signup page, no approval queue. The design detail that matters more day to day is the long-poll: 20 seconds, then a pending response with both a URL for the human and one for the agent, so nothing blocks indefinitely waiting for someone to look. The README is also clear about when not to use it — deterministic, verifiable or easily reversible work should not go to a person.
A hosted human-in-the-loop service. When an agent reaches a call it should not make alone — a deploy, a delete, a judgement about taste — it posts a title, optional context and two to four labelled choices. A person is shown the request, picks one, and the agent gets back the selected id and label. The same backing API is reachable over REST and from a browser SDK.
- `ask_human` submits a decision and long-polls for up to 20 seconds; if nobody has answered by then it returns `pending` with a `review_url` for the human and a `poll_url` for the agent
- `provision_api_key` mints a token with no auth, so a fresh client can bootstrap itself
- `get_service_status` reports availability and escalation guidance, also with no auth
- Requests carry optional context: `content_type` as text, markdown, HTML or an image, plus `confidence`, `consequence_of_wrong_choice`, `recommended_option` and `decision_reason`
- `timeout_seconds` defaults to 3600 and goes up to 86400
- A `callback_url` webhook, which must be HTTPS and host-allowlisted, signed with `X-HITL-Timestamp` and `X-HITL-Signature`
- Key provisioning is rate-limited to 5 keys per email
Nothing to install — it is a remote server at `https://meatspace.run/api/mcp` over Streamable HTTP. `get_service_status` and `provision_api_key` need no credentials, so a client can connect cold and mint its own token; `ask_human` then needs that token as a Bearer header. Registered as version 0.2.0 in the MCP registry. The obvious dependency is a human: if nobody opens the review URL, the call times out and returns pending.
One command — npx -y mcp-remote https://meatspace.run/api/mcp
