ReachHQ ships a Model Context Protocol server so AI assistants like Claude and ChatGPT can operate your workspace in natural language. It exposes 94 tools over Streamable HTTP, each gated by the same scopes as the REST API.
| URL (prod) | https://api.reachhq.io/mcp |
| URL (QA) | https://api.qa.reachhq.io/mcp |
| Transport | Streamable HTTP (HTTP POST) |
| Server | reachhq v1.0.0 |
Connect in one of two ways; both resolve to the same (workspace, scopes) principal:
Authorization: Bearer rhq_live_… with each request. Best for your own scripts and headless clients.401 with a WWW-Authenticate header pointing at /.well-known/oauth-protected-resource; the client discovers the authorization server, the user consents to scopes in the browser, and the issued token is sent as a bearer token.In a host that supports remote MCP connectors (Claude.ai and Claude Desktop › Settings › Connectors › Add custom connector; ChatGPT custom connectors), add the URL below. The OAuth flow runs in your browser and you approve the scopes:
https://api.reachhq.io/mcp
For a programmatic MCP client that authenticates with an API key, point it at the Streamable HTTP endpoint:
{
"mcpServers": {
"reachhq": {
"type": "http",
"url": "https://api.reachhq.io/mcp",
"headers": { "Authorization": "Bearer rhq_live_xxx" }
}
}
}The endpoint speaks JSON-RPC 2.0. You can call a tool over plain HTTP; include an Accept header that allows text/event-stream for Streamable HTTP:
curl -X POST https://api.reachhq.io/mcp \
-H "Authorization: Bearer rhq_live_xxx" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/call",
"params": { "name": "campaigns_list", "arguments": { "pageSize": 10 } } }'All 94 tools, grouped by domain. Scope is the minimum scope to see the tool; tools that bundle multiple actions re-check a write scope per action. You only see the tools your credential is scoped for.
| Tool | Scope | Description |
|---|---|---|
campaigns_list | campaigns:read | List campaigns in the workspace. |
campaigns_get | campaigns:read | Get a campaign with its sequence, steps, and metrics. |
campaigns_create | campaigns:write | Create a campaign (returns a default sequence). |
campaign_update | campaigns:write | Update a campaign's basics (name, goal, type, client). |
campaign_duplicate | campaigns:write | Duplicate a campaign (audience starts empty). |
campaign_archive | campaigns:write | Archive a campaign. |
campaign_validate | campaigns:read | Validate a campaign for launch readiness (dry-run). |
campaign_settings_get | campaigns:read | Get a campaign's sending settings. |
campaign_settings_update | campaigns:write | Update a campaign's sending settings. |
campaign_sequence_get | campaigns:read | Get a sequence with steps and A/B variants. |
campaign_sequence_update | campaigns:write | Update a sequence (set mode, replace, reorder). |
campaign_sequence_preview | campaigns:read | Preview a rendered email against a lead's fields. |
campaign_control | campaigns:launch | Launch, pause, or resume sending. sends email sensitive |
campaign_test_send | campaigns:launch | Send a single [TEST] email to an address. sends email sensitive |
| Tool | Scope | Description |
|---|---|---|
recipients_list | recipients:read | List a campaign's recipients, or their stats. |
recipients_manage | recipients:write | Add, import, refresh, remove, or set an outcome. |
| Tool | Scope | Description |
|---|---|---|
leads_search | leads:read | Search leads with rich filters. |
leads_get | leads:read | Get a lead with lists, history, and note count. |
leads_create | leads:write | Create a lead. |
leads_manage | leads:write | Update, delete, bulk-tag, or add/delete notes. |
leads_import | leads:write | Import from rows (dry-run + commit) or a Google Sheet. |
leads_export | leads:read | Export the workspace's leads as CSV. |
leads_activity | leads:read | Read a lead's activity, notes, or the tag catalogue. |
leads_suppress | leads:suppress | Suppress / unsuppress leads. sensitive |
| Tool | Scope | Description |
|---|---|---|
block_list | block_list:read | List, add, or remove block-list entries. sensitive |
lead_lists | lead_lists:read | List/preview lists; create, edit, delete, manage members. |
custom_fields | custom_fields:read | List fields & variables; create, reorder, edit, delete. |
| Tool | Scope | Description |
|---|---|---|
deals | deals:read | List deals; create or delete a deal. |
| Tool | Scope | Description |
|---|---|---|
mailboxes_list | mailboxes:read | List connected mailboxes with health, or get one. |
mailboxes_manage | mailboxes:write | Update settings/tags, bulk-update, pause, resume. |
mailboxes_tracking_domain | mailboxes:write | Set, verify, or detach a tracking domain. |
mailboxes_verify_dns | mailboxes:read | Check verification status; resend or skip. |
mailboxes_connect | mailboxes:connect | Connect a sending mailbox (SMTP/IMAP or OAuth). sensitive |
mailboxes_disconnect | mailboxes:connect | Disconnect or permanently delete a mailbox. sensitive |
mailboxes_import | mailboxes:connect | Bulk-import mailboxes from CSV (test, job, poll). sensitive |
| Tool | Scope | Description |
|---|---|---|
warmup_list | warmup:read | Read warmup: enrolments, heatmap, reputation, bounces. |
warmup_manage | warmup:write | Start/pause/stop, configure, onboard, bulk-action. |
warmup_pools | warmup:read | Read warmup pools; create/delete or set participation. |
| Tool | Scope | Description |
|---|---|---|
inbox_threads_list | inbox:read | List inbox reply threads with filters. |
inbox_thread_get | inbox:read | Get a thread with its full message history. |
inbox_summary | inbox:read | Inbox counts, category facets, and unread total. |
inbox_thread_manage | inbox:write | Archive, read, or star a thread (no send). |
inbox_message_categorize | inbox:write | Set a manual reply category on a message. |
inbox_draft | inbox:read | Get, save, or delete a thread's reply draft. |
inbox_scheduled | inbox:read | List scheduled replies; cancel a pending one. |
inbox_attachment_download | inbox:read | Get inbound attachment metadata for a thread. |
inbox_reply_send | inbox:send | Send an immediate reply. Requires an idempotency key. sends email sensitive |
inbox_reply_schedule | inbox:send | Schedule a reply for later delivery. sends email sensitive |
| Tool | Scope | Description |
|---|---|---|
agent_settings | inbox:read | Get / update a campaign's AI inbox-agent settings. |
agent_models_list | inbox:read | List the agent's available LLM models, by provider. |
agent_approvals | inbox:read | List the agent's reply approval queue, or facets. |
agent_approval_action | inbox:write | Approve, reject, or bulk-action agent replies. |
agent_calendar | inbox:read | Read or connect the agent's booking calendar. |
| Tool | Scope | Description |
|---|---|---|
deliverability_overview | deliverability:read | Overview, score, history, correlation, timeline. |
deliverability_domains | deliverability:read | Sending domains with auth/health; trigger DNS check. |
deliverability_mailboxes | deliverability:read | Mailbox health and Microsoft message-trace; sync. |
deliverability_alerts | deliverability:read | List alerts; ack/snooze/resolve. |
deliverability_recommendations | deliverability:read | List recommendations; dismiss/resolve. |
deliverability_placement_tests | deliverability:read | Inbox-placement tests and limits; create/cancel. |
deliverability_postmaster | deliverability:read | Google Postmaster status; connect/verify. |
deliverability_settings | deliverability:read | Workspace deliverability settings; update. |
| Tool | Scope | Description |
|---|---|---|
verification_jobs | verification:read | Jobs: list, results, preview-count; create/cancel/retry. |
verification_usage | verification:read | Verification usage and aggregate stats. |
verification_schedules | verification:read | Recurring schedules; create/update/delete. |
verification_settings | verification:read | Workspace verification settings; update. |
verification_export | verification:read | Export a job's results as CSV or XLSX. |
| Tool | Scope | Description |
|---|---|---|
webhooks_manage | webhooks:read | List subscriptions; create, test, delete. |
webhooks_dlq | webhooks:read | List dead-lettered deliveries; requeue. |
| Tool | Scope | Description |
|---|---|---|
crm_connections | crm:read | List connected CRMs (HubSpot, Salesforce, Pipedrive). |
crm_connect | crm:write | Connect (OAuth) or disconnect a CRM. sensitive |
crm_segments | crm:read | List segments available on a connected CRM. |
crm_import | crm:write | Import a CRM segment as campaign recipients. |
| Tool | Scope | Description |
|---|---|---|
analytics_report | analytics:read | Analytics: timeseries, report, breakdown, attribution. |
analytics_report_links | analytics:read | List, create, or revoke shareable report links. |
| Tool | Scope | Description |
|---|---|---|
account_get | account:read | Get the calling identity, plan, and workspaces. |
workspaces_list | account:read | List all workspaces the identity can access. |
workspace_get | workspace:read | Read settings, credits, branding, domains. |
workspace_create | workspace:write | Create a new workspace. |
workspace_manage | workspace:write | Update workspace settings and/or branding. sensitive |
workspace_tracking_domain | workspace:read | Manage the workspace tracking domain. |
workspace_portal_domain | workspace:read | Manage the white-label portal domain. |
| Tool | Scope | Description |
|---|---|---|
members | members:read | List members; invite, change role, remove. sensitive |
invites | members:read | List, create, resend, or revoke invites. sensitive |
| Tool | Scope | Description |
|---|---|---|
billing_status | billing:read | Subscription, plan, trial, seats, usage, invoices. sensitive |
billing_checkout | billing:write | Stripe billing actions (plan, seats, top-ups, portal). sensitive |
| Tool | Scope | Description |
|---|---|---|
agency_workspaces | agency:read | List client workspaces you own or administer. |
| Tool | Scope | Description |
|---|---|---|
lead_search_browse | lead_search:browse | Search external B2B people. No credits. |
lead_search_reveal | lead_search:reveal | Reveal a result's email/phone and save it. sensitive |
lead_search_reveal_bulk | lead_search:reveal | Async bulk reveal up to 200 results. sensitive |
lead_search_reveal_status | lead_search:reveal | Poll an async bulk reveal's progress. |
lead_search_companies | lead_search:browse | Search external B2B companies. No credits. |
lead_search_lists | lead_search:lists | List saved prospect lists. |
lead_search_create_list | lead_search:lists | Create a prospect list. |
lead_search_add_to_list | lead_search:lists | Add search results to a prospect list. |