> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecroma.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP

> Use as fontes de dados da Croma como ferramentas via MCP, com sua chave de API.

A Croma expõe cada fonte de dados como uma ferramenta por meio do [Model
Context Protocol](https://modelcontextprotocol.io) (MCP), servido sobre
Streamable HTTP em:

```
https://api.croma.run/mcp
```

Qualquer cliente MCP pode se conectar. Os clientes interativos (Claude,
ChatGPT, Cursor) usam o fluxo de OAuth, mas para o seu próprio código você se
autentica com a **mesma chave de API da API REST**: envie-a como token
bearer e as ferramentas são executadas com o escopo da sua organização,
compartilhando os mesmos [limites de taxa](/pt/rate-limits) e uso.

## Use a partir do AI SDK

O [AI SDK](https://ai-sdk.dev) pode carregar as ferramentas da Croma
diretamente e entregá-las a um modelo para chamadas de ferramentas. Envie sua
chave no cabeçalho `Authorization` do transporte:

```ts theme={"dark"}
import { experimental_createMCPClient as createMCPClient, generateText } from "ai";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
import { anthropic } from "@ai-sdk/anthropic";

const mcp = await createMCPClient({
  transport: new StreamableHTTPClientTransport(
    new URL("https://api.croma.run/mcp"),
    {
      requestInit: {
        headers: { Authorization: `Bearer ${process.env.CROMA_API_KEY}` },
      },
    },
  ),
});

// Cada fuente de datos, expuesta como una herramienta que el modelo puede llamar.
const tools = await mcp.tools();

const { text } = await generateText({
  model: anthropic("claude-opus-4-8"),
  tools,
  // Deja que el modelo llame herramientas y luego responda. Consulta la
  // documentación del AI SDK para la opción de varios pasos en tu versión
  // (`stopWhen` / `maxSteps`).
  prompt: "Consulta los antecedentes de la Policía Nacional para la cédula 1234567890.",
});

await mcp.close();
console.log(text);
```

<Warning>
  Trate a chave como um segredo: carregue-a de uma variável de ambiente ou de um
  gerenciador de segredos, nunca a envie ao repositório e feche o cliente
  (`mcp.close()`) quando terminar para liberar a conexão.
</Warning>

## Nomes das ferramentas

As ferramentas são nomeadas conforme a sua fonte, com sublinhados em vez de
hifens, por exemplo `policia_criminal_records`, `rues_entity_by_nit` e
`rama_judicial_cases_by_radicado`. Chame `mcp.tools()` para listar o conjunto
completo com seus esquemas de entrada, ou consulte a [referência da
API](/pt/api-reference) para os campos que cada uma aceita.

As [consultas assíncronas](/pt/async-jobs) sempre aguardam de forma síncrona sobre MCP:
a chamada da ferramenta retorna o resultado pronto, sem `202`, polling
nem callbacks.

## Qualquer cliente MCP

O AI SDK é uma opção. Como o endpoint fala MCP padrão sobre Streamable
HTTP, o
[SDK oficial de MCP para TypeScript](https://github.com/modelcontextprotocol/typescript-sdk),
o LangChain e outros frameworks compatíveis com MCP se conectam da mesma forma:
aponte-os para `https://api.croma.run/mcp` e defina o cabeçalho
`Authorization: Bearer`.
