Skip to main content
Glama
ehrodan

mcp-juridico-brasil

by ehrodan

⚡ Comece em 60 segundos

Sem clonar nada, sem configurar ambiente — direto do PyPI:

uvx mcp-juridico-brasil

Plugando no Claude Code em um comando:

claude mcp add juridico-brasil -- uvx mcp-juridico-brasil

Pronto: 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: jurisprudenciaia-mcp

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

buscar_processo_por_numero

Consulta completa de processo pelo número CNJ (NNNNNNN-DD.AAAA.J.TT.OOOO)

DataJud CNJ

listar_movimentacoes

Histórico de andamentos processuais com filtro por data

DataJud CNJ

resumir_andamento

Dados do processo mais instrução de resumo para o modelo de linguagem

DataJud CNJ

monitorar_processo

Verifica atualizações desde uma data (polling com snapshot em memória)

DataJud CNJ

listar_processos_monitorados

Lista processos com snapshot salvo na sessão atual

Memória local

executar_monitoramento_em_lote

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

pesquisar_lexml

Pesquisa por termos, título, ementa, assunto ou URN, com filtros e paginação

LexML Brasil SRU/CQL

resolver_urn_lexml

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

listar_fontes_corpus_juridico

Catálogo curado das principais leis e códigos

Planalto

sincronizar_corpus_juridico

RPA finito: baixa HTML oficial, remove texto revogado, separa artigos, calcula SHA-256 e embeddings

SQLite local

consultar_corpus_juridico

Busca híbrida por embedding local (72%) e cobertura lexical (28%)

SQLite local

estatisticas_corpus_juridico

Cobertura, datas, hashes, fonte e localização do banco

SQLite local

preparar_minuta_juridica

Contratos, CT, termos, petições, contestações, notificações, pareceres e políticas de privacidade

Corpus local

listar_tipos_minuta_juridica

Tipos de minuta e campos recomendados

Offline

construir_argumento_juridico

Matriz Fato→Prova→Norma→Subsunção→Consequência→Pedido, com bloqueios explícitos

Corpus local

auditar_citacoes_juridicas

Recusa agregador, LexML isolado e jurisprudência sem inteiro teor oficial

Corpus + allowlist oficial

gerar_documento_visual_law

HTML acessível, responsivo e imprimível, mais sidecar JSON auditável

data/visual-law/

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

calcular_proximo_prazo

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

listar_tribunais

Lista todas as 91 siglas suportadas (Portaria CNJ 160/2020)

Offline

Resource MCP

Resource

Descrição

processo://{numero}/snapshot

Último snapshot capturado de um processo monitorado


Instalação

A forma mais simples, sem instalar nada permanentemente:

uvx mcp-juridico-brasil

O 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@latest ou uvx --refresh mcp-juridico-brasil para 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-brasil

A partir do código-fonte

git clone https://github.com/DeHor-Labs/mcp-juridico-brasil.git
cd mcp-juridico-brasil
uv sync

Configuraçã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-brasil

Para incluir a chave de API:

DATAJUD_API_KEY=sua-chave-aqui claude mcp add juridico-brasil -- uvx mcp-juridico-brasil

Cursor / .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

DATAJUD_API_KEY

Chave de acesso ao DataJud CNJ (necessária para consultas)

-

JURIDICO_LOG_LEVEL

Nível de log: DEBUG, INFO, WARNING

INFO

JURIDICO_SNAPSHOT_DIR

Diretório para persistência de snapshots em arquivo (opcional)

memória

JURIDICO_HTTP_TIMEOUT

Timeout em segundos para chamadas HTTP

30

LEXML_BASE_URL

Endpoint oficial SRU 1.1

https://www.lexml.gov.br/busca/SRU

LEXML_CACHE_TTL

Cache local de pesquisas LexML, em segundos

900

LEXML_RATE_LIMIT

Máximo de chamadas LexML por segundo

2

JURIDICO_CORPUS_DB

Banco SQLite do corpus local

data/corpus_juridico.sqlite3

JURIDICO_EMBEDDING_DIMENSIONS

Dimensão do embedding local

384

JURIDICO_VISUAL_LAW_DIR

HTMLs Visual Law e auditorias JSON gerados

data/visual-law


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    embedding

Fontes 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-brasil acessa 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 quando JURIDICO_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 Request

Veja 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 tools
auditar_citacoes_juridicasC

Recusa agregador, LexML isolado e jurisprudência sem inteiro teor oficial.

