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

# Integração com IA

> Servidor MCP e prompt pronto para integrar a Legitimuz com agentes de IA como Claude Code, Cursor e Copilot.

Ferramentas e contexto especializado para integrar a Legitimuz com IA. Se você usa Claude Code,
Cursor ou Copilot, dê o contexto primeiro: o agente erra menos e você revisa menos.

## O que está disponível

<Columns cols={2}>
  <Card title="Servidor MCP" icon="plug" href="#servidor-mcp">
    O agente busca e lê esta documentação de dentro do editor, sem copiar nada.
  </Card>

  <Card title="Prompt de integração" icon="message" href="#prompt-de-integração">
    Um prompt pronto, com os requisitos e as restrições que o agente precisa respeitar.
  </Card>
</Columns>

## Para quem é cada ferramenta

|                         | Servidor MCP                                 | Prompt de integração           |
| ----------------------- | -------------------------------------------- | ------------------------------ |
| **Objetivo**            | dar acesso vivo à documentação               | orientar a integração completa |
| **Ideal para**          | consultas pontuais durante o desenvolvimento | começar uma integração do zero |
| **Formato**             | conexão no editor                            | texto para colar               |
| **Requer chave de API** | não                                          | não                            |

## Servidor MCP

O servidor MCP deixa o agente pesquisar e ler estas páginas de dentro do editor.

```json title=".mcp.json" theme={null}
{
  "mcpServers": {
    "legitimuz-docs": {
      "url": "https://documentacao.legitimuz.com/mcp"
    }
  }
}
```

Depois de conectar, peça em linguagem natural: "procure na documentação da Legitimuz como criar uma
verificação".

Se o seu agente não fala MCP, o índice completo está em texto puro:

```text theme={null}
https://documentacao.legitimuz.com/llms.txt
```

## Prompt de integração

Cole isto no seu agente, preenchendo os valores do topo:

```markdown theme={null}
Integre a verificação de identidade da Legitimuz neste projeto.

Contexto:
- Stack: <SEU FRAMEWORK>
- Origem autorizada (public_id): <ORIGIN_PUBLIC_ID>
- A documentação está em https://documentacao.legitimuz.com/llms.txt. Leia antes de escrever código.

Requisitos, nesta ordem:

1. Crie uma rota de backend que chame POST https://api.legitimuz.com/public/verifications
   com o header X-API-Key lido de variável de ambiente. A rota deve:
   - autenticar quem está pedindo;
   - pegar o CPF do cadastro do usuário autenticado, nunca do corpo da requisição;
   - enviar ref_id com o identificador do meu cadastro;
   - devolver ao cliente apenas o campo entry da resposta.

2. No front, chame essa rota e abra a verificação com a entry recebida.
   Carregue o Web SDK pela tag https://sdk.legitimuz.com/v1/websdk.js e use window.Legitimuz.mount.
   Não fixe nenhuma credencial no código do cliente.

3. Crie um handler de webhook que:
   - leia o corpo cru antes de qualquer parse;
   - confira X-Legitimuz-Signature (HMAC-SHA256 sobre `${t}.${corpo}`, tolerância de 5 minutos);
   - responda 2xx antes de processar;
   - descarte repetição pelo header X-Legitimuz-Delivery;
   - trate os status approved, reproved e review, sabendo que review não é recusa;
   - aceite receber verification.decided duas vezes para a mesma verificação.

Restrições:
- A chave de API nunca pode aparecer no front, no app ou em log.
- O desfecho vem do webhook, nunca de um evento de tela.
- A API pública tem uma rota: POST /public/verifications. Não invente outras.
```

## Revise o que o agente escreveu

Agentes erram nos mesmos pontos. Confira estes cinco antes de aprovar.

| Verifique                                  | Por quê                                                |
| ------------------------------------------ | ------------------------------------------------------ |
| A chave está só no servidor                | `lz_` no bundle do front é credencial exposta          |
| O CPF vem do seu cadastro                  | se vier do corpo, qualquer um verifica qualquer pessoa |
| A assinatura é conferida sobre o corpo cru | reserializar o JSON invalida a conferência             |
| `review` é tratado                         | sem isso, uma pessoa legítima fica presa               |
| O desfecho vem do webhook                  | evento de tela é controlado por quem está na tela      |

## Ecossistema

<Columns cols={3}>
  <Card title="Documentação" icon="book" href="/">
    A referência completa, também em `llms.txt`.
  </Card>

  <Card title="Web SDK" icon="browser" href="/guides/web/vanilla-js">
    Como abrir a verificação na web.
  </Card>

  <Card title="Referência da API" icon="terminal-2" href="/api/introduction">
    O contrato que o agente deve seguir.
  </Card>
</Columns>
