ready. Try Ready →Sign up

#MCP for AI agents

Ready runs an MCP (Model Context Protocol) server, so AI agents can work in your account in plain language.

Details

Agents can send texts, manage contacts and conversations, build and send campaigns, enroll drips, check number deliverability and read billing. It has 58 tools. Any MCP client that supports remote servers works.

MCP server
https://api.tryready.com/mcp

Connecting

Details
ClientHow
Claude.ai, ChatGPTAdd a custom connector with the URL above, then sign in to Ready.
Claude Codeclaude mcp add --transport http ready https://api.tryready.com/mcp --header "Authorization: Bearer $READY_API_KEY"
Cursor, and clients that accept url and headersThe config below.

Authenticate with OAuth 2.0 or send an rsms_ API key as Authorization: Bearer rsms_….

Details

With OAuth, clients that support discovery prompt you to sign in, with no key. Unlike the REST API, MCP doesn't accept X-API-Key. A test key is accepted, but only send_sms is simulated. Every other tool that changes or bills something (send_campaign, enroll_in_drip, ai_generate_message, and contact, conversation, campaign, drip and AI-agent changes) is refused with test_key_not_allowed and does nothing. Tools that only read work. MCP has no tools for buying numbers or registering.

OAuth details

Details
  • Discovery: /.well-known/oauth-authorization-server and /.well-known/oauth-protected-resource/mcp.
  • PKCE with S256. Dynamic client registration at /mcp/register. Unused clients are removed after 30 days.
  • Scopes: sms:send, contacts:read, contacts:write, campaigns:read, campaigns:write, billing:read, enforced per tool. API keys aren't scoped: they have full access.
  • Access tokens last 30 days and come with refresh tokens.

Transport

Streamable HTTP with JSON-RPC 2.0.

Details

POST /mcp carries every call; replies are JSON, or SSE when your Accept header asks only for text/event-stream. Notifications get 202. GET /mcp opens a stream that only sends keep-alives (clients use it to check the server is reachable; it needs no key), and Ready doesn't push messages over it. initialize returns an Mcp-Session-Id header; sending it back is optional for stateless clients.

Protocol versions 2024-11-05, 2025-03-26, 2025-06-18 and 2025-11-25 are supported; the server answers in the version you ask for. An unknown method returns JSON-RPC error -32601. An unknown tool returns a result with isError: true.

MCP config (Cursor and similar)
{
  "mcpServers": {
    "ready": {
      "url": "https://api.tryready.com/mcp",
      "headers": {
        "Authorization": "Bearer rsms_your_key_here"
      }
    }
  }
}

#End an MCP session

DEL/mcp

Ends the session named by the Mcp-Session-Id header.

  • Auth Authorization: Bearer (API key or OAuth token)
  • Cost Free

Headers

Mcp-Session-IdstringRequired
From the initialize response.

Errors

HTTPCodeWhen
401-32000No valid Bearer token (a JSON-RPC error body).
404-32001The session is already gone, or isn't yours (a JSON-RPC error body).
Tip. Prefer no code? The Integration Assistant can subscribe webhooks and send a test message for you.