ParametersJSON Schema
NameRequiredDescriptionDefault
citacoesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the disclosure burden. It does reveal a non-obvious behavioral trait: the tool rejects aggregators, isolated LexML, and jurisprudence without official full text. It does not disclose whether the operation is read-only, whether it mutates anything, or what happens with accepted citations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence with no filler, and the key restriction is front-loaded. It is appropriately short for a one-parameter tool, though the brevity borders on cryptic.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value documentation is not required, and the tool is structurally simple. Even so, the description omits the main action and input structure, leaving too much to inference. The refusal criteria alone are not a complete operating context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It gives domain-level clues about citation source types but does not define any field of the 'citacoes' array objects. This is insufficient for an agent to construct a valid input confidently.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific rejection behavior ('Recusa...') for three citation categories, which adds operational detail beyond the tool name. However, it never explicitly says the core action 'audit' or 'validate', so the reader must infer the main purpose from the tool name. It also does not differentiate itself from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to choose this tool over alternatives; it does not name any sibling or condition. The refusal rule implies a validation context but leaves the selection decision entirely to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
tribunalNoSigla do tribunal (ex: 'TJSP', 'TRF4', 'STJ'). Se omitida, o sistema tenta localizar o processo em todos os tribunais (operação mais lenta).
numero_processoYesNúmero no formato CNJ (ex: '0001234-56.2023.8.26.0100') ou sem formatação (20 dígitos).

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral burden. It adds meaningful context by revealing the tool consults the public DataJud API, covers 91 tribunals, and becomes slower when no tribunal is specified. It does not disclose potential failure modes, rate limits, or authentication expectations, but for a read-style public API lookup the disclosed context is reasonably helpful.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded. The first sentence states the purpose, the second describes the data source and return contents, and the third gives relevant scope coverage. Every sentence contributes useful information with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists and the input schema fully documents both parameters, the description is largely complete for direct invocation. It covers data source, scope, and return categories, though it does not provide explicit sibling-routing guidance or failure/error expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description reinforces the CNJ-number concept but adds no parameter-level meaning beyond what the schema provides, such as format requirements or the performance implication of omitting tribunal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Busca os dados de um processo judicial pelo número CNJ' and enumerates the returned data (metadados, classe, assuntos, órgão julgador, partes, movimentações). It is clear, but it does not explicitly differentiate this tool from closely related siblings such as listar_movimentacoes, which may also expose movement data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used to look up process data by CNJ number and provides useful operational guidance about the slower search when tribunal is omitted. However, it never states when to prefer this tool over alternatives like listar_movimentacoes or resumir_andamento, nor does it mention exclusions or complementary use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
ufNoSigla da UF para incluir feriados estaduais no cálculo (ex: 'SP', 'RJ', 'MG'). Se omitida, usa apenas feriados nacionais.
tipo_atoNoTipo do ato processual para selecionar prazo CPC (ex: 'Contestacao', 'Embargos de Declaracao'). Se omitido, usa prazo padrão de 15 dias úteis.
tribunalYesSigla do tribunal (ex: 'TJSP', 'TRF1').
numero_processoYesNúmero no formato CNJ (NNNNNNN-DD.AAAA.J.TT.OOOO).
data_intimacao_isoNoData de intimação/publicação em ISO 8601 (ex: '2025-01-15'). Se omitida, usa a data da última movimentação disponível no DataJud.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description carries the full behavioral burden. It discloses the key calculation behavior: business days, next-day start term, and judicial recess suspension from 20 Dec to 20 Jan. It does not describe fallback behavior or errors, but the core behavior is explicit and non-destructive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with the core purpose front-loaded and the legal details compactly presented. Every phrase contributes value and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for a calculation tool: it states the legal rules, the calendar scope, and the calculation behavior. The input schema thoroughly documents all parameters, and an output schema exists, so return values do not need to be explained in the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds legal context but does not provide parameter-level semantics beyond what the schema already documents for uf, tipo_ato, tribunal, and data_intimacao_iso.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and object: 'Calcula o próximo prazo processual em dias úteis com calendário forense.' It also cites the exact CPC articles implemented, clearly distinguishing it from sibling tools such as buscar_processo_por_numero and listar_movimentacoes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the intended use obvious: calculate a procedural deadline using business days and forensic-calendar rules. It does not explicitly list exclusions or alternative tools, but none of the sibling tools appear to offer the same deadline-calculation function.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

confirmar_leitura_intimacaoConfirmar leitura de intimação no DJeA
Destructive

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:

  1. confirmar=True deve ser passado explicitamente nesta chamada.

  2. 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

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmarNoDEVE ser True para indicar que o operador está ciente do efeito jurídico e deseja prosseguir. False por padrão. Mesmo com True, a operação só é executada se DJE_PERMITIR_CONFIRMACAO_LEITURA=true estiver no ambiente.
id_intimacaoYesID único da intimação no DJe (obtido via listar_intimacoes).
numero_processoYesNúmero CNJ do processo (ex: '0001234-56.2023.8.26.0100').

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

This is an excellent behavioral disclosure. The description explicitly warns that the action is irreversible, registers an official timestamp, starts a legal deadline, defaults to dry-run, and depends on an environment variable. This goes far beyond the annotations' destructiveHint and idempotentHint, giving the agent complete awareness of side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Although long, the description is highly structured and every section earns its place. The high-risk warning is front-loaded, the safety gate is clearly separated from credentials, and the text is formatted for quick scanning. This is appropriate for a high-stakes, irreversible operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers prerequisites, side effects, irreversibility, the dry-run fallback, required credentials, and operational constraints. Together with the output schema and annotations, it fully equips an agent to decide whether and how to invoke the tool safely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers all three parameters with 100% description coverage, so the baseline is 3. The description adds meaningful extra context by tying confirmar to the safety gate, clarifying id_intimacao's provenance via listar_intimacoes, and emphasizing the real-world legal effect of the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Confirma a leitura de uma intimação'), the target system ('Domicílio Judicial Eletrônico'), and the legal consequence (starting the procedural deadline). This makes the tool immediately distinguishable from siblings like listar_intimacoes or buscar_processo_por_numero.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides strong contextual guidance: it requires confirmar=True and DJE_PERMITIR_CONFIRMACAO_LEITURA=true for real execution, and it mentions that id_intimacao comes from listar_intimacoes. It does not explicitly state when not to use the tool or compare it to alternatives, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

