Dabra MCP
Brazilian company and person data by CNPJ/CPF: registry, partners, tax status, sanctions, lawsuits.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http dabra-mcp 'https://app.dabradata.com/mcp'
{
"mcpServers": {
"dabra-mcp": {
"type": "http",
"url": "https://app.dabradata.com/mcp"
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
Dabra - API Examples
Exemplos de integracao com a API da Dabra: 132 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.
Chaves emitidas antes de 24/09/2026 (
fd_live_...,fd_test_...) continuam validas.- 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 |
| Consulta com comprovante (CNDT) | R$ 0,54 + 25% so com o link | comprovante.py | comprovante.js | comprovante.php | comprovante.go | comprovante.sh |
| Enviar SMS e OTP | R$ 0,29 por credito | - | - | - | - | sms.sh |
| Receber webhook (verificar assinatura) | gratis | webhook_assinatura.py | - | - | - | - |
Comprovante da consulta
Consultas com certidao (por exemplo tst-cndt, ccd-pj, fgts-regularidade) podem devolver o
documento emitido pela fonte. Peca com comprovante=1 (na querystring, ou no corpo nas POST):
curl -s -H "X-API-Key: $DABRA_API_KEY" "https://app.dabradata.com/api/v1/consulta/tst-cndt?cnpj=00000000000191&comprovante=1"
A resposta traz "comprovante": ["https://arquivos.dabradata.com/comprovantes/cpv_..."].
- O link e aberto (nao leva
X-API-Key) e vale 7 dias. 202: o arquivo ainda esta sendo preparado; tente de novo em instantes (respeiteRetry-After).410: o prazo acabou ou o arquivo nao esta mais disponivel; faca uma nova consulta.- Acrescimo de 25% sobre o preco da consulta, cobrado somente quando o link vem na resposta
(o custo final fica em
X-Request-Cost). Semcomprovante=1, nada muda. - Com a chave de teste a resposta e o exemplo, sem custo, e o link e ficticio.
Exemplos que consultam e baixam comprovante[0], com espera no 202 e erro claro no 410:
curl/comprovante.sh, python/comprovante.py,
nodejs/comprovante.js, php/comprovante.php e
go/comprovante.go. Documentacao:
dabradata.com/docs/comprovante.
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.
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.
Frequently asked questions
What is Dabra MCP?
Brazilian company and person data by CNPJ/CPF: registry, partners, tax status, sanctions, lawsuits.
How do I install Dabra MCP?
It runs as a remote server. In Claude Code: claude mcp add --transport http dabra-mcp 'https://app.dabradata.com/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does Dabra MCP need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is Dabra MCP open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains Dabra MCP?
It is published by DabraData. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.