MCP integration
Connect Sendero tools to Claude Desktop, Claude Code, Cursor, VS Code, Codex, or any MCP-compatible host. One auth gate, the same ~49 tools, your pick of client.
Sendero exposes a Streamable HTTP MCP server. Two endpoints, one tool registry:
Both endpoints derive tools from @sendero/tools, so web chat, WhatsApp, Slack, MCP, and direct HTTP share one registry. Pick whichever URL is closer to your client.
Pick your client
Each tab below has a one-click or one-line install. The auth header is the same across every client: a Clerk-issued API key minted at /dashboard/settings/api-keys (sandbox keys are auto-issued at workspace creation).
Claude Desktop ships a one-click .mcpb bundle that wraps the remote MCP endpoint with a local stdio→HTTP proxy. Install once, paste a key, done.
That URL 302s to the latest GitHub Release artifact (rebuilt every plugin tag). Open the downloaded file in Claude Desktop → Settings → Extensions → Sendero → Configure, paste your ak_… key, and the server appears in the picker.
If you'd rather not use the bundle, the plain JSON config is:
After restart, ask Claude something like "Use Sendero to search flights from Mexico City to Santiago next Friday for two passengers."
Protocol notes
MCP tool results return as text content containing formatted JSON. Parse that JSON before threading values such as offer ids, trip ids, or booking ids into later calls.
For irreversible actions (booking, paying, cancelling, changing travel), the calling agent must get user or operator approval before the call. The recommended pattern is hold → present to user → confirm_booking only on explicit OK.
Direct HTTP fallback (no MCP)
Some agent platforms do not speak MCP. Use the x402-gated HTTP surface instead:
Those endpoints use the PAYMENT-REQUIRED and Payment-Signature headers described in x402 nanopayments.
Auth at a glance
MCP is the schema and tool-call interface; direct paid HTTP endpoints are the x402 interface. Public deployments can enforce API keys or x402 at the edge, so clients should always send an Authorization: Bearer ... header even when local development routes do not inspect it.