construir_argumento_juridicoC

Estrutura Fato→Prova→Norma→Subsunção→Consequência→Pedido com fontes locais.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
teseYes
fatosYes
pedidoYes
jurisdicaoNo
data_referenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the output structure and that local sources are involved; it does not explain side effects, read/write behavior, how sources are selected, or what the response contains.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, but it is so terse that it becomes cryptic. It conveys the structural chain, yet omits enough detail that the brevity is under-specification rather than polished conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex six-parameter legal tool with no annotations and no schema-level descriptions. The one-line phrase is far from sufficient for an agent to know when, why, or how to call it, even if an output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has six parameters with 0% description coverage, so the description must compensate. It only alludes to fatos, pedido, and perhaps lei/Norma through the structural chain, while tese, jurisdicao, and data_referencia remain unexplained and unmapped.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Estrutura Fato→Prova→Norma→Subsunção→Consequência→Pedido com fontes locais' communicates that the tool works with legal arguments and uses a defined structural chain, so it is not a bare tautology. However, it lacks an explicit action verb and does not distinguish this tool from near-sibling redigir_argumento_juridico.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to invoke this tool instead of alternatives. It never mentions conditions, prerequisites, or exclusions, and it does not reference related tools such as redigir_argumento_juridico or preparar_minuta_juridica.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

consultar_corpus_juridicoC

Busca por quatro perspectivas explicáveis, com fonte e redução de redundância.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
limiteNo
perguntaYes
jurisdicaoNo
tipo_fonteNo
diversidadeNo
data_referenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden. It discloses that results are organized into four explainable perspectives, include a source, and have redundancy reduction, but it does not clarify ordering, filtering behavior, or whether the operation is read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence with no filler; the core search behavior and unique output features are front-loaded. It is concise, though the brevity sacrifices detail that other dimensions capture.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given seven parameters, no annotations, and a high-risk ambiguity around search alternatives, the description is too thin to fully guide correct invocation. An output schema exists, which covers return shape, but parameter semantics and selection criteria still depend on external inference.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description needed to compensate, but it does not explain pergunta, lei, limite, jurisdicao, tipo_fonte, diversidade, or data_referencia. The phrase 'redução de redundância' hints at the diversity parameter, but this is indirect and insufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action ('Busca') and, combined with the tool name, identifies the resource as the legal corpus. It also specifies a distinctive behavior: retrieving four explainable perspectives with sources and redundancy reduction, which sets it apart from simple listing or synchronization tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool instead of related search tools such as pesquisar_lexml or construir_argumento_juridico. The description implies a search use case but does not state prerequisites, exclusions, or alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

diagnosticar_neurodiversidade_juridicaC

Explica como as perspectivas votaram e onde houve discordância ou repetição.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
limiteNo
perguntaYes
jurisdicaoNo
tipo_fonteNo
diversidadeNo
data_referenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full disclosure burden. It reveals only that the tool produces an explanation of voting, disagreement, and repetition, but says nothing about whether it triggers external analysis, how it uses the `diversidade` threshold, or what workflow it executes. The disclosure is minimal and mostly restates the obvious diagnostic function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single sentence is structurally clean and front-loaded with the main action. However, at roughly 11 words for a complex 7-parameter diagnostic tool with zero schema coverage, this brevity crosses into under-specification rather than genuine conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

High complexity (7 parameters, 1 required, 0% schema coverage, no annotations) combined with an 11-word description leaves the tool essentially unusable for correct invocation. The output schema mitigates return-value uncertainty, but the agent is left guessing what `pergunta` expects, what `diversidade` controls, and what the overall workflow is.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for 7 parameters. It offers only loose conceptual hints ('discordância' relates to `diversidade`; 'votaram' implies a question like `pergunta`), but never explains the roles of `lei`, `jurisdicao`, `tipo_fonte`, `limite`, or `data_referencia`. This is insufficient compensation for a 7-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource ('explica como as perspectivas votaram... discordância ou repetição') and is functionally distinct from all siblings. However, it relies on unexplained jargon ('perspectivas votaram') that neither the tool name ('neurodiversidade jurídica') nor the parameters clarify, making the core purpose fuzzy for an agent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance whatsoever about when to use this tool versus alternatives. It does not name any sibling, state conditions for selection, or mention any exclusion criteria. An agent must infer its place among 25 related legal tools with no support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estatisticas_corpus_juridicoA

