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.
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.