Dabra MCP
Brazilian company and person data by CNPJ/CPF: registry, partners, tax status, sanctions, lawsuits.
Links
README
From the repo.
Dabra - API Examples
Exemplos de integracao com a API da Dabra: 133 consultas de dados brasileiros (CNPJ, CPF, KYC, compliance, processos judiciais, credito, sancoes internacionais) e envio de SMS/OTP, por uma API REST pre-paga, com uma unica chave.
Inicio rapido
- Crie a conta em app.dabradata.com/signup. Sem cartao de credito e sem mensalidade: voce paga por consulta, com saldo pre-pago.
- Na pagina de chaves do painel ha duas chaves:
- teste (
dabra_test_...): aceita qualquer valor com formato valido e devolve o exemplo de resposta do endpoint, a custo zero, marcado com o headerX-Example: true. A validacao de parametros e a mesma da producao. Use para montar a integracao. - producao (
dabra_live_...): consulta real, debitada do saldo.
- teste (
- Rode um exemplo:
curl -H "X-API-Key: dabra_test_SUA_CHAVE" \
"https://app.dabradata.com/api/v1/consulta/receita-federal-pj?cnpj=00000000000191"
Todos os exemplos leem a chave da variavel de ambiente DABRA_API_KEY:
export DABRA_API_KEY=dabra_test_SUA_CHAVE
python python/cnpj.py 00.000.000/0001-91
Formato das chamadas
GET https://app.dabradata.com/api/v1/consulta/<slug>?<parametro>=<valor>
X-API-Key: <sua chave>
- Os parametros vao na querystring (
?cpf=...,?cnpj=...,?nome=...). CPF e CNPJ aceitam com ou sem pontuacao. - Algumas consultas pedem "um de" (por exemplo
cpfoucnpj); a pagina de cada consulta diz quais parametros sao obrigatorios. - As listas internacionais (OFAC, ONU, UE, Reino Unido, FBI, Interpol) sao consultadas por
nome. Para pessoa fisica com CPF,listas-restritivascruza 17 listas nacionais e internacionais pelo documento. - Mensageria (
sms-enviar,otp-send,otp-verify,otp-resend,sms-status) e mais algumas consultas usamPOSTcom corpo JSON. - A resposta de sucesso e o JSON da consulta, sem envelope.
- Para repetir uma chamada com seguranca, envie
X-Idempotency-Key: a mesma chave devolve a resposta original sem cobrar de novo.
Referencia completa, com preco, parametros e exemplo de resposta de cada consulta:
dabradata.com/docs. Toda pagina da referencia tambem existe em
markdown, no mesmo endereco com .md no fim.
Exemplos por linguagem
| Linguagem | Pasta | Dependencias | Rodar |
|---|---|---|---|
| cURL (bash) | /curl | nenhuma | ./curl/cnpj.sh 00000000000191 |
| Python | /python | pip install -r python/requirements.txt | python python/cnpj.py |
| Node.js | /nodejs | Node 18+, sem deps | node nodejs/cnpj.js |
| PHP | /php | PHP 7.4+, ext-curl | php php/cnpj.php |
| Go | /go | Go 1.21+, stdlib | go run go/cnpj.go |
Casos de uso
Custos de referencia pela tabela publica em 24/09/2026. O custo real de cada chamada vem no
header X-Request-Cost; os precos atuais estao em dabradata.com/pricing.
| Caso | Custo | Python | Node.js | PHP | Go | cURL |
|---|---|---|---|---|---|---|
| Consultar CNPJ (Receita Federal + QSA) | R$ 0,43 | cnpj.py | cnpj.js | cnpj.php | cnpj.go | cnpj.sh |
| Consultar CPF (Receita Federal) | R$ 0,54 | cpf.py | - | - | - | cpf.sh |
| KYC pessoa fisica | R$ 6,43 (Python) / R$ 6,00 | kyc_pf.py | kyc_pf.js | kyc_pf.php | kyc_pf.go | - |
| KYC pessoa juridica | R$ 11,27 | kyc_pj.py | - | - | - | - |
| Due diligence de empresa | R$ 15,52 | due_diligence.py | - | - | - | - |
| Background check de candidato | R$ 4,75 | background_check.py | - | - | - | - |
| Compliance de fornecedores (CSV) | R$ 2,59 por CNPJ | compliance_fornecedor.py | - | - | - | - |
| Sancoes internacionais | R$ 3,31 por nome | - | - | - | - | sancoes.sh |
| Enviar SMS e OTP | R$ 0,29 por credito | - | - | - | - | sms.sh |
| Receber webhook (verificar assinatura) | gratis | webhook_assinatura.py | - | - | - | - |
Headers de resposta
| Header | Descricao |
|---|---|
X-Request-Cost | Custo debitado nesta chamada, em BRL |
X-Balance-Remaining | Saldo restante apos a chamada |
X-RateLimit-Limit-RPM / X-RateLimit-Remaining-RPM | Limite e restante por minuto |
X-RateLimit-Limit-RPD / X-RateLimit-Remaining-RPD | Limite e restante por dia |
X-Response-Time-Ms | Tempo de processamento |
X-Example | true quando a resposta e o exemplo da chave de teste |
X-Idempotent-Replay | true quando a resposta veio de uma X-Idempotency-Key repetida |
Erros
Todo erro tem o mesmo envelope:
{"error": {"code": "insufficient_balance", "message": "...", "hint": "...", "details": {}}}
| HTTP | code | Quando |
|---|---|---|
| 400 | invalid_parameters | Parametro ausente ou em formato invalido |
| 401 | unauthorized | Chave ausente ou invalida |
| 402 | insufficient_balance | Saldo insuficiente; details traz required_brl e available_brl |
| 403 | email_not_verified, kyc_required | Conta ainda nao liberada para consultar (e-mail ou verificacao pendente) |
| 404 | not_found | Slug inexistente, ou documento sem registro na base consultada |
| 429 | rate_limit_exceeded | Limite de requisicoes; respeite o header Retry-After |
| 5xx | varia | A fonte nao respondeu. Uma falha nunca significa "nada consta" |
Em regra, erro nao e cobrado. Algumas fontes cobram mesmo quando nao ha registro para o documento;
nesses casos o custo vem em X-Request-Cost, como numa resposta de sucesso.
Saldo
curl -H "X-API-Key: $DABRA_API_KEY" https://app.dabradata.com/api/v1/administrative/balance
Resposta com cache de 60 segundos; as respostas das consultas ja trazem o saldo no header
X-Balance-Remaining. Ver dabradata.com/docs/administrativo/saldo.
Webhooks
Eventos disponiveis: sms.mo.received, sms.optout e topup.credited. Cada entrega e assinada
com HMAC-SHA256 do corpo bruto no header X-Dabra-Signature: sha256=<hex>. Por compatibilidade, o
mesmo valor tambem e enviado em X-FonteData-Signature durante 12 meses (a partir de 24/09/2026):
valide o header novo e use o legado so como fallback. Retentativas por 24 horas; deduplique por
event_id. Exemplo em python/webhook_assinatura.py e
documentacao em dabradata.com/docs/webhooks.
MCP
As mesmas consultas estao disponiveis para Claude, ChatGPT, Cursor e outros clientes MCP, pelo servidor remoto:
https://app.dabradata.com/mcp
Login por OAuth 2.1 no navegador, sem colar chave. O preco e o saldo sao os mesmos da API REST, e toda execucao pede confirmacao do custo antes de debitar. Ver dabradata.com/docs/mcp.
Outros produtos
- Lote: enriquecimento de uma planilha CSV inteira pelo painel, sem codigo. Formato dos arquivos: dabradata.com/docs/lote.
- Dossie: relatorio de uma pessoa ou empresa por finalidade (credito, contratacao, due diligence), com parecer e fontes citadas: dabradata.com/dossie.
- SMS e OTP: remetente white-label, OTP gerenciado e respostas do destinatario por webhook: dabradata.com/sms.
OpenAPI e Postman
- Especificacao viva: app.dabradata.com/api/v1/openapi.json
- Catalogo vivo, com precos e exemplos: app.dabradata.com/api/v1/docs
openapi.yamleDabra.postman_collection.jsonsao snapshots gerados dessas URLs porscripts/atualizar_referencia.py. Em caso de divergencia, vale a URL viva.
No Postman, importe a colecao e preencha a variavel API_KEY. Com a chave de teste, cada
requisicao devolve o exemplo do endpoint sem custo.
Continuidade
Dabra e a marca da FONTEDATA TECNOLOGIA LTDA (CNPJ 67.011.070/0001-16), antes apresentada como FonteData. A empresa, a conta, o saldo e a API sao os mesmos; so mudaram o nome e os enderecos.
- Chaves novas comecam com
dabra_live_oudabra_test_. Chaves emitidas antes de 24/09/2026 comecam comfd_live_oufd_test_e continuam validas; nao e preciso trocar. - Este repositorio era
FonteData/api-examplese agora eDabraData/api-examples. O GitHub redireciona o endereco antigo, mas atualize o remote:git remote set-url origin https://github.com/DabraData/api-examples.git.
Links
- Documentacao: https://dabradata.com/docs
- Precos: https://dabradata.com/pricing
- Criar conta: https://app.dabradata.com/signup
- Suporte: contato@dabradata.com ou WhatsApp https://wa.me/5511991220174
Contribuindo
Veja CONTRIBUTING.md. Exemplos em novas linguagens sao bem-vindos.
Config for your environment
Use the endpoint URL below in your config. No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "https://app.dabradata.com/mcp"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.