Mostra cobertura, datas, hashes e localização do banco jurídico local.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the disclosure burden, and 'Mostra' clearly signals a read-only operation on a 'banco jurídico local,' implying no external calls or mutations. It also discloses what the output covers. It does not mention auth or performance, but for a zero-parameter local status tool the key behavioral traits are covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with a front-loaded verb and concrete output categories; no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-parameter informational tool with an output schema, the description covers the essential output dimensions and clearly signals it inspects the local corpus. It is slightly weaker on guiding the agent to choose it over sibling corpus tools, but that is a usage-guideline gap rather than a completeness gap for the call itself.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the input schema is complete and there is nothing for the description to clarify. The description instead adds meaning about the output dimensions, which is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Mostra'), a resource ('banco jurídico local'), and the exact information returned (coverage, dates, hashes, location). This clearly separates it from siblings like listar_fontes_corpus_juridico and consultar_corpus_juridico, which cover different aspects of the corpus.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool instead of the closely related corpus tools. The description does not mention alternatives, exclusions, or a recommended context such as checking corpus health before synchronization.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
alvosYes
concorrenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully carries behavioral disclosure and does so well: it says the run is finite, fault-tolerant, deduplicated, failures do not cancel other processes, and—critically—it is read-only and never confirms notifications in DJe. This gives the agent a clear safety model.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five short sentences, each carrying distinct information: scope, required target fields, dedup, fault tolerance, and side-effect safety. The purpose is front-loaded and every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-annotation tool with a non-trivial RPA behavior, the description covers input requirements, failure semantics, and side-effect safety; the output schema handles return values. The only notable gap is the undocumented 'concorrencia' parameter, and the description does not say what happens when more than 50 targets are supplied.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It documents the required shape of each 'alvos' entry (numero_processo, tribunal, desde_iso) and deduplication behavior, but it says nothing about the 'concorrencia' parameter, leaving its semantics to inference from its name and default value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a concrete action and scope: executes a finite, fault-tolerant RPA cycle for up to 50 processes. This clearly identifies the batch-monitoring function, but it does not name or contrast any sibling such as monitorar_processo, so differentiation is left to the reader.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description signals batch context (até 50 processos) and implies this is for multiple targets, but it never states when to choose this tool over singular tools like monitorar_processo or listar_movimentacoes. There are no explicit when/not-when conditions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

gerar_documento_visual_lawB

Gera HTML Visual Law autocontido e auditoria JSON, sempre sujeito a revisão humana.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
teseYes
fatosYes
pedidoYes
tituloYes
jurisdicaoNo
nome_arquivoNo
data_referenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Não há annotations, então a descrição carrega o peso da transparência. Ela revela traços úteis: o HTML é autocontido e o resultado deve passar por revisão humana. Contudo, não informa efeitos colaterais, permissões necessárias, limitações ou se grava arquivos no sistema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A descrição é uma frase única, direta e sem palavras redundantes, carregando a informação principal no início. É concisa, embora pequena demais para cobrir a complexidade do tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Com 8 parâmetros, 0% de cobertura de descrição no schema e nenhuma annotation, a descrição é insuficiente para um agente invocar a tool corretamente. A existência de output schema ajuda nos retornos, mas o agente ainda não sabe como preencher os parâmetros nem quando escolher esta tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

A cobertura do schema é 0% e a descrição não define nenhum dos 8 parâmetros. O significado de tese, fatos, pedido, lei, jurisdicao, nome_arquivo e data_referencia fica totalmente a cargo dos nomes, sem orientação sobre formatos, obrigatoriedade ou relações entre eles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

A descrição é específica: verbo 'Gera' + recursos 'HTML Visual Law autocontido' e 'auditoria JSON'. Diferencia-se claramente de irmãos como gerar_documento_word_juridico, porque declara o formato Visual Law HTML.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

O uso é inferido pela geração de Visual Law, e a frase 'sempre sujeito a revisão humana' orienta que a saída precisa ser checada. Porém, não há indicação explícita de quando usar em vez de alternativas como gerar_documento_word_juridico ou redigir_argumento_juridico.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

gerar_documento_word_juridicoC

Gera DOCX formal a partir do harness, com fontes clicáveis e gates visíveis.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
teseYes
fatosYes
pedidoYes
tituloYes
jurisdicaoNo
nome_arquivoNo
data_referenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions clickable sources and visible gates, but does not explain side effects, file creation behavior, overwrite risks, required permissions, or how the harness state is consumed. This leaves significant behavioral ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler words, which is efficient and easily parsed. The brevity is a strength, though the cryptic terms 'harness' and 'gates' reduce clarity and force the agent to infer their meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a document generation tool with eight parameters and no annotations, so a richer description is needed. The output schema may cover return values, but the description still omits important contextual details: what 'harness' refers to, how 'fatos' should be structured, how the output file is named, and whether existing files are replaced.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain any of the eight parameters. Required fields like 'titulo', 'tese', 'fatos', and 'pedido' are only understandable from their names, and optional parameters such as 'lei', 'jurisdicao', 'nome_arquivo', and 'data_referencia' receive no additional meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a clear verb ('Gera') and identifies the resource ('DOCX formal'), which conveys the tool's core purpose. However, terms like 'harness', 'fontes clicáveis', and 'gates visíveis' are domain jargon that may confuse an agent, and the description does not differentiate this tool from related siblings such as 'gerar_documento_visual_law'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no indication of when to choose this tool over alternatives like 'gerar_documento_visual_law', 'preparar_minuta_juridica', or 'redigir_argumento_juridico'. No prerequisites, exclusions, or scenario-based guidance are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listar_fontes_corpus_juridicoA

