request_humanYour agent says what is blocking it: captcha, 2fa_code, approve or login, plus one plain sentence.
When your agent hits a step it should not do alone, it calls request_human. Your person gets a one-tap link, solves the CAPTCHA in their own browser, pastes the code or taps approve, and the answer goes straight back to your agent. We never solve CAPTCHAs and never ask for passwords.
500 calls/day free · Pro $9/mo · codes read once, wiped in 10 min
How it works
request_humanYour agent says what is blocking it: captcha, 2fa_code, approve or login, plus one plain sentence.
one tapYour person opens the link, solves it on the real site or pastes the code. No account, no app, no password.
check_requestYour agent reads the answer (codes once only) or gets a signed callback, and the run continues.
Pricing
Free resets daily and is not a trial. Pro is $9 a month.
Watch-only mode. 500 calls a day: request_human logs a would_request for every step your agent gets stuck on, and weekly_report shows where (by kind and by site). Nothing is sent to anyone.
Acting: your person gets a one-tap link by webhook (Slack, Discord or any https URL) and/or email. 2FA codes are relayed encrypted, readable once for 10 minutes. HMAC-signed callbacks to your agent, 50,000 calls a day.
Worked example
Your agent books travel overnight and logs in to 3 airline sites; 2 of them ask for an SMS code. On free, request_human logs 2 would_request entries and Monday's weekly_report says your agent got stuck twice on 2fa_code. With Pro at $9/month, your phone buzzes with a Slack message, you tap the link, paste the 6-digit code, and your agent reads it once through check_request (then it is wiped) and finishes the booking instead of waiting for you to wake up.
For agents
Each result includes understood, job and a one-line outcome your agent can report back in plain words.
request_humanHand one blocked step to your human: a CAPTCHA, a 2FA/OTP code, an approval, or a sign-in your agent should not do alone. Pro acts: sends your person a one-tap link (to notify_webhook, Slack/Discord-compatible, and/or notify_email), returns request_id, and later an HMAC-signed POST to callback_url when they answer.
check_requestPoll a request: pending, done, approved, denied, code_ready, expired or cancelled. For 2fa_code, the code is returned exactly once (single read) and only within 10 minutes of the person sending it; then it is wiped.
cancel_requestCancel a pending request (for example your agent got past the step another way). The link stops working and any unread code is wiped.
weekly_reportPlain-English summary of the last 7 days: where your agent got stuck (by kind and by site), requests sent or that would have been, how many your person answered and how fast. Read-only; sends nothing.
usage_and_upgradeUsage today + upgrade link (not metered).
Connect
claude mcp add --transport http human-handoff https://relay.cloudforbots.com/mcp
MCP URL https://relay.cloudforbots.com/mcp
REST POST https://relay.cloudforbots.com/api/run/<tool>
Auth optional Authorization: Bearer <key>
Codex, ChatGPT, Grok Bot: add a remote MCP server with the URL above. Skill file: SKILL.md · catalog entry: tool.json
FAQ
Agents stall at CAPTCHAs, 2FA codes and "confirm it's you" steps, and then the run just waits or fails. The relay hands that one step to your person with a one-tap link and gets the answer straight back to your agent.
No. Your person solves the CAPTCHA themselves, in their own browser, on the real site. We only pass the message and tell your agent when they are done.
No. There is no password field anywhere. For sign-ins your person logs in themselves and taps done. We never ask for, accept or store passwords.
Your person pastes the code on the one-tap page. It is stored encrypted, your agent can read it exactly once with check_request, and it is wiped after that read or after 10 minutes, whichever comes first. Callbacks never contain the code.
Pro posts to the notify_webhook you pass (Slack and Discord incoming webhooks work, or any https URL) and/or emails notify_email. The message has one link; no account or app is needed.
Poll check_request with the request_id, or pass callback_url and we POST the answer signed with X-Relay-Signature, a hex HMAC-SHA256 of timestamp + "." + body using the callback_secret returned at request time.
The free plan logs every step your agent would have handed to a person as would_request and builds a weekly report of where it got stuck, by kind and by site. Nothing is sent to anyone. It is not a trial.
Sends the requests, relays 2FA codes (single read, 10-minute TTL), approvals and done taps, posts HMAC-signed callbacks, and allows 50,000 calls a day.
No. Bring your own model. The relay only moves one message to your person and one answer back.
Free: watch-only, 500 calls a day. Pro is $9 a month, or $90 for a year. It is also included in the Cloud for Bots All Access bundle.