Skip to main content
Croma exposes every data source as a tool over the Model Context Protocol (MCP), served over Streamable HTTP at:
Any MCP client can connect. Interactive clients (Claude, ChatGPT, Cursor) use the OAuth flow, but for your own code you authenticate with the same API key as the REST API: send it as a bearer token and the tools run scoped to your organization, sharing the same rate limits and usage.

Use it from the AI SDK

The AI SDK can load the Croma tools directly and hand them to a model for tool calling. Pass your key in the Authorization header of the transport:
Treat the key as a secret: load it from an environment variable or secrets manager, never commit it, and close the client (mcp.close()) when you are done so the connection is released.

Start from the chat template

Croma Chat Template is an open-source Next.js chat built on this endpoint with the AI SDK and AI Elements: streaming responses, tool calls across every Croma source, a per-message source picker, and optional rate limiting. Try the live deployment at chat.usecroma.com, or use the repository’s one-click Vercel deploy: it asks for your CROMA_API_KEY and a model key and comes up ready to use.

Tool names

Tools are named after their source, with underscores instead of hyphens, for example policia_criminal_records, rues_entity_by_nit, and rama_judicial_cases_by_radicado. Call mcp.tools() to list the full set with their input schemas, or browse the API reference for the fields each one accepts. Async lookups always wait inline over MCP: the tool call returns the finished result, with no 202, polling, or callbacks.

Any MCP client

The AI SDK is one option. Because the endpoint speaks standard MCP over Streamable HTTP, the official MCP TypeScript SDK, LangChain, and other MCP-aware frameworks connect the same way: point them at https://api.croma.run/mcp and set the Authorization: Bearer header.