Lista as leis principais e URLs oficiais aceitas pelo RPA local.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so the description carries the behavioral burden. 'Lista' strongly implies a read-only operation, and the phrase 'aceitas pelo RPA local' clarifies that it enumerates pre-accepted sources rather than fetching live data. It does not explicitly state that no mutation or sync occurs, but for a zero-parameter listing tool this is a minor gap rather than a serious omission.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one focused sentence with no filler, and the key verb and resource appear immediately. It is appropriately sized for a tool with zero parameters and an output schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter listing tool with an output schema, the description covers the essential facts: what items are returned and the acceptance context. A minor gap is that 'RPA local' is not defined, but sibling context and the output schema fill most potential needs, so it is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, so the baseline is 4 and there is nothing for the description to add beyond the schema. The sentence still enriches the meaning by naming exactly what is listed (main laws and official URLs), even though no parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lista') and a concrete resource ('leis principais e URLs oficiais aceitas pelo RPA local'), making the tool's purpose immediately obvious. It also distinguishes this listing tool from corpus siblings like consultar_corpus_juridico and sincronizar_corpus_juridico by scoping it to accepted sources. No ambiguity remains about what is returned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The described behavior implies the tool should be used when the agent needs to enumerate the main laws and official URLs accepted by the local RPA. However, it gives no explicit when-not-to-use guidance or pointers to alternatives such as sincronizar_corpus_juridico or consultar_corpus_juridico. With no parameters, the use case is reasonably inferable, but it is not made explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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)

ParametersJSON Schema
NameRequiredDescriptionDefault
limiteNoNúmero máximo de comunicações a retornar (padrão: 50).
numero_processoNoNúmero CNJ para filtrar comunicações de um processo específico (ex: '0001234-56.2023.8.26.0100'). Se omitido, retorna todas as comunicações recentes.
apenas_pendentesNoSe True (padrão), retorna apenas comunicações ainda não confirmadas como lidas.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral disclosure burden. It explicitly states 'Operação SOMENTE LEITURA - sem efeito jurídico', discloses that secret-justice intimações have suppressed content, and lists required credentials. It does not cover pagination or error handling, but the disclosed traits are meaningful and not redundant.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and read-only safety notice, followed by return behavior and a compact bulleted credential list. There is no redundant or filler text, and each sentence contributes essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for an agent to invoke the tool correctly: it explains the operation's read-only nature, the credential requirements, the filtering context, and the secret-justice special case. Since an output schema exists and the input schema is fully documented, nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters (limite, numero_processo, apenas_pendentes) are already documented with defaults and examples. The description does not add parameter-level semantics beyond the schema, though it adds useful environment-variable context for authentication. A baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Lista comunicações processuais do Domicílio Judicial Eletrônico (DJe)', and clarifies the scope by enumerating intimações, citações e notificações. The focus on DJe communications and the read-only qualifier make it distinguishable from siblings like listar_movimentacoes and confirmar_leitura_intimacao.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly conveys that this is the read-only listing operation for DJe communications and specifies the required credential environment variables. It does not explicitly state when to prefer an alternative or when not to use this tool, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limiteNoNúmero máximo de movimentações a retornar (padrão 20, max 50).
tribunalYesSigla do tribunal (obrigatória nesta tool para evitar varredura de todos os índices).
numero_processoYesNúmero no formato CNJ.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden of behavioral disclosure. It does disclose the output fields, ordering, and the performance rationale for the required tribunal parameter. However, it does not mention failure modes, pagination beyond the limit parameter, or any other side effects, though none seem likely for a read-only listing tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loaded with the main purpose and followed by a concise statement of the return format and ordering. There is no fluff, and every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple listing tool with three parameters, complete schema coverage, and an output schema, the description is largely sufficient. It explains what is returned and the ordering. The only gap is the lack of explicit behavior around errors or edge cases, but these are less critical given the low complexity and read-only nature of the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter is already documented in the input schema. The tool description adds context about what is returned but does not add additional meaning to the parameters themselves. A baseline of 3 is appropriate when the schema already provides complete parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb ('Lista') and a specific resource ('movimentações de um processo judicial'), and goes on to specify the returned fields and ordering. It does not explicitly differentiate from siblings like listar_intimacoes or resumir_andamento, but the resource is unambiguous enough that an agent can tell what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the description: list recent movements for a judicial process. However, there is no explicit guidance on when to choose this tool over alternatives such as resumir_andamento or listar_intimacoes, nor any mention of exclusions or prerequisites. The tribunal parameter note adds a performance constraint but not usage routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listar_normas_regulamentadorasA

