Skip to main content

Connection Details

PropertyValue
ProtocolMCP over Streamable HTTP (JSON-RPC 2.0). GET streams use SSE with a : keepalive comment every 15 s
MCP endpointPOST/GET https://mcp.careemapis.com/mcp
AuthAuthorization: Bearer <access_token> on every MCP request
CORSEnabled on /mcp — browser-based clients work
SessionsStateless — no Mcp-Session-Id required
Rate limitingStandard gateway rate limits apply

Handshake​

After obtaining a token (see Authentication):

  1. POST /mcp → initialize — returns server info and capabilities (tools + resources).
  2. POST /mcp → notifications/initialized
  3. POST /mcp → tools/list — returns the full 50-tool catalog.
  4. POST /mcp → tools/call with { name, arguments } per call.

Streaming behavior​

Long-running responses stream over SSE. The server emits a : keepalive SSE comment every 15 seconds to keep intermediaries from closing idle connections — clients should silently ignore these comments.

Error handling​

  • Tool-level errors come back as an error string field in the tool's structured output.
  • Protocol-level failures surface as MCP tool errors (e.g. a missing Authorization header is rejected).
  • Retry idempotent reads freely; never blind-retry mutating tools — a retry after a timeout could double-book a ride or double-place an order.