Generic bridge to the full MCP tool catalog
ONE generic endpoint over the entire tool catalog (94 tools) rather than one path per tool. Every tool ALSO has its own literal /api/v1/actions/<toolName> path (see below), each carrying that tool’s real generated request body schema and description. A compact per-tool index (scope, daily cap plus its resolved bucket key, confirm behaviour) is ALSO machine-readable in this SAME document, under the top-level x-mcp-actions key, keyed by tool name. The request body is passed through verbatim as that tool’s arguments; a completed tool response is wrapped as { data: <tool result> } under HTTP 200 (billing/cap/confirm outcomes for the called tool are embedded inside data by MCP convention, not remapped to HTTP statuses here). Authentication, request-shape, and optional idempotency-protocol failures still use their documented non-200 statuses. Reaching this route only requires the 'read' scope; the CALLED tool’s own required scope is enforced separately: a tool that exists but is out of the key’s reach is a 403, a tool name that does not exist at all is a 404. sendReply via this bridge keeps its two-step preview-then-confirm flow by default, exactly as it works over MCP (which is unconditional). The one exception: a REST key minted with auto_confirm:true executes sendReply on the first call instead, like every other auto-confirm-eligible tool. POST /api/v1/replies is the separate single-call path for that one tool, for callers who do not want either version of the confirm step.
Request
- Base URL: https://app.reachium.io
- URL: https://app.reachium.io/api/v1/actions/{toolName}
- Auth: HTTP bearer
Path parameters
An MCP tool name. Every tool also has its OWN literal path below (e.g. POST /api/v1/actions/sendReply), with its real request body schema and description; prefer that concrete operation when your tooling can use it. This templated path is the general escape hatch (e.g. for a tool added between deploys).
Headers
Optional caller-generated key (8-200 characters: letters, digits, dot, underscore, colon, or hyphen). A final tool result is replayed for the same key and body. An ambiguous result remains 409 under that key; reconcile external state before using a new key. Reuse with a different body returns 422.
Request body
Arbitrary, tool-specific arguments. See the in-app MCP tool catalog for each tool’s shape.
Response
The called tool’s own result, shape depends on the tool.
Changes
No recorded changes to this operation across all 1 revision of this API.