Vasculha o catálogo oficial do MTE e lista NRs vigentes e revogadas.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the transparency burden. It discloses the source (official MTE catalog) and that both active and revoked NRs are listed, but does not mention network dependency, freshness, failure behavior, ordering, or output format. This is adequate for a simple listing tool but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence front-loads the action and result with no filler, no repetition of the tool name, and every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless listing tool with an output schema, the description is nearly complete: it identifies the source and scope. It does not mention error or unavailability behavior, but the low complexity and presence of an output schema reduce the need for more detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100%, so the zero-parameter baseline of 4 applies. The description does not need to add parameter-level meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs ('vasculha' and 'lista'), names the resource ('catálogo oficial do MTE'), and explicitly states the result set includes both vigentes and revogadas NRs. This clearly differentiates it from the sibling synchronization tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used when someone needs a list of NRs from the official MTE catalog, but it does not explicitly state when to use it over alternatives or provide any exclusions. The related sibling 'sincronizar_normas_regulamentadoras' is not referenced.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral burden. It discloses the in-memory, session-scoped nature and exactly what the tool returns (numbers list and total), making it evident that this is a read-only listing operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and informative, with the key scoping information front-loaded. However, the first two sentences largely restate the same idea ('Lista processos com snapshot' vs 'Retorna os números... snapshot salvo'), introducing minor redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter listing tool with an output schema, the description is fully sufficient. It explains what the tool does, what it returns, and how to obtain full snapshot data, leaving no critical gap for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters, so the baseline is 4. The description adds no parameter syntax, but none is needed; it still clarifies the output shape the agent should expect.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lista') and resource ('processos com snapshot em memória na sessão atual'). It clearly distinguishes itself from siblings like monitorar_processo by narrowing the scope to session-scoped saved snapshots and pointing to the processo://resource for full data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly defines its context: a session-limited listing of snapshots. The instruction to use the processo://{numero}/snapshot resource for full data provides a useful boundary, though it does not explicitly name alternative tools or state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listar_tipos_minuta_juridicaA

Lista minutas suportadas e os campos recomendados para cada uma.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description correctly signals a read-only lookup via 'Lista' and identifies the content returned. It does not discuss data source, freshness, authentication, or rate limits, but for a zero-parameter catalog action those omissions are minor.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One concise sentence with the action front-loaded and no filler. Every phrase ('suportadas', 'campos recomendados') conveys meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless listing tool with an output schema, the description is essentially complete. The only gap is the absence of an explicit bridge to sibling tools such as preparar_minuta_juridica, which would clarify the larger workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the 0-param baseline of 4 applies. There is nothing additional the description needs to add about parameter behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lista') and a precise resource ('minutas suportadas') and adds what the listing contains ('os campos recomendados para cada uma'). It clearly separates this catalog/lookup tool from action-oriented siblings like preparar_minuta_juridica.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to call this tool or when to prefer one of its siblings. It says only what it lists; it does not state that it should be consulted before preparar_minuta_juridica or mention any exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description carries the behavioral disclosure burden. 'Lista' implies a read-only operation, and the description explicitly states it returns siglas usable downstream, clarifying the main behavioral and output contract. It does not mention pagination, ordering, or side effects, but for a simple zero-parameter enumeration tool this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no redundant content. It front-loads the core purpose (listing supported tribunals) and then explains the practical value of the return values. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple zero-parameter list operation with an output schema available, the description fully covers what the tool does and why it matters. It states the total count, the output content (siglas), and the relationship to other tools' parameters. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. There is no parameter description needed, and the description adds relevant context by explaining that the returned siglas feed into the 'tribunal' parameter of other tools, which is more useful than simply noting there are no inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lista') with a clear resource ('todos os tribunais suportados pelo MCP') and adds a precise scope detail (91 total). It also states what the tool returns and how that output is used, making it clearly distinct from the many other 'listar_*' sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly indicates the tool's purpose: to provide valid court acronyms for the 'tribunal' parameter of other tools. This implies when an agent needs to know supported tribunals before calling other tools, this is the one to use. It does not explicitly state when not to use it or mention alternatives, but no competitors exist among the siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tribunalYesSigla do tribunal (obrigatória para monitoramento).
desde_isoYesData/hora de referência em formato ISO 8601 (ex: '2024-01-15T08:00:00').
numero_processoYesNúmero no formato CNJ.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. It usefully states that this is a polling implementation with no real-time guarantee and that a push notification phase is planned. However, it does not cover failure modes, rate limits, or an explicit read-only guarantee.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main behavior and followed by a concise implementation note. Every sentence earns its place and there is no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple check-oriented tool with fully documented parameters and an output schema, the description is mostly complete. It could be stronger on when to use alternatives and edge-case behavior, but the core invocation context, including the polling/no-real-time caveat, is covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents all three parameters, including ISO format and CNJ format requirements. The description adds little beyond the phrase 'após a data informada', but the schema does the heavy lifting, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action and resource: it checks whether a process had an update after a given date. This is specific enough to understand the core function, but it does not explicitly differentiate from siblings such as executar_monitoramento_em_lote or listar_movimentacoes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: call this tool to determine whether a process was updated after a date. The mention of polling via DataJud without real-time capability is useful context, but the description does not explicitly say when to prefer alternatives like executar_monitoramento_em_lote or listar_movimentacoes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
campoNotodos
limiteNo
paginaNo
termosYes
ano_fimNo
ano_inicioNo
autoridadeNo
localidadeNo
tipo_documentoNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden of behavioral disclosure. It explains the protocol (SRU/CQL) and the return payload (URN, ementa, assuntos, resolver link), which is useful. However, it does not disclose limitations such as pagination behavior, external service dependency, or whether the search is read-only and safe to invoke without side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: it opens with the core action and resource, then lists accepted fields, optional filters, and return values. Every sentence adds distinct value with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters, no schema descriptions, and no annotations, the description is incomplete. It covers high-level functionality but misses required-parameter semantics, pagination controls, and any guidance on how fields/filters interact, so an agent lacks enough detail to invoke it correctly in all cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the text must compensate for the 9 parameters. It adds meaning for `campo` by listing accepted values and for the optional filters (tipo_documento, localidade, autoridade, ano_inicio, ano_fim). However, it completely omits the required `termos` parameter and the pagination parameters `limite` and `pagina`, leaving the most essential input unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear, specific action: searching legal metadata in the official LexML collection via SRU/CQL. It further differentiates the tool by specifying accepted search fields, optional filters, and return values, making its purpose distinct from siblings like resolver_urn_lexml or consultar_corpus_juridico.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for use: searching LexML metadata with configurable fields and filters. It does not explicitly name alternative tools or state when not to use this tool, but the stated scope is enough for an agent to infer the appropriate scenario.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tomNotécnico, claro e persuasivo
dadosYes
objetivoYes
tipo_documentoYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It usefully discloses that the result always requires human review, which is an important behavioral expectation. It does not, however, clarify side effects, permissions, or whether the tool only generates text without modifying external state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the main purpose first, then lists accepted inputs, and ends with the human-review caveat. Every sentence contributes useful information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is incomplete for a tool with no annotations and no schema-level descriptions. It explains which document types are accepted and that human review is required, but it does not explain what 'dados' should contain or how 'objetivo' should be phrased, leaving a critical input opaque despite the output schema being present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds meaningful value for tipo_documento by enumerating accepted values and the alias 'ct', but it leaves objetivo, dados, and tom essentially unexplained. Since these are core parameters, the semantic gap is significant.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool prepares a legal minuta and professional prompt anchored in local articles, which is a specific verb plus resource. The list of accepted document types adds useful scope, though it does not explicitly differentiate from sibling drafting tools like redigir_argumento_juridico or gerar_documento_word_juridico.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives an explicit list of accepted document types, which implies when the tool is appropriate, and notes that human review is always required. However, it does not state when not to use this tool or suggest an alternative sibling, so the usage guidance remains somewhat inferential.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

