mcp-juridico-brasil
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-juridico-brasil consultar processo 1234567-89.2024.8.26.0100"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
⚡ Comece em 60 segundos
Sem clonar nada, sem configurar ambiente — direto do PyPI:
uvx mcp-juridico-brasilPlugando no Claude Code em um comando:
claude mcp add juridico-brasil -- uvx mcp-juridico-brasilPronto: seu assistente passa a consultar processos nos 91 tribunais (DataJud CNJ), pesquisar legislação no LexML, calcular prazos do CPC em dias úteis, montar minutas e gerar documentos Visual Law auditáveis. Configuração completa por cliente (Claude Desktop, Cursor, .mcp.json) logo abaixo.
📌 Este repositório é a vitrine da versão atual (v0.5.0) publicada por @ehrodan. Snapshot pronto para instalar e integrar.
Related MCP server: mcp-juridico-brasil
O que é
mcp-juridico-brasil conecta assistentes de IA, escritórios de advocacia e sistemas de gestão processual ao DataJud CNJ, ao Domicílio Judicial Eletrônico, ao LexML Brasil e a um corpus jurídico local em SQLite. A camada processual cobre 91 tribunais; a camada normativa pesquisa metadados, sincroniza textos oficiais, cria embeddings locais por artigo, recupera fundamentos com fonte e SHA-256 e produz escrita estruturada com auditoria de fonte original e Visual Law.
O servidor não é um catálogo genérico de dados públicos. A proposta é transformar consultas judiciais e normativas fragmentadas em tools seguras, componíveis e prontas para agentes - com cálculo de prazos em dias úteis, monitoramento em lote, snapshots persistentes e confirmação humana obrigatória para qualquer ação com efeito jurídico.
Ferramentas disponíveis
Tools processuais, normativas e de automação prontas para uso.
Consulta e monitoramento de processos
Ferramenta | Descrição | Fonte |
| Consulta completa de processo pelo número CNJ (NNNNNNN-DD.AAAA.J.TT.OOOO) | DataJud CNJ |
| Histórico de andamentos processuais com filtro por data | DataJud CNJ |
| Dados do processo mais instrução de resumo para o modelo de linguagem | DataJud CNJ |
| Verifica atualizações desde uma data (polling com snapshot em memória) | DataJud CNJ |
| Lista processos com snapshot salvo na sessão atual | Memória local |
| Ciclo RPA finito, concorrente e tolerante a falhas para até 50 processos; somente leitura | DataJud CNJ |
Pesquisa legislativa e jurídica
Ferramenta | Descrição | Fonte |
| Pesquisa por termos, título, ementa, assunto ou URN, com filtros e paginação | LexML Brasil SRU/CQL |
| Valida uma URN LEX brasileira e monta o resolvedor persistente oficial | Offline + URL LexML |
Vigência: LexML é usado para descoberta, identificação e ligação. Confirme texto consolidado, alterações, revogações e data de corte na autoridade publicadora competente antes de fundamentar qualquer ato jurídico.
Corpus inteligente, embeddings e minutas
Tool | Descrição | Persistência/fonte |
| Catálogo curado das principais leis e códigos | Planalto |
| RPA finito: baixa HTML oficial, remove texto revogado, separa artigos, calcula SHA-256 e embeddings | SQLite local |
| Busca híbrida por embedding local (72%) e cobertura lexical (28%) | SQLite local |
| Cobertura, datas, hashes, fonte e localização do banco | SQLite local |
| Contratos, CT, termos, petições, contestações, notificações, pareceres e políticas de privacidade | Corpus local |
| Tipos de minuta e campos recomendados | Offline |
| Matriz Fato→Prova→Norma→Subsunção→Consequência→Pedido, com bloqueios explícitos | Corpus local |
| Recusa agregador, LexML isolado e jurisprudência sem inteiro teor oficial | Corpus + allowlist oficial |
| HTML acessível, responsivo e imprimível, mais sidecar JSON auditável |
|
O embedding padrão é determinístico, auditável e não envia texto para APIs externas. Ele não é um modelo neural. Cada resultado traz o texto do artigo, URL oficial, data da consulta e hash da versão baixada.
Fluxo recomendado:
1. listar_fontes_corpus_juridico
2. sincronizar_corpus_juridico(fontes=["constituicao", "codigo_civil", "cpc", "clt", "lgpd"])
3. consultar_corpus_juridico(pergunta="Quais regras protegem dados pessoais no contrato?")
4. preparar_minuta_juridica(tipo_documento="ct", objetivo="...", dados={...})
5. construir_argumento_juridico(tese="...", fatos=[{"descricao": "...", "prova": "..."}], pedido="...")
6. gerar_documento_visual_law(titulo="...", tese="...", fatos=[...], pedido="...")O RPA aceita somente HTTPS nos hosts allowlisted do Planalto, limita concorrência e tamanho, recusa desafios de segurança e substitui cada lei em transação. Se uma fonte falhar, a última versão local válida é preservada.
Na cópia da Área de Trabalho, os atalhos SINCRONIZAR-LEIS.cmd e INICIAR-MCP.cmd executam o RPA e o servidor usando o ambiente isolado do próprio projeto.
Cálculo de prazos processuais
Ferramenta | Descrição | Referência |
| Cálculo de prazo em dias úteis com calendário forense nacional e estadual (art. 219, 220 e 224 CPC) | Offline |
Referência de tribunais
Ferramenta | Descrição | Fonte |
| Lista todas as 91 siglas suportadas (Portaria CNJ 160/2020) | Offline |
Resource MCP
Resource | Descrição |
| Último snapshot capturado de um processo monitorado |
Instalação
A forma mais simples, sem instalar nada permanentemente:
uvx mcp-juridico-brasilO que é
uvx? É o gerenciador de ferramentas do uv, que baixa e executa pacotes Python em ambiente isolado, sem poluir seu sistema. Se ainda não tem o uv:curl -LsSf https://astral.sh/uv/install.sh | sh
Mantendo atualizado: use
uvx mcp-juridico-brasil@latestouuvx --refresh mcp-juridico-brasilpara forçar a versão mais recente do PyPI.
Instalação permanente (alternativa)
# via pip
pip install mcp-juridico-brasil
# via uv (recomendado para projetos Python)
uv add mcp-juridico-brasilA partir do código-fonte
git clone https://github.com/DeHor-Labs/mcp-juridico-brasil.git
cd mcp-juridico-brasil
uv syncConfiguração por cliente MCP
Cole o trecho abaixo no arquivo de configuração do seu cliente. A variável DATAJUD_API_KEY é necessária para consultas ao DataJud CNJ - solicite em datajud-wiki.cnj.jus.br.
Claude Desktop
Edite ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) ou %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"juridico-brasil": {
"command": "uvx",
"args": ["mcp-juridico-brasil"],
"env": {
"DATAJUD_API_KEY": "sua-chave-aqui"
}
}
}
}Reinicie o Claude Desktop. As ferramentas jurídicas aparecem automaticamente.
Claude Code (CLI)
claude mcp add juridico-brasil -- uvx mcp-juridico-brasilPara incluir a chave de API:
DATAJUD_API_KEY=sua-chave-aqui claude mcp add juridico-brasil -- uvx mcp-juridico-brasilCursor / .mcp.json
Crie ou edite .cursor/mcp.json (ou .mcp.json na raiz do projeto):
{
"mcpServers": {
"juridico-brasil": {
"command": "uvx",
"args": ["mcp-juridico-brasil"],
"env": {
"DATAJUD_API_KEY": "sua-chave-aqui"
}
}
}
}VS Code + Continue
Adicione ao settings.json:
{
"continue.mcpServers": {
"juridico-brasil": {
"command": "uvx",
"args": ["mcp-juridico-brasil"],
"env": {
"DATAJUD_API_KEY": "sua-chave-aqui"
}
}
}
}Variáveis de ambiente
Variável | Descrição | Padrão |
| Chave de acesso ao DataJud CNJ (necessária para consultas) | - |
| Nível de log: |
|
| Diretório para persistência de snapshots em arquivo (opcional) | memória |
| Timeout em segundos para chamadas HTTP |
|
| Endpoint oficial SRU 1.1 |
|
| Cache local de pesquisas LexML, em segundos |
|
| Máximo de chamadas LexML por segundo |
|
| Banco SQLite do corpus local |
|
| Dimensão do embedding local |
|
| HTMLs Visual Law e auditorias JSON gerados |
|
Arquitetura
Claude / GPT / Cursor / qualquer cliente MCP
|
| Model Context Protocol (stdio)
v
mcp-juridico-brasil
|
+---------+---------+-----------+----------+--------+----------+
| | | | | | |
Processos DJe Automação Snapshots Prazos LexML Corpus/RAG
| | | | | | |
v v v v v v v
DataJud API Comunica DataJud mem/disco Calendário SRU/CQL SQLite+hash
CNJ CNJ (lote) offline + URN embeddingFontes de dados:
DataJud CNJ - base unificada de dados judiciais (Portaria CNJ 160/2020)
LexML Brasil - metadados jurídicos, padrão URN LEX e resolvedor persistente
Planalto - textos legais oficiais sincronizados no corpus local
Calendário forense nacional e estadual - processado offline para cálculo de prazos (CPC art. 219/220/224)
Diagramas executáveis e UML ficam em docs/arquitetura/. A política de escrita, fonte original e Visual Law está em docs/POLITICA-ESCRITA-JURIDICA-VISUAL-LAW.md.
Roadmap
v0.1.x - Busca de processo, listagem de movimentações, resumo de andamento e listagem de tribunais
v0.2.x - Snapshot atômico, prazos, DJe com gate duplo, LexML SRU/CQL e monitoramento RPA em lote
v0.3.x - Corpus oficial local, embeddings por artigo, busca híbrida, RPA de leis e minutas ancoradas
v0.4.x - Fontes oficiais alternativas para contingência LexML e extração estruturada de publicações
v1.0.0 - Suite processual completa com auditoria LGPD, contratos de API estáveis e cobertura ampliada
Privacidade e LGPD
Atenção: o
mcp-juridico-brasilacessa exclusivamente dados públicos disponibilizados pelo DataJud CNJ (Resolução CNJ 331/2020). Processos em segredo de justiça não são retornados pela API e não são acessados por este servidor. Nenhum dado processual é armazenado fora do ambiente local do usuário - exceto quandoJURIDICO_SNAPSHOT_DIRé configurado explicitamente. O uso das ferramentas é de responsabilidade do profissional habilitado, em conformidade com a LGPD (Lei 13.709/2018), a Resolução CNJ 647/2025 e a OAB Recomendação 001/2024. Estas ferramentas não constituem consultoria jurídica.
Contribuindo
Contribuições são bem-vindas!
# 1. Clone o repositório ou seu fork
git clone https://github.com/DeHor-Labs/mcp-juridico-brasil.git
cd mcp-juridico-brasil
# 2. Instale as dependências de desenvolvimento
uv sync
# 3. Crie sua branch
git checkout -b feature/meu-recurso
# 4. Implemente, teste e verifique
pytest
ruff check src/
mypy src/
# 5. Abra um Pull RequestVeja as issues abertas - especialmente as marcadas com good first issue.
Cada módulo segue o padrão client.py + schemas.py + tools.py, tornando simples adicionar novos módulos processuais.
Projeto irmão
Este servidor faz par com o MCP Fiscal Brasil, que conecta IAs ao sistema fiscal brasileiro (NF-e, SPED, CNPJ, Simples Nacional, Reforma Tributária 2026):
github.com/DeHor-Labs/mcp-fiscal-brasil
Licença
MIT - veja LICENSE para detalhes.
Available Tools
26 toolsauditar_citacoes_juridicasC
Recusa agregador, LexML isolado e jurisprudência sem inteiro teor oficial.
Inputs: citacoes (required). Returns: object
buscar_processo_por_numeroA
Busca os dados de um processo judicial pelo número CNJ.
Consulta a API pública DataJud (CNJ) e retorna metadados do processo, classe, assuntos, órgão julgador, partes e histórico de movimentações.
Cobertura: 91 tribunais (STF, STJ, TST, TSE, STM, TRF1-6, TRTs, TJs estaduais, TREs e militares estaduais).
Inputs: numero_processo (required), tribunal. Returns: object
calcular_proximo_prazoA
Calcula o próximo prazo processual em dias úteis com calendário forense.
Implementa art. 219 (dias úteis), art. 224 (termo inicial no dia seguinte) e art. 220 CPC (suspensão no recesso forense 20/dez a 20/jan).
Inputs: tribunal (required), numero_processo (required), uf, tipo_ato, +1 more. Returns: object
confirmar_leitura_intimacaoConfirmar leitura de intimação no DJeADestructive
Confirma a leitura de uma intimação no Domicílio Judicial Eletrônico.
╔══════════════════════════════════════════════════════════════════╗ ║ AÇÃO DE ALTO RISCO - EFEITO JURÍDICO REAL E IRREVERSÍVEL ║ ║ ║ ║ Confirmar a leitura de uma intimação via API DJe: ║ ║ - Registra ciência oficial com timestamp no sistema do CNJ. ║ ║ - INICIA a contagem do prazo processual correspondente. ║ ║ - NÃO pode ser desfeito via API. ║ ╚══════════════════════════════════════════════════════════════════╝
GATE DE SEGURANÇA (duplo): Esta tool opera em modo dry-run (sem efeito) por padrão. Para executar com efeito jurídico real, ambas as condições abaixo devem ser satisfeitas:
confirmar=True deve ser passado explicitamente nesta chamada.
DJE_PERMITIR_CONFIRMACAO_LEITURA=true deve estar definida no ambiente.
Se qualquer uma das condições falhar, a tool retorna uma simulação sem qualquer chamada à API DJe - completamente seguro.
Credenciais necessárias (via variáveis de ambiente): DJE_CLIENT_ID - client_id OAuth2 DJE_CLIENT_SECRET - client_secret OAuth2 DJE_BEHALF_OF_CPF - CPF do responsável (auditoria) DJE_PERMITIR_CONFIRMACAO_LEITURA - deve ser 'true' para modo real
Inputs: id_intimacao (required), numero_processo (required), confirmar. Returns: object
construir_argumento_juridicoC
Estrutura Fato→Prova→Norma→Subsunção→Consequência→Pedido com fontes locais.
Inputs: tese (required), fatos (required), pedido (required), lei, +2 more. Returns: object
consultar_corpus_juridicoC
Busca por quatro perspectivas explicáveis, com fonte e redução de redundância.
Inputs: pergunta (required), lei, limite, jurisdicao, +3 more. Returns: object
diagnosticar_neurodiversidade_juridicaC
Explica como as perspectivas votaram e onde houve discordância ou repetição.
Inputs: pergunta (required), lei, limite, jurisdicao, +3 more. Returns: object
estatisticas_corpus_juridicoA
Mostra cobertura, datas, hashes e localização do banco jurídico local.
Inputs: no named parameters. Returns: object
executar_monitoramento_em_loteA
Executa um ciclo RPA finito e tolerante a falhas para ate 50 processos.
Cada alvo deve conter numero_processo, tribunal e desde_iso. Alvos duplicados sao consultados uma unica vez. Falha em um processo nao cancela os demais. A rotina e somente leitura: nunca confirma comunicacao/intimacao no DJe.
Inputs: alvos (required), concorrencia. Returns: object
gerar_documento_visual_lawB
Gera HTML Visual Law autocontido e auditoria JSON, sempre sujeito a revisão humana.
Inputs: tese (required), fatos (required), pedido (required), titulo (required), +4 more. Returns: object
gerar_documento_word_juridicoC
Gera DOCX formal a partir do harness, com fontes clicáveis e gates visíveis.
Inputs: tese (required), fatos (required), pedido (required), titulo (required), +4 more. Returns: object
listar_fontes_corpus_juridicoA
Lista as leis principais e URLs oficiais aceitas pelo RPA local.
Inputs: no named parameters. Returns: object
listar_intimacoesA
Lista comunicações processuais do Domicílio Judicial Eletrônico (DJe).
Operação SOMENTE LEITURA - sem efeito jurídico.
Retorna as intimações, citações e notificações recebidas no DJe para o CNPJ/CPF cadastrado via DJE_BEHALF_OF_CPF. Intimações em segredo de justiça têm o conteúdo suprimido; apenas metadados são exibidos.
Credenciais necessárias (via variáveis de ambiente): DJE_CLIENT_ID - client_id do OAuth2 (GeCli/DJe) DJE_CLIENT_SECRET - client_secret do OAuth2 (GeCli/DJe) DJE_BEHALF_OF_CPF - CPF do responsável (auditoria CNJ)
Inputs: limite, numero_processo, apenas_pendentes. Returns: object
listar_movimentacoesA
Lista as movimentações mais recentes de um processo judicial.
Retorna o histórico de andamentos com código TPU, nome e data/hora, ordenado do mais recente para o mais antigo.
Inputs: tribunal (required), numero_processo (required), limite. Returns: object
listar_normas_regulamentadorasA
Vasculha o catálogo oficial do MTE e lista NRs vigentes e revogadas.
Inputs: no named parameters. Returns: object
listar_processos_monitoradosA
Lista processos com snapshot em memória na sessão atual.
Retorna os números de processos que tiveram snapshot salvo nesta sessão. Use o resource processo://{numero}/snapshot para ler os dados completos.
Returns: Dicionário com lista de números e total.
Inputs: no named parameters. Returns: object
listar_tipos_minuta_juridicaA
Lista minutas suportadas e os campos recomendados para cada uma.
Inputs: no named parameters. Returns: object
listar_tribunaisA
Lista todos os tribunais suportados pelo MCP (91 ao total).
Retorna siglas que podem ser usadas no parâmetro 'tribunal' das demais tools.
Inputs: no named parameters. Returns: object
monitorar_processoA
Verifica se um processo teve atualização após a data informada.
Implementação Fase 2: polling via DataJud (sem tempo real). Fase 3 substituirá por notificação push via provider comercial.
Inputs: tribunal (required), desde_iso (required), numero_processo (required). Returns: object
pesquisar_lexmlA
Pesquisa metadados juridicos no acervo oficial LexML via SRU/CQL.
Campos aceitos: todos, titulo, ementa, assunto e urn. Filtros opcionais restringem tipo de documento, localidade, autoridade e intervalo de anos. Retorna URN persistente, ementa, assuntos e link do resolvedor oficial.
Inputs: termos (required), campo, limite, pagina, +5 more. Returns: object
preparar_minuta_juridicaB
Prepara minuta e prompt profissional ancorados nos artigos locais.
Aceita contrato, contrato_trabalho (ou ct), termo, peticao_inicial, contestacao, notificacao_extrajudicial, parecer, requerimento e politica_privacidade. O resultado sempre exige revisão humana.
Inputs: dados (required), objetivo (required), tipo_documento (required), tom. Returns: object
redigir_argumento_juridicoC
Executa o harness de regra, prova, aplicação, contraditório e revisão.
Inputs: tese (required), fatos (required), pedido (required), lei, +2 more. Returns: object
resolver_urn_lexmlA
Valida uma URN LEX brasileira e devolve seu resolvedor oficial.
Esta operacao e deterministica e nao consulta a rede. Abrir o URL retornado continua sujeito a disponibilidade e verificacao de seguranca do portal.
Inputs: urn (required). Returns: object
resumir_andamentoA
Retorna dados estruturados de um processo para geração de resumo pelo LLM.
Esta tool busca o processo no DataJud e devolve os dados formatados junto com instruções para que o modelo gere o resumo em linguagem natural. O processamento semântico (resumo) fica no modelo, não no MCP.
Inputs: numero_processo (required), tribunal. Returns: object
sincronizar_corpus_juridicoA
RPA finito que baixa, separa, embeda e salva artigos de fontes oficiais.
Sem fontes, sincroniza todo o catálogo principal. Use códigos retornados por
listar_fontes_corpus_juridico. Execuções repetidas usam SHA-256 e não
reindexam documentos sem alteração.
Inputs: fontes, concorrencia. Returns: object
sincronizar_normas_regulamentadorasB
Descobre PDFs vigentes no MTE, extrai itens e persiste embeddings com SHA-256.
Inputs: nrs, concorrencia. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 26 tools
Most tools target distinct resources, but the argument/document drafting cluster (construir_argumento_juridico, redigir_argumento_juridico, preparar_minuta_juridica, gerar_documento_word_juridico) has overlapping boundaries, and resumir_andamento could be confused with listar_movimentacoes. Descriptions help, but an agent still faces real selection risk.
Nearly all tools follow a consistent Portuguese snake_case verb_noun pattern such as buscar_processo, listar_movimentacoes, and sincronizar_corpus_juridico. Minor deviations like gerar_documento_visual_law and gerar_documento_word_juridico mix English terms, but the overall convention is predictable.
With 26 tools, the server exceeds the 25+ threshold and combines several subdomains: process tracking, LexML, local corpus, NRs, and legal document generation. The breadth is defensible, but the surface is heavy and would be more navigable if split into focused servers.
The tool surface covers the main legal workflows: process lookup, movements, deadlines, monitoring, intimations, legal research, corpus maintenance, and document generation. Minor gaps exist, such as no direct jurisprudence search and no way to stop/remove monitored processes, but agents can work around them.
Maintenance
Related MCP Connectors
JusPronto is case-management software for Brazilian law firms. Its remote MCP server (OAuth 2.1 with PKCE, per-permission scopes, audit log) lets Claude and ChatGPT read the firm's own cases, deadlines, agenda, recent court movements and case files with the page cited. Write actions require the lawyer's approval. Requires a JusPronto account.
Public lookup of Brazilian court cases (metadata + docket) via the CNJ/DataJud API. Free, no login.
Busca e verifica jurisprudência brasileira real (+400 mil julgados) — anti-alucinação para IA.
Open-source alternative to Jusbrasil for AI: find lawsuits by name, CPF, CNPJ or case number and bui
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceEnables interaction with Brazil's Electronic Judicial Process (PJe) system to search for legal processes, view case details, and download court documents. Supports secure JWT authentication and process lookup by CPF/CNPJ or party name.-
- AlicenseAqualityBmaintenanceConnects AI assistants to Brazilian judicial data from DataJud CNJ and 91 courts, enabling process consultation, monitoring, and deadline calculation under the Civil Procedure Code.996 PyPI135MIT
- AlicenseNot gradedqualityCmaintenanceEnables querying public Brazilian court proceedings metadata and movements via the CNJ/DataJud API, covering multiple courts.4MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to read, search, and create/edit legal practice management data in Projuris ADV, including cases, people, tasks, updates, timesheet, files, contracts, subjects, court notices, service records, finance, and users via REST.1MIT