redigir_argumento_juridicoC

Executa o harness de regra, prova, aplicação, contraditório e revisão.

ParametersJSON Schema
NameRequiredDescriptionDefault
leiNo
teseYes
fatosYes
pedidoYes
jurisdicaoNo
data_referenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only describes an internal-looking pipeline of rule, proof, application, adversarial review, and review, but fails to state whether the operation mutates data, requires permissions, is long-running, or what the output contains.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single sentence is compact and front-loaded with a verb, but it devotes its space to unexplained jargon and omits the practical details an agent needs. This reads as under-specification rather than economical clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters, 3 required, no annotations, and a close sibling, this description is far too incomplete. The presence of an output schema helps with return-value expectations, but purpose, usage context, and parameter semantics remain undefined.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description names none of the six parameters (tese, fatos, pedido, lei, jurisdicao, data_referencia). The legal parameter names may hint at meaning, but the description itself adds no semantic or format information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a verb (Executa) and a resource ('harness de regra, prova, aplicação, contraditório e revisão'), so it is not a pure tautology. However, the 'harness' concept is opaque, it does not say what the tool produces, and it does not distinguish this tool from the sibling construir_argumento_juridico.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives such as construir_argumento_juridico, preparar_minuta_juridica, or auditar_citacoes_juridicas. No prerequisites, exclusions, or context cues are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
urnYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It explicitly states that the operation is deterministic, does not consult the network, and that opening the returned URL remains subject to portal availability and security verification. This is strong, pertinent behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The primary purpose is front-loaded, and the second sentence adds necessary behavioral caveats without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, deterministic tool with an output schema, the description covers the operation, network behavior, and the post-resolution caveat. The output schema handles return-value details, so no critical calling information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no description for the single parameter `urn`, and schema description coverage is 0%. The description adds the domain meaning that the URN must be a Brazilian LEX URN, but it does not specify expected format, examples, or normalization behavior, so it only partially compensates for the gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action — validating a Brazilian LEX URN and returning its official resolver — which clearly identifies the tool's function. This distinguishes it from sibling tools like pesquisar_lexml, which suggests searching rather than resolving a URN.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a Brazilian LEX URN needs validation and resolution, and the deterministic/no-network note helps set expectations. However, it does not explicitly state when to prefer this tool over alternatives such as pesquisar_lexml, nor does it mention exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tribunalNoSigla do tribunal. Se omitida, o sistema pesquisa em todos.
numero_processoYesNúmero no formato CNJ.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It clearly signals read-only behavior with verbs like 'Retorna', 'busca', and 'devolve', and usefully discloses that the output includes instructions and that the MCP does not perform semantic summarization. It does not discuss side effects, permissions, or rate limits, but the read-only nature is evident.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded, with the core purpose in the first sentence and operational context plus the crucial MCP/model boundary in the following sentences. Every sentence earns its place; there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple parameter set, full schema descriptions, and the presence of an output schema, the description is complete enough for correct invocation. It states the data source, what is returned, and explicitly clarifies that summary generation is the model's responsibility, preventing a common misconception.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% parameter coverage, including CNJ format for numero_processo and the tribunal default behavior, so the baseline is 3. The description adds no parameter-specific meaning beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the operation: retrieving structured process data from DataJud for LLM-generated summaries. It distinguishes itself by stating that semantic summarization is intentionally left to the model, not the MCP, which separates it from raw-data-fetching or drafting siblings. However, it does not explicitly name sibling tools or exclusion criteria, so it falls just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: the agent should use this tool when it needs to produce a natural-language case summary, since the description says the data is returned 'para geração de resumo pelo LLM'. Yet there is no explicit when-to-use/when-not-to-use guidance and no reference to alternatives like buscar_processo_por_numero for raw process data.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
fontesNo
concorrenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the transparency burden. It discloses that this is a finite RPA, describes the full pipeline (download, separate, embed, save), and importantly reveals idempotency behavior via SHA-256 with no reindexing of unchanged documents. It does not cover rate limits or authorization, but core side effects are transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight, front-loaded sentences with no repetition. Each sentence adds non-obvious value: purpose, parameter-driven scope, and idempotency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values do not need to be described. The main invocation paths and idempotency are covered, but the undocumented 'concorrencia' parameter, absence of any annotation, and lack of guidance about running alongside other operations leave clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It richly explains 'fontes', including default behavior and the expected code source, but completely omits 'concorrencia'. With only two parameters, leaving one entirely undocumented is a significant gap for an agent deciding whether to adjust it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb sequence and resource: 'baixa, separa, embeda e salva artigos de fontes oficiais'. It clearly distinguishes the sync/ingestion role from query siblings like consultar_corpus_juridico and estatisticas_corpus_juridico, and also names the related listar_fontes_corpus_juridico as the source of codes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear context: omitting 'fontes' syncs the entire main catalog, while providing codes from listar_fontes_corpus_juridico scopes the operation. It lacks explicit 'when not to use' guidance or differentiation from sincronizar_normas_regulamentadoras, but the main use cases are clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sincronizar_normas_regulamentadorasB

Descobre PDFs vigentes no MTE, extrai itens e persiste embeddings com SHA-256.

ParametersJSON Schema
NameRequiredDescriptionDefault
nrsNo
concorrenciaNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden. It discloses that the tool persists embeddings and uses SHA-256, and that it discovers and extracts PDF items. However, it does not state whether existing embeddings are updated or replaced, whether network/MTE access is required, or whether the operation is idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the full pipeline without filler or redundancy. Each phrase adds a distinct stage: discovery, extraction, and persistence with integrity hashing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter ingest operation with no annotations, the description is too thin: it omits the meaning of nrs and concorrencia, any prerequisites or side effects, and when this sync should be run relative to sibling corpus tools. The existence of an output schema reduces the need to document return values, but operational context is still missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description does not explain either parameter. While names like 'nrs' and 'concorrencia' hint at meaning, the agent gets no explicit guidance about accepted values, units, or how the parameters affect the extraction/persistence pipeline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete pipeline: discovers current PDFs on MTE, extracts items, and persists embeddings with SHA-256. It clearly identifies the resource (regulatory norms from MTE) and differentiates from siblings like listar_normas_regulamentadoras and sincronizar_corpus_juridico by describing ingestion and persistence rather than listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit statement of when to call this tool or when to prefer an alternative such as sincronizar_corpus_juridico or listar_normas_regulamentadoras. The only guidance is implied by the verb 'sincronizar' in the name and the pipeline description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 26 tool updatesv0.5.0
    • First observedauditar_citacoes_juridicas
    • First observedbuscar_processo_por_numero
    • First observedcalcular_proximo_prazo
    • First observedconfirmar_leitura_intimacao
    • First observedconstruir_argumento_juridico
    • First observedconsultar_corpus_juridico
    • First observeddiagnosticar_neurodiversidade_juridica
    • First observedestatisticas_corpus_juridico
    • First observedexecutar_monitoramento_em_lote
    • First observedgerar_documento_visual_law
    • First observedgerar_documento_word_juridico
    • First observedlistar_fontes_corpus_juridico
    • First observedlistar_intimacoes
    • First observedlistar_movimentacoes
    • First observedlistar_normas_regulamentadoras
    • First observedlistar_processos_monitorados
    • First observedlistar_tipos_minuta_juridica
    • First observedlistar_tribunais
    • First observedmonitorar_processo
    • First observedpesquisar_lexml
    • First observedpreparar_minuta_juridica
    • First observedredigir_argumento_juridico
    • First observedresolver_urn_lexml
    • First observedresumir_andamento
    • First observedsincronizar_corpus_juridico
    • First observedsincronizar_normas_regulamentadoras

TDQS

B3.1/5.0
Disambiguation3/5

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.

Naming Consistency4/5

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.

Tool Count2/5

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.

Completeness4/5

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

ActivitySlowing
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables 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.
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    Self-hosted MCP connector for querying Brazilian legal jurisprudence via JurisprudenciaIA. Enables natural language legal research using Claude.ai, with tools for consulting, searching, and comparing jurisprudence and legal theses.
    12
    -
  • A
    license
    A
    quality
    B
    maintenance
    Connects AI assistants to Brazilian judicial data from DataJud CNJ and 91 courts, enabling process consultation, monitoring, and deadline calculation under the Civil Procedure Code.
    9
    93
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ehrodan/lexmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server