PJe-Calc MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PJe-Calc MCPMonte o cálculo trabalhista desta sentença e gere o arquivo .PJC"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PJe-Calc MCP
Apoie o projeto
A imagem acima é um QR Code Pix. Se esta ferramenta poupou seu tempo, considere apoiar com um café. A contribuição ajuda a manter o projeto atualizado e ativo: acompanhar as novas versões do PJe-Calc e das tabelas, corrigir falhas encontradas em cálculos reais e incluir novos tipos de cálculo.
Reclamações, ideias, falhas encontradas ou sugestões: contato@lumenaxis.dev.br
Conecta assistentes de inteligência artificial instalados no seu computador — Claude Desktop, Claude Code, Codex, Cursor, VS Code e outros — ao PJe-Calc Cidadão, o programa oficial de cálculos da Justiça do Trabalho.
Você entrega ao assistente a sentença e os documentos do processo. Ele monta o cálculo trabalhista inteiro dentro do PJe-Calc, e você só confere e clica em Liquidar.
Não funciona em chats de IA abertos no navegador (claude.ai, chatgpt.com, Gemini, Copilot na web...) nem em aplicativos de celular. O assistente precisa rodar no mesmo computador Windows em que o PJe-Calc está instalado. Veja onde funciona e onde não funciona.
Ferramenta de apoio. O cálculo é feito pelo próprio PJe-Calc, mas quem decide o que entra nele é o assistente, a partir do que você fornecer. Confira sempre o resultado antes de usar no processo. O assistente deve mostrar as premissas que adotou e o que não estava claro nos documentos.
Use um modelo de IA de ponta. A leitura de um processo inteiro (centenas de páginas, decisões que se reformam, cartões de ponto dia a dia) exige o modelo mais capaz que você tiver: GPT-6 Luna ou superior no Codex, Claude Sonnet 5.5 ou superior (como o Claude Opus 5.5) no Claude, e o equivalente de mesma geração nos outros assistentes. Veja qual modelo usar.
Related MCP server: ms-project-mcp
Jeito mais fácil: cole o link no seu agente
Se você já usa um agente de IA instalado no computador (Claude Code, Claude Desktop, Codex, Cursor, VS Code com Copilot...), basta colar o link nele:
https://github.com/lucianumm/PJeCalcMCP
Por exemplo: "Instale e configure este MCP para mim: https://github.com/lucianumm/PJeCalcMCP". O agente baixa, instala e registra a ferramenta seguindo as instruções para o agente abaixo.
Colar o link num chat aberto no navegador (claude.ai, chatgpt.com...) não instala nada: esse chat roda nos servidores da empresa e não tem acesso ao seu computador. Ele pode até explicar o projeto, mas não consegue baixar, instalar nem operar o PJe-Calc. Se você ainda não tem um agente no computador, veja a tabela em onde funciona ou use a instalação manual, que não precisa de agente nenhum.
Importante: é preciso ter o PJe-Calc Cidadão 2.16 instalado (baixado e extraído) no computador. Esta ferramenta opera o PJe-Calc da sua máquina: ela não substitui nem inclui o programa. Sem ele, nada funciona.
O que ele faz
Monta o cálculo completo no PJe-Calc:
dados do processo e das partes, datas do contrato e salários;
faltas, férias e cartão de ponto (inclusive horas extras a partir da jornada);
verbas e reflexos, com valores mês a mês quando os documentos pedem (o pago de cada contracheque, a quantidade de um mês);
piso salarial e vale-transporte das tabelas do PJe-Calc;
FGTS, INSS, imposto de renda, pensão, previdência privada, salário-família, seguro-desemprego, com os ajustes por competência das telas de ocorrências (base e depósito do FGTS, salários e contribuições já recolhidas do INSS, inclusive em lote);
honorários (inclusive sobre verbas escolhidas), multas, custas (inclusive custas fixas, autos e armazenamento), correção monetária e juros.
Na execução, atualiza o cálculo homologado com os pagamentos (depósitos, alvarás), os honorários, multas, pensão alimentícia e custas da execução (por ato, autos e armazenamento) e o precatório ou RPV, e atualiza também uma conta feita fora do PJe-Calc (Cálculo Externo). Faz vários cálculos de uma vez (um por reclamante ou por devedor).
Ajuda a ler os documentos: lista as páginas (e as escaneadas, que precisam ser vistas como imagem), extrai o texto de PDFs e as imagens das páginas escaneadas para o assistente enxergar, e confere holerites, cartões de ponto, extrato do FGTS e TRCT transcritos (somas, meses faltantes, marcações impossíveis).
Faz a auditoria pericial integral do processo antes de calcular: cada pedido da inicial até o comando final transitado, os documentos financeiros mês a mês, os cartões de ponto dia a dia e a parametrização de cada aba do PJe-Calc, com as lacunas e contradições apontadas.
Atualiza as tabelas de índices do PJe-Calc pelo tribunal do processo antes de liquidar.
Confere o que o PJe-Calc calculou: refaz a conta por conta própria (verbas, juros, FGTS, INSS, IR, honorários, custas) e compara ao centavo com os relatórios do programa; confere a soma das verbas, os valores negativos, as verbas que ficaram sem cálculo, os critérios que o sistema aplicou e as regras de validação do próprio PJe-Calc.
Compara com outra conta (do perito, da parte ou outro cenário), inclusive um relatório em PDF ou a conta transcrita, e mostra de onde vem cada diferença.
Entrega um arquivo de cálculo (
-PRONTO.PJC) que pode ser aberto em qualquer PJe-Calc 2.16 e liquidado direto, e, quando liquida, o relatório completo do PJe-Calc em PDF (-RELATORIO.pdf): resumo, dados, faltas e férias, histórico salarial, cartão de ponto, demonstrativo de cada verba com base, divisor, multiplicador e quantidade (dias e horas), juros, FGTS, contribuição social, IR, honorários, custas e justificativa, só com as seções que se aplicam ao cálculo.
Tudo roda no seu computador. O PJe-Calc é aberto e operado em segundo plano, sem você precisar mexer nele, e nenhum dado do processo é enviado a terceiros por esta ferramenta. O assistente de IA que você usar segue as regras dele.
Onde funciona e onde não funciona
Por que precisa de um agente no computador
Esta ferramenta é um servidor MCP. MCP (Model Context Protocol) é o padrão que permite a um assistente de IA usar programas que estão no seu computador. Aqui, o assistente usa o servidor para:
abrir o PJe-Calc instalado na sua máquina e operá-lo em segundo plano;
ler os documentos do processo que estão nas suas pastas;
criar, importar, liquidar e exportar os cálculos;
gravar os arquivos
.PJCe os relatórios no seu disco.
Por isso, o assistente tem de ser um programa instalado e aberto no mesmo computador Windows em que está o PJe-Calc, e precisa aceitar servidores MCP locais. Um chat que roda no site de uma empresa não enxerga o seu computador: para ele, o PJe-Calc e os seus arquivos não existem.
Funciona (assistentes instalados no Windows)
assistente | o que é | onde baixar (site oficial) | como o MCP entra |
Claude Desktop | aplicativo da Anthropic para Windows, com chat e a aba de código | extensão de um clique ( | |
Claude Code | agente da Anthropic no terminal, no VS Code e JetBrains e no Claude Desktop | https://claude.com/product/claude-code (documentação do MCP: https://code.claude.com/docs/en/mcp) | o instalador registra sozinho (comando |
Codex | agente da OpenAI no terminal, em extensões de editor e no aplicativo | https://github.com/openai/codex (documentação: https://developers.openai.com/codex) | o instalador registra sozinho ( |
Cursor | editor de código com agente de IA | https://cursor.com/download (documentação do MCP: https://cursor.com/docs/mcp) | o instalador registra sozinho |
VS Code com GitHub Copilot no modo agente | editor da Microsoft | https://code.visualstudio.com (documentação do MCP: https://code.visualstudio.com/docs/agent-customization/mcp-servers) | o instalador registra sozinho |
Windsurf, hoje chamado Devin Desktop | editor com agente de IA | o instalador registra na configuração do Windsurf; se não aparecer no Devin Desktop, registre à mão com o |
Cada assistente tem as próprias regras de conta e de plano: confira no site dele. Qualquer outro
programa que aceite servidores MCP locais também serve; os exemplos de registro estão em
mcp-config.json.
Não funciona
onde | por quê |
Chats de IA no navegador: claude.ai, chatgpt.com, gemini.google.com, Copilot na web e semelhantes | rodam nos servidores da empresa e não têm acesso ao seu computador nem ao PJe-Calc |
Aplicativos de celular e tablet (Claude, ChatGPT, Gemini...) | o PJe-Calc só roda no Windows, no computador |
Agentes que rodam na nuvem: Claude Code na web, Codex na nuvem (pelo site do ChatGPT) e semelhantes | trabalham numa máquina virtual remota, sem o seu PJe-Calc e sem os seus arquivos |
ChatGPT, pelo site ou pelo aplicativo | só aceita conectores que ficam na internet, não servidores MCP que rodam no seu computador; da OpenAI, use o Codex |
Computador com macOS ou Linux | a ferramenta e o instalador foram feitos e testados só para o PJe-Calc no Windows |
Também não funciona com o computador desligado ou com o assistente fechado: o assistente opera o PJe-Calc enquanto conversa com você.
Qual modelo usar
O MCP confere a aritmética e as regras do PJe-Calc, mas quem lê o processo e decide o que vai para o cálculo é o modelo de IA. Modelos menores ou mais rápidos pulam páginas, confundem decisões reformadas e erram datas. Para maior precisão:
assistente | modelo recomendado |
Codex (OpenAI) | GPT-6 Luna ou superior |
Claude Desktop e Claude Code (Anthropic) | Claude Sonnet 5.5 ou superior (por exemplo, Claude Opus 5.5) |
Cursor, VS Code com Copilot, Windsurf/Devin Desktop e outros | o modelo de ponta disponível, da mesma geração dos acima |
Escolha o modelo no seletor do próprio assistente. Quando houver nível de raciocínio ("esforço", reasoning effort), use o mais alto para ler processos e montar o plano.
Modelos de gerações anteriores ou versões "mini" e "rápidas" não são recomendados para montar cálculos; servem, no máximo, para perguntas simples sobre o PJe-Calc.
Nenhum modelo dispensa a sua revisão: o plano de interpretação existe para você conferir o que o assistente entendeu antes de calcular.
Como saber se está funcionando
Depois de instalar, feche e abra o assistente de novo.
Pergunte: "Verifique se o PJe-Calc MCP está funcionando."
O assistente deve usar ferramentas que começam com
pjecalc_,calculo_,catalogo_... (por exemplo,pjecalc_status) e responder se encontrou o PJe-Calc e se ele está aberto.
Se o assistente disser que não tem essas ferramentas, ele não carregou o MCP: rode
Conferir PJe-Calc MCP.bat, que mostra o que falta, e confira se o assistente usado é um dos da
tabela acima.
O que você precisa
Um computador com Windows.
Obrigatório: o PJe-Calc Cidadão 2.16 instalado, ou seja, baixado e extraído (disponível no site oficial do TRT da 8ª Região). Pode estar em qualquer pasta: o instalador encontra sozinho.
Um assistente de IA instalado no computador e compatível com MCP: Claude Desktop, Claude Code, Codex, Cursor, VS Code com Copilot ou Windsurf/Devin Desktop (veja a tabela, com os links oficiais). Chats no navegador não servem.
Como instalar
No Claude Desktop: extensão de um clique
Baixe o arquivo
pjecalc-mcp-<versão>.mcpbda página de versões.Dê dois cliques no arquivo (ou, no Claude Desktop, abra Configurações > Extensões e arraste o arquivo para a janela) e confirme a instalação.
Pronto. Os campos da extensão são opcionais: a pasta do PJe-Calc (em branco, o MCP encontra sozinho) e a pasta dos cálculos gerados (em branco,
Documentos\PJe-Calc MCP).
O Claude Desktop já traz o Node.js; não é preciso instalar mais nada além do PJe-Calc.
Em qualquer assistente: instalador para Windows
Baixe o arquivo
.zipda página de versões e extraia em qualquer pasta.Dê dois cliques em
Instalar PJe-Calc MCP.bat. O instalador:baixa o Node.js portátil oficial se ele não estiver no computador (sem instalar nada no Windows e sem pedir senha de administrador);
procura o PJe-Calc no computador. Se houver mais de uma instalação, pergunta qual usar; se não houver nenhuma, explica o que fazer;
pergunta em quais assistentes registrar e guarda uma cópia de segurança das configurações deles;
faz um teste rápido.
Feche e abra o assistente de novo.
Outros arquivos da pasta:
Conferir PJe-Calc MCP.batmostra se está tudo funcionando e o que falta.Desinstalar PJe-Calc MCP.battira o registro dos assistentes. O PJe-Calc e os seus cálculos não são tocados.
Instruções para o agente (instalação automática)
Se você é um assistente de IA instalando esta ferramenta para o usuário:
Confirme que você roda no computador do usuário, com acesso ao disco e ao terminal do Windows, e que aceita servidores MCP locais (stdio). Se você é um chat no navegador ou um agente na nuvem, não tente instalar: explique ao usuário que ele precisa de um assistente instalado no computador (tabela em onde funciona) ou da instalação manual.
Confirme que o PJe-Calc Cidadão 2.16 está instalado. Ele fica numa pasta que tem
binetomcat, baixada e extraída do site oficial do TRT da 8ª Região. Se não estiver, peça ao usuário que baixe e extraia o PJe-Calc. Não continue sem ele.Baixe a versão mais recente e extraia numa pasta do usuário. O arquivo
PJeCalcMCP-<versão>.zipestá em https://github.com/lucianumm/PJeCalcMCP/releases/latest. Também servegit clone https://github.com/lucianumm/PJeCalcMCP.Rode o instalador na pasta extraída.
Interativo, igual a
Instalar PJe-Calc MCP.bat: pergunta em quais assistentes registrar.powershell -NoProfile -ExecutionPolicy Bypass -File instalador\iniciar.ps1 instalarSem perguntas: defina antes
$env:INSTALADOR_SIM='1'. Ele registra em todos os assistentes encontrados.
O instalador garante o Node.js 20 ou mais novo (baixa o portátil oficial se faltar), localiza o PJe-Calc, registra o servidor com cópia de segurança das configurações e faz um teste. Se o PJe-Calc estiver numa pasta que ele não encontre, defina
PJECALC_HOMEcom essa pasta.Alternativa: registre só o seu próprio assistente. Use o servidor MCP (stdio)
node <pasta>\server\server.mjs, comPJECALC_HOMEapontando para o PJe-Calc. Omcp-config.jsontem exemplos para Claude, Codex, Cursor, VS Code e Windsurf. No Claude Code:claude mcp add pjecalc --scope user -e PJECALC_HOME=<pasta do PJe-Calc> -- node <pasta>\server\server.mjs.Confira a instalação. Rode
instalador\iniciar.ps1 conferire peça ao usuário que reabra o assistente.Para montar cálculos, siga o
SKILL.md. Comece pedindo os documentos (calculo_documentos_necessarios) e nunca grave cálculos direto no banco do PJe-Calc.
Como usar
Converse normalmente com o assistente, por exemplo:
Monte no PJe-Calc o cálculo desta sentença. Seguem a sentença, o acórdão, os holerites e os cartões de ponto.
Ou, para uma análise completa antes de calcular:
Faça a auditoria pericial integral deste processo e me mostre o plano.
O assistente:
identifica a fase do processo e os outros processos ligados a ele (ação anterior, coletiva, acordo, recuperação judicial...);
pede os documentos que o caso exige (sentença, acórdãos, holerites, cartões de ponto, TRCT, extrato do FGTS, documentos dos outros processos...) e confere se cobrem todo o período;
lê todas as páginas, inclusive as escaneadas, e pede os complementos que faltarem;
monta o título a partir de todas as decisões (vara, TRT, TST, STF, liquidação e execução);
mostra um plano de interpretação para você aprovar antes de calcular;
monta o cálculo no PJe-Calc e atualiza as tabelas de índices do seu tribunal;
mostra os valores, o que foi conferido e o arquivo pronto.
Na execução, por exemplo:
Atualize até hoje o cálculo homologado (arquivo anexo), abatendo o depósito de fl. 300 e o alvará de fl. 330, e inclua os honorários da execução.
Depois é só abrir o PJe-Calc, escolher o cálculo em "Abrir Cálculos Recentes", conferir e clicar em Operações > Liquidar.
Como funciona, em poucas palavras
O PJe-Calc tem uma função oficial de exportar e importar cálculos (arquivos .PJC). Esta ferramenta
monta esse arquivo a partir do que o assistente extraiu dos documentos.
Ela importa o arquivo no PJe-Calc do seu computador e usa as próprias telas do programa para os passos finais: regerar as verbas, apurar o cartão de ponto, atualizar tabelas, liquidar e, na execução, liquidar a atualização. Assim, todas as contas são feitas pelo motor oficial do PJe-Calc.
A ferramenta foi testada comparando cálculos montados por ela com os mesmos cálculos feitos à mão na tela do PJe-Calc, inclusive atualizações com pagamentos e cálculos externos. Os resultados foram idênticos, centavo por centavo.
Perguntas frequentes
Funciona no ChatGPT, no Claude ou no Gemini pelo navegador? Não. Chats no navegador e aplicativos de celular rodam nos servidores da empresa e não alcançam o seu computador, onde estão o PJe-Calc e os documentos. Use um assistente instalado no Windows: Claude Desktop, Claude Code, Codex, Cursor, VS Code com Copilot ou Windsurf/Devin Desktop (links na tabela).
Tenho conta no ChatGPT. Posso usar? Pelo site ou aplicativo do ChatGPT, não. Da OpenAI, o que funciona é o Codex instalado no computador (https://github.com/openai/codex). O Codex na nuvem, aberto pelo site, também não serve, porque roda numa máquina remota.
Tenho conta no Claude. Posso usar? Sim, pelo Claude Desktop (https://claude.com/download) ou pelo Claude Code (https://claude.com/product/claude-code), instalados no computador. Pelo site claude.ai, pelo aplicativo de celular ou pelo Claude Code na web, não.
Preciso saber programar? Não. Depois de instalado, você conversa normalmente com o assistente. O Claude Code e o Codex podem rodar no terminal, mas também têm aplicativo ou extensão de editor; o Claude Desktop é um aplicativo comum.
Onde ele procura o PJe-Calc? Nesta ordem:
na pasta escolhida da última vez;
no PJe-Calc que estiver aberto;
na pasta onde a ferramenta foi extraída;
em Downloads, Área de Trabalho, Documentos, Arquivos de Programas e na raiz dos discos.
Se você mudar o PJe-Calc de pasta, ele procura de novo sozinho.
Precisa de internet? Só para baixar o Node.js na instalação e para atualizar as tabelas de índices do PJe-Calc.
Posso usar com mais de um assistente? Sim. O instalador registra em todos os que você escolher.
O resultado é garantido? Não. O PJe-Calc calcula corretamente o que foi informado, mas a interpretação da sentença e dos documentos precisa ser conferida por você. Para facilitar, cada informação do cálculo fica ligada ao documento e ao trecho da decisão de onde saiu, e a ferramenta informa em que ponto o cálculo está:
aceito pelo aplicativo: o PJe-Calc aceitou;
calculado: os números foram conferidos, inclusive se nenhuma verba ficou sem cálculo;
simulação: a conta depende de uma hipótese ainda não decidida (por exemplo, um recibo contestado);
auditado: cada item tem origem na prova e na decisão que vale, sem dúvidas abertas, com os alertas revisados e o plano aprovado por você;
provisório: marcado quando ainda há decisão sujeita a recurso.
Em todos os casos, a revisão final é sua. O cálculo também deixa um registro com as versões e os dados usados, para poder ser reproduzido depois.
Onde estão as instruções
SKILL.md: as regras que o assistente segue, do começo ao fim do cálculo.references/: todos os campos aceitos, o contrato de dados, o roteiro de auditoria pericial e as conferências por assunto (leitura, jornada, pagamentos, FGTS e tributos, atualização, execução, conta de referência).exemplos/: cálculos completos prontos para usar como modelo.scripts/: os testes.
Créditos
Criado e mantido por Lucianum — Instagram @lucianum · GitHub @lucianumm
Aviso
Projeto independente, sem vínculo com a Justiça do Trabalho. O PJe-Calc Cidadão não faz parte deste repositório e deve ser baixado no site oficial.
Licença
Copyright (C) 2026 Lucianum.
Distribuído sob a GNU Affero General Public License v3.0 (AGPL-3.0). Você pode usar, estudar, modificar e redistribuir livremente. Quem distribuir uma versão modificada, ou oferecê-la como serviço pela rede, deve publicar o código-fonte sob a mesma licença.
Available Tools
71 toolscalculo_aprovar_planoRegistrar a aprovação do plano pelo usuárioA
Use SOMENTE depois que o usuário aprovou o plano de interpretação na conversa. Devolve o objeto contrato.aprovacao (quem, quando, observações, hash do contrato aprovado) para gravar na especificação; com arquivo_json e gravar=true, grava no próprio arquivo. Recusa se a auditoria tiver falhas. Qualquer mudança posterior no contrato ou no cenário invalida a aprovação.
| Name | Required | Description | Default |
|---|---|---|---|
| por | Yes | Quem aprovou (nome do usuário). | |
| gravar | No | Com arquivo_json: grava a aprovação no arquivo. | |
| observacoes | No | Correções ou ressalvas feitas pelo usuário ao aprovar. | |
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, idempotentHint=false), it discloses the return payload contents, that gravar=true with arquivo_json persists into the file itself, that it refuses when the audit has failures, and that downstream contract/scenario changes invalidate the approval. These are substantive behavioral traits that annotations do not carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the critical precondition, then behavior and constraints in a compact block. Every sentence carries information; formatting packs a lot into a few clauses, though slightly dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by describing the returned aprovacao object, and it covers the precondition, persistence behavior, and invalidation for a 5-parameter tool with nested objects. Complete enough to invoke correctly, though it does not detail especificacao's structure (delegated to calculo_modelo_json).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter semantics: the arquivo_json + gravar=true interaction and the mapping of por/observacoes into the returned aprovacao object. That goes beyond what the per-field schema descriptions convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action on a specific resource: registering the user's approval of the interpretation plan, and it names the artifact it produces (contrato.aprovacao). It is clear enough to distinguish from calculo_plano_interpretacao and calculo_validar, but it never explicitly names those siblings, so it lands 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a hard precondition (use ONLY after the user approved the plan in the conversation) plus refusal and invalidation conditions (refuses if the audit has failures; later changes to contract or scenario invalidate approval). No alternative tool is explicitly named for the not-yet-approved case, so it stops short of 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_apurar_cartao_pontoApurar o cartão de ponto (jornadas) de um cálculoA
Para um cálculo já no PJe-Calc com apurações de cartão de ponto cadastradas: salva cada apuração (o PJe-Calc gera as jornadas pela programação/escala, respeitando feriados, férias e faltas), clica em Apurar Cartão de Ponto (cria as colunas Hs EXT, Hs Trabalhadas, Hs Noturnas...) e, se pedido, liga verbas às colunas (quantidade ou divisor importados do cartão). Devolve o quadro mensal apurado. O botão Apurar só existe enquanto o cálculo não tem cartões; para refazer, exclua os cartões em Cartão de Ponto > Visualizar Cartão.
| Name | Required | Description | Default |
|---|---|---|---|
| regerar | No | Regera as ocorrências das verbas no fim (padrão true). | |
| vinculos | No | Verbas a ligar às colunas apuradas (quantidade ou divisor importados do cartão). | |
| id_calculo | Yes | Número do cálculo no PJe-Calc. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation/safety profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), and the description adds real context beyond them: it explains that jornadas are generated from the programação/escala respecting feriados, férias e faltas, that columns are created, and that the operation is effectively one-shot (button disappears once cards exist). It does not detail what happens to existing apurações or permission requirements, so it falls just short of full disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the precondition, then the operational steps and the redo caveat; every sentence carries information. It is a dense single paragraph that could be broken into steps, but there is little waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex, non-idempotent mutation with no output schema, the description covers preconditions, side effects, and the return value ('Devolve o quadro mensal apurado'). It omits only peripheral details like required state/permissions, so it is essentially complete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 id_calculo, regerar, and the vinculos array down to nested verba/cartao/tipo. The description restates the vinculos concept (ligar verbas às colunas, quantidade ou divisor importados do cartão) but adds no syntax or format beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (apurar/salvar cada apuração) and resource (cartão de ponto / jornadas de um cálculo já no PJe-Calc), and names the concrete artifacts it produces (colunas Hs EXT, Hs Trabalhadas, Hs Noturnas). This clearly separates it from siblings like cartoes_para_jornadas and calculo_regerar_ocorrencias.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit precondition ('Para um cálculo já no PJe-Calc com apurações de cartão de ponto cadastradas') and an explicit when-not/how-to-undo rule ('O botão Apurar só existe enquanto o cálculo não tem cartões; para refazer, exclua os cartões em Cartão de Ponto > Visualizar Cartão'). An agent knows exactly when this tool applies and how to repeat it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_atualizarAtualizar cálculo homologado (execução: pagamentos e eventos)A
Fase de execução: atualiza um cálculo LIQUIDADO (arquivo_pjc exportado depois de liquidar, ou id_calculo) com o bloco "execucao": dataAtualizacao, pagamentos (com a divisão entre crédito do reclamante, recolhimentos, outros débitos e débitos a cobrar), honorários e multas da execução, pensão alimentícia, custas da execução (fixas, autos e armazenamento), precatório ou RPV, cobrarEncargosIrpf. Todos os campos e exemplos em pjecalc://docs/modulos/execucao e em calculo_modelo_json (exemplos "execucao" e "execucao-pensao-custas"). Confere antes de importar as regras da tela de pagamento do PJe-Calc (MSG0125 a MSG0138, MSG0181, MSG0126, MSG0003), grava os eventos numa CÓPIA do cálculo, roda "Liquidar Atualização" (rateio e imputação do próprio PJe-Calc) e devolve o Resumo da Atualização (saldo por credor, total do reclamado, eventos), as verificações e o "-ATUALIZADO.PJC". O cálculo de origem não é alterado.
| Name | Required | Description | Default |
|---|---|---|---|
| destino | No | Pasta dos arquivos -EXECUCAO.PJC e -ATUALIZADO.PJC (padrão: ao lado do arquivo de origem ou saida/). | |
| iniciar | No | Inicia o PJe-Calc se estiver parado (padrão true). | |
| execucao | Yes | Bloco "execucao" (formato em calculo_modelo_json e no módulo execução). | |
| id_calculo | No | Alternativa: número do cálculo liquidado no PJe-Calc (é exportado e copiado). | |
| arquivo_pjc | No | .PJC do cálculo liquidado (exportado depois de liquidar). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, it discloses that the tool writes events into a COPY of the calculation, leaves the source unchanged, runs the PJe-Calc 'Liquidar Atualização' with rateio/imputação, performs validation checks against MSG rules, and returns the Resumo da Atualização plus '-ATUALIZADO.PJC'. This is rich behavioral context that an agent could not infer from the schema or annotations alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded, and every sentence carries useful information (fields, docs, validation, copy behavior, return artifacts). However, the dense single-paragraph style with many parentheticals makes it less scannable than it could be, so it is not maximally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex write tool with no output schema, the description covers the input preconditions, the execution-phase behavior, the internal liquidation step, and the returned artifacts. It also directs the agent to pjecalc://docs/modulos/execucao and calculo_modelo_json for full field details, making it adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is 100%, the nested 'execucao' object is only a free-form map in the schema; the description compensates by enumerating its key subfields (dataAtualizacao, pagamentos with credit/recolhimento splits, honorários, multas, pensão, custas, precatório/RPV, cobrarEncargosIrpf) and pointing to concrete examples. This adds material meaning beyond the structured definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (atualiza) and resource (cálculo liquidado) and scopes it to the execution phase, with the required 'execucao' block. It distinguishes this from the liquidation step by noting it runs 'Liquidar Atualização' internally and returns '-ATUALIZADO.PJC', so an agent can tell it apart from calculo_liquidar and calculo_importar_pjc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly states the phase context (execution phase) and input prerequisites: a liquidated calculation supplied either as an exported .PJC or an id_calculo. It does not explicitly name when-not scenarios or alternative sibling tools, so it falls short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_comparar_referenciaComparar com uma conta de referênciaARead-onlyIdempotent
Compara o cálculo com uma conta de referência (perito, parte, outro cenário) na mesma data-base. Cada lado é um cálculo do PJe-Calc (id) ou um .PJC exportado depois de liquidar (arquivo). Compara primeiro quantidades e valores nominais por ocorrência (com a causa local de cada diferença: quantidade, base, divisor, multiplicador, pago), depois a ponte por verba (nominal -> corrigido -> juros -> total, com o resíduo em relação ao bruto) e a ponte bruto -> FGTS/depósito/INSS/IR -> líquido. Não altera os cálculos. Igualdade de totais não substitui igualdade das ocorrências. Veja pjecalc://docs/modulos/referencia.
| Name | Required | Description | Default |
|---|---|---|---|
| data_base | No | Data-base da referência (AAAA-MM-DD) quando o relatório não a mostra. | |
| id_calculo | No | Cálculo a conferir (no PJe-Calc, já liquidado). | |
| tolerancia | No | Tolerância em reais (padrão 0,01). | |
| id_referencia | No | Conta de referência no PJe-Calc (liquidada na mesma data). | |
| arquivo_calculo | No | Alternativa: .PJC exportado do cálculo liquidado. | |
| referencia_manual | No | Alternativa: conta de referência transcrita (perito, planilha): { dataLiquidacao, verbas: [{ descricao, valorCorrigido, juros, total }], brutoDevidoAoReclamante, totalDescontos, liquidoDevidoAoReclamante, totalDevidoPeloReclamado, composicao: [{ descricao, valor }], origem }. | |
| arquivo_referencia | No | Alternativa: .PJC da conta de referência, ou o relatório do PJe-Calc da referência em PDF, HTML ou texto copiado (só o resumo é comparado). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description reinforces this ('Não altera os cálculos') while adding a non-obvious behavioral rule: equality of totals does not substitute equality of occurrences. That methodology caveat is genuine context beyond the annotations, though return shape/limits aren't detailed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core comparison purpose, then layered methodology, then a docs pointer. The sentences are dense but each carries real information (occurrence-level diffing, the causal factors, the gross-to-net bridge), so little is wasted despite the length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and 7 params including a nested object, the description carries the return-value burden and does reasonably: it spells out the comparison layers and the residual/residue notion. It stops short of describing the exact response shape or remediation of found differences, but is sufficient to call correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 every parameter including the nested referencia_manual structure. The description adds only high-level framing (the two-sided id/arquivo model, same base-date constraint), which is useful but not meaningfully beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (compare a calculation against a reference account) and immediately scopes it: same base date, each side being a PJe-Calc id or an exported .PJC. It also enumerates the comparison layers (occurrences then the verba/gross-to-net bridges), which cleanly separates it from siblings like calculo_validar or calculo_liquidar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains how to populate each side (id vs arquivo vs referencia_manual) and points to pjecalc://docs/modulos/referencia, so usage is implied and constructible. However, it never states when to reach for this over calculo_validar or other comparison-adjacent tools, so no explicit when/when-not guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_criarCriar cálculo completo no PJe-CalcA
Fluxo completo e recomendado para montar um cálculo. Valida a especificação, gera o .PJC, inicia o PJe-Calc se preciso, importa, apura o cartão de ponto por jornadas e liga as verbas às colunas, regera as ocorrências de verbas e reflexos e devolve o número do cálculo, as pendências da tela de liquidação e o "-PRONTO.PJC" (importável em qualquer PJe-Calc 2.16.x). Com liquidar_em, liquida e confere: justificativa, soma do resumo, recálculo independente das ocorrências e dos encargos, especificação × arquivo × relatório; grava o -LIQUIDADO.PJC, o relatório completo -RELATORIO.pdf e o registro de reprodução. Devolve "estado" (rascunho, aceito_pelo_aplicativo, calculado, simulacao, auditado), "verificacoes" e "bloqueiosDeEntrega"; a revisão para entrega é sempre humana. Com contrato de dados, não gera nada enquanto faltar documento obrigatório, houver falha na auditoria ou o plano de interpretação não estiver aprovado: devolve as travas e o pedido de documentos.
| Name | Required | Description | Default |
|---|---|---|---|
| destino | No | Onde gravar o .PJC (padrão: pjecalc-mcp-skill/saida). | |
| iniciar | No | Inicia o PJe-Calc se estiver parado (padrão true). | |
| liquidar_em | No | Opcional: data (dd/mm/aaaa ou aaaa-mm-dd) para uma liquidação de TESTE (o usuário pode liquidar de novo depois). | |
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. | |
| exportar_final | No | Grava o "-PRONTO.PJC" exportado após a importação (padrão true). | |
| ignorar_tabelas | No | Faz a liquidação de teste mesmo com tabelas desatualizadas (o resultado ficará errado). | |
| atualizar_tabelas | No | Se as tabelas de índices não cobrirem a liquidação, atualiza-as pelo TRT do processo (Atualização de Tabelas e Índices > Online). Padrão false: só avisa. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations only declaring readOnly=false/idempotent=false/destructive=false/openWorld=true, the description carries the real behavioral burden and delivers: side effects (starts PJe-Calc, imports, regenerates ocorrências, writes -PRONTO.PJC/-LIQUIDADO.PJC/-RELATORIO.pdf), a documented state machine ('estado': rascunho, aceito_pelo_aplicativo, calculado, simulacao, auditado), gate conditions ('bloqueiosDeEntrega'), and the caveat that delivery review is always human. That is substantive disclosure beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is front-loaded with the recommended-flow statement, but the body is a very long, run-on, jargon-heavy sentence with three dense clauses about liquidation, returns, and data-contract gating. Almost every clause carries real information, yet the wall-of-text structure makes it hard to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a high-complexity orchestration tool with no output schema and a nested free-form especificacao object, the description supplies what an agent needs: the full execution sequence, the returned fields and state values, the produced artifacts, the blocking/precondition rules, and the delimiter of automatic vs. human responsibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains every parameter (destino, iniciar, liquidar_em, exportar_final, ignorar_tabelas, atualizar_tabelas, etc.), making 3 the baseline. The description adds only a little param-linked meaning, mainly that liquidar_em triggers a TEST liquidation and the downstream verification set; it does not clarify the especificacao object contract beyond pointing at calculo_modelo_json.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific composite action ('Fluxo completo e recomendado para montar um cálculo') and enumerates the exact steps performed (validate spec, generate .PJC, import, apurar cartão de ponto, ligar verbas, regerar ocorrências, devolver número). It is unmistakably distinct from atomic siblings like calculo_gerar_pjc or calculo_importar_pjc. It does not, however, name any sibling explicitly to steer the choice, so it stops 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It signals this is the recommended end-to-end flow and specifies conditional behavior: with liquidar_em it also liquidates and verifies; under a data contract it refuses to generate while a mandatory document is missing, auditing failed, or the interpretation plan is unapproved. No explicit 'when NOT to use / use X instead' statement is given against the ladder of single-step siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_criar_loteCriar vários cálculos (lote: um por reclamante ou por devedor)A
Roda calculo_criar para cada especificação da lista (litisconsórcio ativo: um cálculo por reclamante; responsabilidade subsidiária ou sucessiva: um por devedor, com o período de cada um; cenários). Cada item passa pelas mesmas travas (documentos, mapa, título, aprovação). Devolve, por item, o número do cálculo, o estado, os totais e as falhas, e o consolidado (soma dos brutos, líquidos e totais dos itens liquidados). Um item com erro não interrompe os outros.
| Name | Required | Description | Default |
|---|---|---|---|
| liquidar_em | No | dd/mm/aaaa ou aaaa-mm-dd: liquidação de teste de todos os itens (mesma data-base). | |
| arquivos_json | No | Alternativa: caminhos dos .json. | |
| especificacoes | No | Lista de especificações completas. | |
| ignorar_tabelas | No | Liquida mesmo com tabelas desatualizadas (o resultado fica errado). | |
| atualizar_tabelas | No | Se as tabelas de índices não cobrirem a liquidação, atualiza-as pelo TRT do processo (padrão false). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation/safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description is not carrying that burden. It adds genuinely useful behavior instead: every item passes the same gates (documents, map, title, approval), and one item's error does not abort the rest — critical for a batch tool. It stops short of disclosing rate limits, ordering guarantees, or whether partial results are rolled back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action before the use cases and the return semantics. Dense with parentheticals but each clause carries information the agent needs; nothing is padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description quite properly covers the return shape (per-item calculation number, state, totals, failures, plus consolidated gross/net totals of settled items). Combined with the error-isolation note and the parallel gates, this is close to complete for a 5-parameter batch tool; only the source of specifications (especificacoes vs arquivos_json) is left entirely to the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains liquidar_em, arquivos_json, especificacoes, ignorar_tabelas and atualizar_tabelas. The description nods to the list of specifications and the per-debtor period but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource in the batch domain: it runs calculo_criar for every specification in a list, and explicitly distinguishes itself from the single-item sibling by naming it. The parenthetical use cases (litisconsórcio ativo, responsabilidade subsidiária/sucessiva, cenários) tell an agent exactly what "batch" means here.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The scenarios enumerated (one per claimant, one per debtor, multiple scenarios) make the trigger condition clear and imply that a single calculation should go through calculo_criar instead. There is no explicit when-not-to-use statement, but the routing context is strong enough that an agent can choose correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_documentos_necessariosDocumentos necessários ao cálculo (pedido ao usuário)ARead-onlyIdempotent
PRIMEIRO PASSO de todo cálculo. Diz quais documentos o caso exige (sentença, decisões posteriores, registro, TRCT, holerites de todo o período, cartões de ponto, recibos de férias e 13º, extrato do FGTS, norma coletiva...), confere se os recebidos cobrem todos os meses, lista as perguntas que só o usuário responde e devolve um texto pronto para pedir o que falta ("pedido"). Use com a especificação (mesmo parcial, com contrato.documentos e contrato.coleta) ou, antes dela, com respostas rápidas: parcelas deferidas, datas e documentos já recebidos. Repita a cada rodada até "completa": true. Veja pjecalc://docs/modulos/documentos.
| Name | Required | Description | Default |
|---|---|---|---|
| admissao | No | Sem especificação: data de admissão. | |
| demissao | No | Sem especificação: data de saída. | |
| parcelas | No | Sem especificação: parcelas deferidas (ex.: ["HORAS EXTRAS 50%", "FGTS + 40%"]). | |
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. | |
| documentos_recebidos | No | Sem especificação: documentos já recebidos. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/non-destructive, so safety is covered. The description adds genuinely useful behavior beyond that: it is iterative ('repita a cada rodada'), emits a request text ('pedido'), and signals completion via 'completa: true', plus points to a doc resource.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but front-loaded with the key role ('PRIMEIRO PASSO'), then scope, then usage modes, then the loop condition. Every sentence carries weight, though the parenthetical document enumeration is somewhat long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter, nested-object tool with no output schema, the description explains the return (a 'pedido' text) and the completion signal ('completa': true). It is largely complete, though the exact shape of the returned request is only indirectly described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description goes further by grouping parameters by mode: admissao/demissao/parcelas/documentos_recebidos apply 'sem especificação' while especificacao/arquivo_json are the alternative path, clarifying inter-parameter relationships the schema only hints at.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'PRIMEIRO PASSO de todo cálculo' and then states the concrete verb+resource: it determines which documents a case requires, checks month coverage, lists user-only questions, and returns a ready 'pedido' text. This clearly positions it against document-validation and planning siblings like catalogo_validar_documentos and calculo_plano_interpretacao.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states two entry modes (with a specification, 'mesmo parcial', or before it using quick answers such as parcelas deferidas and dates) and the loop condition ('Repita a cada rodada até completa: true'). It gives clear context but names no explicit sibling alternatives or when-not-to-use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_excluirExcluir cálculo do PJe-CalcADestructiveIdempotent
Exclui um cálculo do PJe-Calc (Operações > Excluir). IRREVERSÍVEL: exige confirmacao = "SIM, EXCLUIR". Faça calculo_exportar_pjc antes se quiser guardar.
| Name | Required | Description | Default |
|---|---|---|---|
| id_calculo | Yes | Número do cálculo no PJe-Calc. | |
| confirmacao | Yes | Deve ser exatamente "SIM, EXCLUIR". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered structurally. The description adds real substance beyond that: the operation is IRREVERSÍVEL and requires the exact string "SIM, EXCLUIR" as confirmation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the action, then the irreversibility warning, then the backup pointer. Nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter destructive delete with no output schema, the description covers the only things an agent needs: the exact confirmation value, the irreversibility, and the safe alternative. Nothing material is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters (id_calculo, confirmacao) are documented in the schema, including the exact confirmation string. The description's mention of confirmacao repeats rather than extends the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Exclui') plus resource ('um cálculo do PJe-Calc') and even the UI path (Operações > Excluir). It is clearly distinguishable from siblings like calculo_criar, calculo_atualizar and calculo_exportar_pjc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit prep guidance: call calculo_exportar_pjc first if you want to keep the calculation, and states the mandatory confirmation token. It does not spell out conditions under which deletion should be avoided, but the routing advice is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_exportar_pjcExportar cálculo do PJe-Calc (.PJC)AIdempotent
Exporta um cálculo do PJe-Calc como .PJC (Operações > Exportar) — útil para backup, para enviar a terceiros ou para conferir com calculo_ler_pjc.
| Name | Required | Description | Default |
|---|---|---|---|
| destino | No | Arquivo ou pasta (padrão: pjecalc-mcp-skill/saida). | |
| id_calculo | Yes | Número do cálculo no PJe-Calc. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare that this is a non-read-only, idempotent, non-destructive operation, so the safety profile is covered. The description adds useful behavioral context beyond the annotations by specifying that the output is an actual .PJC file and explaining the intended workflows, though it does not disclose overwrite behavior or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that leads with the verb and resource, then adds the UI path and use cases without redundancy. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity, complete schema coverage, and annotations that cover the mutation and safety profile, the description is nearly complete for correct invocation. It omits only minor details such as overwrite behavior and what the tool returns, which is a small gap for a file-export operation with no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already explains both parameters, including the default destination folder and the meaning of id_calculo. The description does not add any parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Exporta), a specific resource (um cálculo do PJe-Calc), and a specific output format (.PJC), while also naming the UI path (Operações > Exportar). It clearly distinguishes itself from the sibling calculo_ler_pjc, which performs the inverse read operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states three concrete use cases: backup, sending to third parties, and checking against calculo_ler_pjc. However, it does not state when not to use the tool or present a full alternative decision rule, keeping it just 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.
calculo_externo_criarCálculo Externo (conta homologada feita fora do PJe-Calc)A
Cria no PJe-Calc um Cálculo Externo: a conta homologada feita fora do aplicativo (perito, contadoria, acordo), com os valores consolidados na data-base, para o PJe-Calc atualizar. Preenche pela interface as telas "Novo Cálculo Externo" (processo, partes, data-base, índice, juros, FGTS, IR, contribuição social, custas) e "Parcelas Atualizáveis" (creditos, descontos, outrosDebitos, debitosReclamante); ao salvar, o próprio PJe-Calc converte as parcelas num cálculo liquidado na data-base. Todos os campos e um exemplo em pjecalc://docs/modulos/execucao e em calculo_modelo_json (exemplo "externo"). Exporta o .PJC e, com "execucao", atualiza a cópia como calculo_atualizar.
| Name | Required | Description | Default |
|---|---|---|---|
| destino | No | Pasta dos arquivos (padrão: saida/). | |
| iniciar | No | Inicia o PJe-Calc se estiver parado (padrão true). | |
| calculoExterno | Yes | Especificação do Cálculo Externo (processo, dataBase, parametros, creditos, descontos, outrosDebitos, debitosReclamante, execucao). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly=false, destructive=false, idempotent=false), yet the description adds real behavioral context beyond them: it drives the interface screens, PJe-Calc converts parcels into a liquidated calculation on save, it exports a .PJC, and with "execucao" it mutates the copy via calculo_atualizar. This discloses side effects the annotations alone would not.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, then proceeds through process, field groups, docs reference, and export/update behavior. Dense but each clause carries information; the long enumerated lists are the only mild bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool that automates a GUI and takes an underspecified nested object, the description is fairly complete: it names the screens, the field groups, an example reference (calculo_modelo_json "externo") and a docs URI. With no output schema, it still describes the side effects on disk and on the existing copy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is nominally 100%, but the calculoExterno object is only typed as additionalProperties:{} with no inner structure, so the schema explains almost nothing about its contents. The description compensates by enumerating the expected fields (processo, dataBase, parametros, creditos, descontos, outrosDebitos, debitosReclamante, execucao), adding meaning the schema lacks.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ("Cria no PJe-Calc um Cálculo Externo") and immediately differentiates it as the approved account computed outside the app (perito, contadoria, acordo), distinguishing it from the sibling regular calculation creators. An agent can identify the purpose and its niche without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys the scenario (external, homologated calculation consolidated at the base date) but does not explicitly state when to prefer this over calculo_criar/calculo_importar_pjc or any exclusion conditions. Usage is implied through the scenario rather than stated as routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_gerar_pjcGerar arquivo .PJCA
Gera o arquivo .PJC (formato oficial de exportação/importação do PJe-Calc) a partir da especificação. Não precisa do PJe-Calc aberto. O arquivo pode ser importado em qualquer PJe-Calc 2.16.x (Cálculo > Importar). Depois da importação é preciso clicar em Verbas > Regerar (ou usar calculo_importar_pjc, que faz isso). Com "apuracaoCartaoPonto" grava também .mcp.json com os passos pós-importação (apurar o cartão e ligar as verbas às colunas), que calculo_importar_pjc executa.
| Name | Required | Description | Default |
|---|---|---|---|
| destino | No | Arquivo .PJC ou pasta de destino (padrão: pjecalc-mcp-skill/saida). | |
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false, openWorldHint=false, idempotentHint=false, destructiveHint=false, so the safety profile is already covered. The description adds real behavioral context beyond that: it works offline without PJe-Calc running, and when 'apuracaoCartaoPonto' is present it also writes a <arquivo>.mcp.json sidecar with post-import steps. It does not state overwrite behavior for the destino path.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four dense sentences, front-loaded with what the tool produces, then workflow and side-effect details. Each sentence carries information, though the import/regerar instructions could be tightened slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and nested objects, the description compensates by describing the produced artifacts (.PJC file and optional .mcp.json) and the required post-import workflow. It is nearly complete, missing only overwrite/error behavior for the destination path.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter has its own description, so the schema already carries the load. The description mentions the 'apuracaoCartaoPonto' behavior (a field inside the specification rather than a top-level parameter) and the identity of the specification source, adding only marginal semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource: it generates the .PJC file (the official PJe-Calc export/import format) from a specification. It also distinguishes itself from siblings by explaining that it does not require PJe-Calc to be open and by naming calculo_importar_pjc as the downstream tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear context is given: no need for PJe-Calc to be open, the file imports into any PJe-Calc 2.16.x, and after importing you must use Verbas > Regerar or run calculo_importar_pjc. It names the alternative tool and the condition that selects it, though it never explicitly contrasts against calculo_criar or calculo_exportar_pjc.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_importar_pjcImportar .PJC no PJe-CalcA
Importa um arquivo .PJC (gerado pelo MCP ou exportado de outro PJe-Calc) no PJe-Calc em execução, executa os passos pós-importação de .mcp.json se existir (apuração do cartão de ponto e vínculos das verbas), regera as ocorrências (padrão) e devolve número do cálculo e pendências.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | Yes | Caminho do .PJC. | |
| iniciar | No | Inicia o PJe-Calc se estiver parado (padrão true). | |
| regerar | No | Regera as ocorrências após importar (padrão true). | |
| exportar_final | No | Grava "<arquivo>-PRONTO.PJC" exportado depois da importação (padrão: só quando houve passos pós-importação). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the bar is lower. The description still adds real behavioral detail beyond them: it runs post-import steps from <arquivo>.mcp.json when present, regenerates occurrences, and returns the calculation number and pendências. It does not mention failure modes or what happens on a partial import.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that leads with the core action and appends side effects and return value in order of importance. Dense but coherent; every clause carries operational meaning, though the sentence is long enough to benefit from light restructuring.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description compensates by naming the return payload (número do cálculo e pendências). It covers the side-effect chain and the mcp.json conditional. Missing only error/partial-failure behavior and explicit preconditions for a fairly complex multi-step import.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 all four parameters including defaults. The description restates the default behavior of regerar ("regera as ocorrências (padrão)") but adds no syntax, format, or edge-case meaning beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Importa") and resource (a .PJC file), plus the destination context (PJe-Calc em execução) and the file's provenance (generated by the MCP or exported from another PJe-Calc). An agent can distinguish this from siblings like calculo_gerar_pjc, calculo_exportar_pjc, or calculo_ler_pjc without opening their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied by "no PJe-Calc em execução" and the described post-import workflow, but there is no explicit when-to-use vs alternatives guidance (e.g., why choose this over calculo_ler_pjc or calculo_gerar_pjc). No exclusions or prerequisites beyond the implicit requirement that PJe-Calc be running.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_ler_pjcLer um arquivo .PJCARead-onlyIdempotent
Resumo legível de um .PJC: processo, partes, datas, históricos salariais, verbas (base, quantidade, reflexos ativos), férias, faltas, FGTS, honorários, multas, correção e juros. Serve para conferir um arquivo gerado ou entender um cálculo exportado.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | Yes | Caminho do .PJC. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered externally. The description adds only that the output is a human-readable summary, saying nothing about failure modes (missing/invalid .PJC path) or output format, so it adds modest value on top of structured data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, then the usage context. The long enumeration of summary contents is dense but earns its place because no output schema exists to describe the return.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by listing what the readable summary contains, which is exactly what an agent needs to decide the tool is appropriate. It stops short of stating the output medium (plain text vs structured) or error behavior for unreadable files.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage ('Caminho do .PJC'), so the schema already carries the meaning and the baseline of 3 applies. The description adds no path format, extension, or relative-vs-absolute guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Resumo legível de um .PJC') and enumerates the exact domain content the summary covers (partes, históricos salariais, verbas, FGTS, correção e juros). It implicitly separates itself from generate/import/export siblings via 'conferir um arquivo gerado ou entender um cálculo exportado', but never names an alternative tool, so it falls 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Serve para conferir um arquivo gerado ou entender um cálculo exportado' gives an implied context of use, but there is no explicit when-not guidance and no named alternative (calculo_importar_pjc, calculo_modelo_json) for an agent that needs to load rather than merely inspect a file.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_liquidarLiquidar cálculo (teste ou a pedido do usuário)AIdempotent
Liquida o cálculo no PJe-Calc (Operações > Liquidar) e devolve os totais do Resumo do Cálculo (bruto, líquido, total devido pelo reclamado, valores por verba). Normalmente quem liquida é o usuário; use para conferir o resultado ou quando ele pedir.
| Name | Required | Description | Default |
|---|---|---|---|
| regerar | No | Regera as ocorrências (mantendo alterações manuais) antes de liquidar. Use depois de tabelas_atualizar; é automático quando a própria chamada atualiza as tabelas. | |
| regional | No | TRT do processo, usado se for preciso atualizar as tabelas. | |
| id_calculo | Yes | Número do cálculo no PJe-Calc. | |
| data_liquidacao | No | dd/mm/aaaa ou aaaa-mm-dd (padrão: a sugerida pelo PJe-Calc). | |
| ignorar_tabelas | No | Liquida mesmo com tabelas desatualizadas (não recomendado). | |
| acumular_indices | No | Desde quando acumular os índices de correção: mês subsequente ao vencimento, mês do vencimento ou a combinação dos dois (padrão: o da tela). | |
| atualizar_tabelas | No | Atualiza as tabelas de índices (online, pelo TRT informado) se não cobrirem a data de liquidação. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false for this mutation. The description adds useful context beyond them: the operation is normally user-driven, and it discloses what the call returns (bruto, líquido, total devido pelo reclamado, valores por verba), which matters since no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and the returned data, with the usage caveat second. No filler, though the usage caveat could be tightened into a cleaner when/when-not clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a side-effecting tool with no output schema, the description compensates by naming the returned totals, and the rich schema covers all parameters including the table-refresh and regeneration flags. What is missing is any note on whether tables must be current (only implied via ignorar_tabelas) and how errors surface.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all seven parameters (regerar, regional, data_liquidacao, ignorar_tabelas, acumular_indices, atualizar_tabelas, id_calculo) are already documented in the schema, including the enum semantics and defaults. The description does not add parameter-level meaning beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ("Liquida o cálculo no PJe-Calc"), names the exact UI path (Operações > Liquidar), and states the return payload (Resumo do Cálculo totals). An agent can distinguish it from siblings like calculo_relatorio or calculo_regerar_ocorrencias without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Normalmente quem liquida é o usuário; use para conferir o resultado ou quando ele pedir" gives an explicit triggering condition and implicitly warns against routine use. It states when to call but does not name alternative sibling tools for adjacent needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_modelo_jsonFormato da especificação do cálculoARead-onlyIdempotent
Devolve a documentação completa do JSON que descreve um cálculo (processo, calculo, historicosSalariais, faltas, ferias, cartoesDePonto, apuracaoCartaoPonto, verbas, fgts, contribuicaoSocial, irpf, pensaoAlimenticia, previdenciaPrivada, salarioFamilia, seguroDesemprego, honorarios, multas, custas, correcaoJuros...) e exemplos testados. LEIA ANTES de montar um cálculo.
| Name | Required | Description | Default |
|---|---|---|---|
| exemplo | No | Devolve só este exemplo (JSON). | |
| somente_exemplo | No | Compatibilidade: devolve só o exemplo "referencia". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the full safety profile (readOnly, idempotent, non-destructive, closed world), so the bar is lower. The description adds that the return is documentation plus tested examples, which is useful content-scoping context, but discloses nothing further about output size, filtering via "exemplo", or formatting.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the verb and resource first, followed by a short imperative directive. The long parenthetical field enumeration is informative but slightly bloated; still, every element earns roughly its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only documentation tool with no output schema, the description sufficiently conveys what is returned (field coverage and examples) and when to call it. Nothing essential is missing, though it never explains the relationship between the "exemplo" selector and the full-document default.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (exemplo enum, somente_exemplo boolean) are documented in the schema itself. The description's field list describes the returned document, not the two input parameters, so it adds little parameter-level meaning beyond the schema. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Devolve") and resource (the complete documentation of the JSON describing a calculation), and enumerates the covered fields plus tested examples. Clear on its own, but it does not name the closest siblings (e.g., catalogo_enums or db_esquema) to disambiguate which reference/schema tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"LEIA ANTES de montar um cálculo" gives an explicit when-to-use trigger tied to the assemble-a-calculation workflow. It does not, however, name alternatives or state when not to use it (e.g., when a python/JSON spec is already in hand).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_pendenciasPendências do cálculo (validação do PJe-Calc)ARead-onlyIdempotent
Abre o cálculo no PJe-Calc e lê o quadro "Pendências do Cálculo" da tela Liquidar, SEM liquidar: erros (impedem a liquidação) e alertas. É a validação oficial do aplicativo.
| Name | Required | Description | Default |
|---|---|---|---|
| id_calculo | Yes | Número do cálculo no PJe-Calc. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/non-destructive, so safety is covered. The description adds real value by clarifying that it opens the calculation but explicitly does NOT liquidate (a state-change boundary) and by classifying output as errors (which block liquidation) vs alerts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence followed by a short clause, front-loaded with the action and constraint. Quoted UI labels are slightly heavy but justified since they pin the exact screen and panel.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description does name the two result categories (erros and alertas) and what errors mean. It stops short of describing the shape of the returned list or behavior when the calculation is unavailable, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (id_calculo) with 100% schema description coverage, so the schema fully documents it. The description adds no syntax, format, or value guidance beyond what the schema already provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: opens the calculation in PJe-Calc and reads the "Pendências do Cálculo" panel of the Liquidar screen, explicitly "SEM liquidar". This distinguishes it from calculo_liquidar, but the sibling calculo_validar also exists and the description's claim to be "a validação oficial do aplicativo" does not disambiguate between the two.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear context: use this to inspect pendencies without performing the liquidation. The "SEM liquidar" qualifier implicitly tells the agent not to use this when actual liquidation is wanted (calculo_liquidar), but it never names the alternative or states explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_plano_interpretacaoPlano de interpretação (para o usuário aprovar)ARead-onlyIdempotent
Gera o plano de interpretação legível (markdown) a partir do contrato e da especificação: processo, fase e processos ligados; matriz do título; cada parcela com comando, folha, trecho, período, reflexos e como será calculada no PJe-Calc; critérios gerais; eventos, pagamentos e destinos do crédito; premissas; conflitos, alertas, pendências e perguntas. MOSTRE o plano ao usuário e peça a aprovação ANTES de calcular. Devolve o hash do contrato a ser aprovado.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuinely useful context beyond that: the output is markdown, it must be shown to the user for approval, and it returns the contract hash to be approved. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action and the required approval step, and the long content enumeration is informative rather than redundant. Slightly dense, but every clause identifies real plan content or a real workflow constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description appropriately discloses what is returned (markdown plan plus the contract hash). The nested especificacao parameter is delegated to calculo_modelo_json for its format, and the approval workflow is spelled out, leaving little missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented in the schema. The description's 'a partir do contrato e da especificação' loosely implies inputs but does not map to arquivo_json vs. especificacao or explain their mutual exclusivity/alternative nature, so it adds little beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Gera o plano de interpretação legível (markdown)') and enumerates the exact contents the plan covers (processo/fase, matriz do título, parcelas, critérios, eventos, premissas, pendências). The workflow framing ('peça a aprovação ANTES de calcular') makes it clearly distinct from calculo_aprovar_plano and the calcular-family siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit sequencing guidance: show the plan to the user and request approval BEFORE calculating. This is clear context for when to invoke it, though it does not name the sibling tools (calculo_aprovar_plano, calculo_gerar_pjc) that carry out the next steps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_recentesCálculos recentes no PJe-CalcBRead-onlyIdempotent
Lista "Abrir Cálculos Recentes" da tela inicial do PJe-Calc (número / processo / reclamante).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful scope context (it is the home-screen recent list, not an arbitrary query) and the returned fields, but says nothing about ordering, limits, or empty-state behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no waste. The nested quotation of the UI label is slightly noisy but does not obscure meaning or bloat the text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool with annotations covering safety, the description covers purpose and output fields adequately. The absence of an output schema means some details (result structure, ordering, count limits) remain unspecified, leaving a modest gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate, per the baseline-4 rule. The parenthetical field list adds minor value about what the (parameterless) call yields but is not required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Lista") and resource ("Cálculos Recentes" / aba Abrir Cálculos Recentes do PJe-Calc), and names the fields shown. It distinguishes the tool from sibling readers like calculo_ler_pjc or pjecalc_paginas, though the reliance on a UI label rather than a functional description slightly muddies it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use, when-not, or alternative routing is provided. The agent can only infer that this browses recently opened calculations; nothing tells it how this differs from calculo_ler_pjc or calculo_pendencias in a selection scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_regerar_ocorrenciasRegerar ocorrências das verbasADestructiveIdempotent
Verbas > selecionar todas (inclusive reflexos ativos) > Regerar. Necessário depois de importar ou de mudar parâmetros. manter_alteracoes=true preserva ocorrências editadas à mão.
| Name | Required | Description | Default |
|---|---|---|---|
| id_calculo | Yes | Número do cálculo no PJe-Calc. | |
| manter_alteracoes | No | Mantém as alterações feitas à mão nas ocorrências (padrão: regera tudo). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false. The description adds real value beyond that by disclosing WHAT is at risk: manually edited occurrences are overwritten unless manter_alteracoes=true, with regeneration of everything as the default. This concretely explains the destructive behavior rather than just repeating the hint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight fragments: operation and scope first, then the usage trigger, then the parameter effect. No filler sentences; the destructive/parameter caveat is front-loaded where the agent will see it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with annotations covering the safety profile and no output schema, the description supplies the missing pieces an agent needs: when to call it, that it is destructive, and how to preserve manual edits. Only minor gaps remain (no prerequisite/permission notes, no mention of what regeneration returns).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented, and the description's note on manter_alteracoes largely restates the schema ('padrão: regera tudo'). The UI-path phrasing ('selecionar todas, inclusive reflexos ativos') implies an internal scope but does not clarify parameter syntax. Baseline 3 is appropriate when the schema carries the parameter detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Regerar' ocorrências das verbas) and describes the scope ('selecionar todas, inclusive reflexos ativos'), which is more than a restatement of the title. An agent can understand it regenerates calculation-item occurrences. It does not explicitly differentiate itself from siblings like calculo_atualizar or calculo_validar, so it stops 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Necessário depois de importar ou de mudar parâmetros' gives a clear trigger condition for when to invoke the tool. There is no explicit statement of when NOT to use it and no named alternative, but the usage context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_relatorioRelatório do cálculo liquidadoAIdempotent
Gera o relatório do PJe-Calc (Operações > Imprimir) de um cálculo já liquidado. Padrão: o relatório COMPLETO, com as seções que se aplicam ao cálculo (resumo, dados, faltas e férias, histórico salarial, cartão de ponto mensal e diário, demonstrativo das verbas com base, divisor, multiplicador e quantidade, juros, FGTS, contribuição social, eSocial, IR, multas, honorários, custas, justificativa). Formato HTML devolve o texto (e os totais extraídos do Resumo); formato PDF grava o arquivo. Tipos avulsos: RESUMO_DE_CALCULO, DADOS_DO_CALCULO, DEMONSTRATIVO_DE_CALCULO, APURACAO_DE_JUROS, DEMONSTRATIVO_FGTS, DEMONSTRATIVO_INSS, DEMONSTRATIVO_IRPF, DEMONSTRATIVO_HONORARIO, DEMONSTRATIVO_CUSTAS, DEMONSTRATIVO_MULTA, HISTORICO_SALARIAL, FALTAS_E_FERIAS, JUSTIFICATIVA, RESUMO_PRECATORIO, DEMONSTRATIVO_ESOCIAL_INSS_FGTS.
| Name | Required | Description | Default |
|---|---|---|---|
| tipos | No | Padrão: ["COMPLETO"] (as seções que se aplicam ao cálculo). Ou a lista de seções avulsas. | |
| formato | No | HTML devolve o texto; PDF grava o arquivo (padrão HTML). | |
| id_calculo | Yes | Número do cálculo no PJe-Calc. | |
| arquivo_pdf | No | Destino do PDF (formato PDF). | |
| max_caracteres | No | Corta o texto devolvido (padrão 20000). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety and idempotency, and the description adds important behavior: default full report, HTML returning text plus extracted totals, and PDF writing a file. It does not discuss error cases or what happens if the calculation is not liquidated, but the main side effect is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose and default behavior, then lists report sections and standalone types. It is dense and long, but most of the length is useful domain detail rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a report-generation tool with no output schema, it sufficiently explains defaults, output formats, file-writing behavior, and available report types. Minor gaps remain around the exact returned total structure and failure modes, but an agent can invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents the parameters, but the description adds meaningful detail by explaining the default COMPLETO value and enumerating the available standalone report types beyond the schema's generic string array. It does not add much about max_caracteres or arquivo_pdf beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource: generate the PJe-Calc report for an already-liquidated calculation. The 'já liquidado' constraint distinguishes it from calculation-mutation and liquidation siblings, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly explains the default COMPLETO behavior, the standalone report types, and when HTML versus PDF is appropriate. It does not explicitly exclude sibling tools such as calculo_ler_pjc or calculo_exportar_pjc, so usage routing is clear but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculo_validarValidar especificação do cálculoARead-onlyIdempotent
Validação técnica + auditoria, SEM gerar arquivo nem tocar no PJe-Calc. A auditoria (campo "auditoria") confere o contrato de dados: cada verba, reflexo, histórico e abatimento ligado a decisões e documentos, pagamento usado duas vezes, salário fora da vigência, trabalho em afastamento, ciclo de escala, base duplicada etc.; sem contrato fica "não verificado". Validação técnica: datas, número CNJ (dígito verificador), CPF/CNPJ, município, nomes de verbas e reflexos do catálogo, históricos usados como base, enums. Devolve erros (impedem gerar), avisos e um resumo do que será montado (verbas ativas, férias calculadas etc.).
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), yet the description adds substantial extra context: the two validation layers, the concrete audit checks (payment used twice, salary outside validity, work during leave, duplicate base), the 'não verificado' fallback, and the fact that it returns errors/warnings/summary 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the key scope statement, and the detailed audit-check enumeration is informative rather than redundant. It is dense and somewhat long, but every clause conveys a distinct validation behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a nested-object parameter, the description carries the burden well, explaining the audit field, the error/warning distinction, and the summary of what will be assembled. Return-shape detail is at a useful high level rather than fully specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (arquivo_json and especificacao) are already documented in the schema. The description does not add syntax or mutual-exclusivity detail beyond noting the spec format source, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (validate) and resource (calculation specification), and immediately delineates scope by declaring it does NOT generate a file nor touch PJe-Calc, which cleanly separates it from siblings like calculo_gerar_pjc and calculo_criar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening clause 'SEM gerar arquivo nem tocar no PJe-Calc' establishes the pre-generation validation context and implicitly routes the agent away from generation tools. However, it never names the alternative (e.g., calculo_gerar_pjc) or states an explicit when-not condition, so a slight gap remains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cartoes_para_jornadasCartões de ponto transcritos -> jornadasARead-onlyIdempotent
Recebe as marcações dia a dia ({ data, marcacoes: ["08:00","12:00",...] } ou { data, turnos } ou { data, ocorrencia: FOLGA|FERIAS|FALTA|ATESTADO|FERIADO|DSR }) e devolve apuracaoCartaoPonto.jornadas. Acusa dia do período sem registro, número ímpar de marcações, turnos impossíveis (sobrepostos, > 16 h, > 20 h no dia), interjornada < 11 h e horários invariáveis (Súmula 338, III, do TST).
| Name | Required | Description | Default |
|---|---|---|---|
| dias | Yes | Marcações dia a dia: { data, marcacoes: ["08:00", "12:00", ...] }, { data, turnos } ou { data, ocorrencia }. | |
| periodo | No | Período a conferir (aaaa-mm-dd), para acusar dias sem registro. | |
| dias_sem_marcacao | No | Dias da semana sem trabalho (0=domingo ... 6=sábado). Padrão [0]. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare this as a read-only, idempotent, non-destructive operation, so the description does not need to cover safety. It adds meaningful behavioral detail: the exact output field returned and a rich list of validations (missing days, odd markings, overlapping/impossibly long shifts, interjornada under 11h, invariant times under Súmula 338).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two dense but well-structured sentences with no filler: first the input forms and return value, then the validation checks. Every clause earns its place, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nested-input, no-output-schema transformation tool, the description gives enough context to invoke it: required day markings, accepted shapes, output field, and validation behavior. It could say more about how validation issues are surfaced in the return object, but the safety profile is already covered by annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline would be 3, but the description adds semantic detail not present in the schema: it enumerates the accepted occurrence values (FOLGA, FERIAS, FALTA, ATESTADO, FERIADO, DSR) and shows the three accepted day-record shapes. It does not add much for the periodo or dias_sem_marcacao parameters, but those are already described in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific transformation: it receives daily time-card markings and returns apuracaoCartaoPonto.jornadas, then lists the anomalies it reports. This is far more than a restatement of the title, but it does not explicitly differentiate itself from the sibling calculo_apurar_cartao_ponto tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does but gives no explicit when-to-use or when-not-to-use guidance, and it never names a sibling as an alternative or prerequisite. Usage is only faintly inferable from the input/output description, so the agent must guess how it fits into the broader calculo workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_assuntos_cnjAssuntos CNJARead-onlyIdempotent
Assuntos da Tabela Processual Unificada do CNJ cadastrados no PJe-Calc (código para verbas personalizadas: verbas[].personalizada.assuntoCnj).
| Name | Required | Description | Default |
|---|---|---|---|
| filtro | No | Parte do nome ou do código do assunto. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds useful domain context (source table, and how the returned code is consumed) but says nothing about result volume, pagination, or ordering. With annotations carrying the behavioral load, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single dense sentence with no filler, and the core resource definition is front-loaded ahead of the integrating detail. Efficient, though the parenthetical is slightly parenthetical-heavy rather than crisp.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only catalog lookup with annotations covering safety, a 1-param schema at full coverage, and no output schema, the description supplies what an agent needs: what the catalog contains and where the code is consumed. It omits the shape/fields of returned entries, but for a catalog of this simplicity that gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'filtro' parameter is documented in the schema as 'Parte do nome ou do código do assunto'. The description adds no further parameter detail (no matching semantics, no wildcard/normalization notes), so the baseline 3 for a fully-covered schema applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the specific resource: 'Assuntos da Tabela Processual Unificada do CNJ cadastrados no PJe-Calc', which tells an agent this is the CNJ-subject catalog. The parenthetical tying the code to 'verbas[].personalizada.assuntoCnj' sharpens its purpose further. It lacks an explicit verb (list/look up) and does not directly differentiate itself from sibling catalogs like catalogo_verbas, so it stops 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical ('código para verbas personalizadas: verbas[].personalizada.assuntoCnj') implies the key use case — retrieving the code to fill a custom-verba field — which is useful implied guidance. However, there is no explicit when-to-use statement, no when-not-to-use, and no routing against catalogo_verbas or other catalog siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_atividadesAtividades econômicas (INSS por atividade)ARead-onlyIdempotent
Atividades econômicas da tabela do PJe-Calc (id e descrição), para contribuicaoSocial.atividadeEconomica (alíquotas do empregador pela atividade).
| Name | Required | Description | Default |
|---|---|---|---|
| filtro | No | Parte da descrição ou o id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and a closed-world scope, so the safety profile is fully covered elsewhere. The description's only additional behavioral value is disclosing the return payload (id and descrição), which matters because no output schema exists, but it says nothing about ordering, completeness of the table, or freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tightly packed sentence with no filler; the resource is stated before the usage context, so it is front-loaded. The nested parenthetical about alíquotas do empregador makes the second half slightly harder to parse than a split sentence would be, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by naming the returned fields (id e descrição), and the annotations carry the safety and idempotency profile. What remains missing is what the tool does when called without a filter and whether the catalog is exhaustive or paginated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single optional parameter, 'filtro', and the schema already documents it at 100% coverage as 'Parte da descrição ou o id.' The description adds no matching semantics, case sensitivity, or behavior when the filter is omitted, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (atividades econômicas da tabela do PJe-Calc) and states exactly what is returned (id e descrição), which lets an agent tell it apart from unrelated tools. It stops short of an explicit verb and does not distinguish itself from the many other catalogo_* siblings, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical ties the catalog to a concrete destination field (contribuicaoSocial.atividadeEconomica), which implies when the lookup is needed, but there is no explicit when-to-use/when-not-to-use statement and no routing to or away from the sibling catalogo_* tools. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_cartao_pontoOpções da apuração do cartão de pontoARead-onlyIdempotent
Colunas criadas por "Apurar Cartão de Ponto" (nomes aceitos em verbas[].quantidade.cartao e divisor.cartao), critérios de horas extras, preenchimentos, tipos de escala e horários noturnos aceitos em apuracaoCartaoPonto.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds domain context (which calculation fields these values feed) but says nothing about return shape, whether the catalog is static or version-dependent, or whether it can be empty. With annotations carrying the behavioral load, this is adequate but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence with no filler, and the most important anchor ('Colunas criadas por Apurar Cartão de Ponto') is front-loaded. The nested parenthetical is compact rather than wasteful, though the list of categories makes it slightly hard to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must at least frame what comes back; it enumerates the categories of content but never indicates the return structure or cardinality. Combined with the absence of any 'when to use this vs. another catalogo' routing, an agent can call it but cannot fully anticipate the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline of 4 applies. The description goes slightly beyond by anchoring the catalogue's values to specific consumer paths (verbas[].quantidade.cartao, divisor.cartao), which tells the agent where the returned names are meant to be used.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the concrete contents of the catalog (columns created by 'Apurar Cartão de Ponto', overtime criteria, fill-ins, shift types, night hours) and the exact field paths that consume the names (verbas[].quantidade.cartao, divisor.cartao). This makes the resource identifiable within the catalogo_* family, though it never states a retrieval verb like 'retorna'/'lista' and never names a sibling it should be preferred over (e.g. catalogo_verbas, catalogo_enums).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the reader infers the tool should be consulted to obtain valid values for apuracaoCartaoPonto fields. There is no explicit when-to-use, when-not, or preference relative to sibling catalogs such as catalogo_verbas or catalogo_enums, which is especially important given how many catalogo_* tools exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_enumsValores aceitos (enums do PJe-Calc)ARead-onlyIdempotent
Constantes aceitas pelos campos do PJe-Calc (ex.: IndiceMonetarioEnum, JurosEnum, TipoHonorarioEnum, SituacaoDaFeriasEnum, BaseDeCalculoDoPrincipalEnum). Sem argumento lista os nomes dos enums; com "classe" lista os campos enum de uma entidade (ex.: Fgts, Honorario, ParametrosDeAtualizacao).
| Name | Required | Description | Default |
|---|---|---|---|
| nome | No | Nome do enum. | |
| classe | No | Nome da entidade. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so safety is covered. The description adds real behavioral context beyond the annotations by disclosing the argument-dependent branching (listing enum names vs entity enum fields), which an agent needs to invoke it correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences, examples front-loaded, no filler. The reader gets the resource and both modes immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-param read-only lookup with no output schema, the description conveys what is returned at a useful level (enum names, entity enum fields). A note on the actual return shape would close the last gap, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 100% with both params documented, but the description adds meaning the schema lacks: it clarifies that omitting 'nome' lists enum names, and that 'classe' scopes results to an entity's enum fields, with worked examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource: it retrieves the accepted enum constants for PJe-Calc fields, with concrete examples (IndiceMonetarioEnum, JurosEnum, etc.). This distinguishes it from other catalog tools like catalogo_verbas or catalogo_municipios, though the differentiation is implicit rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the two invocation modes (no argument → enum names; 'classe' → enum fields of an entity), which effectively tells the agent how to steer the call. However it does not say when to prefer this tool over sibling catalogs or what prerequisites exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_feriadosFeriados e pontos facultativosBRead-onlyIdempotent
Feriados (tipo F) e pontos facultativos (tipo P) do PJe-Calc: nacionais (abrangência F), estaduais (E) e municipais (M). Pontos facultativos são marcados no cálculo pelo nome em calculo.pontosFacultativos.
| Name | Required | Description | Default |
|---|---|---|---|
| uf | No | Sigla da UF dos feriados estaduais e municipais. | |
| tipo | No | F feriado, P ponto facultativo. | |
| filtro | No | Parte do nome. | |
| municipio | No | Nome do município (filtra os municipais). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds that this is static PJe-Calc catalog data tied to calculo.pontosFacultativos, but says nothing about return format, ordering, or pagination. Adequate 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with no filler, and the core resource definition is front-loaded before the ancillary note about calculo.pontosFacultativos. Efficient for the amount of information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only catalog lookup with no output schema and fully documented parameters, the description explains what data comes back and how it relates to the calculation. Only the return shape and filtering behavior are left implicit, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 uf, tipo, filtro and municipio, establishing the baseline of 3. The description restates the tipo F/P meaning and adds the F/E/M abrangência taxonomy, which actually refers to holiday records rather than a parameter and omits the schema's third enum value 'B'. Marginal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the exact resource (feriados tipo F and pontos facultativos tipo P from PJe-Calc) and its scope (national/state/municipal). An agent can tell it apart from sibling catalogs like catalogo_municipios or catalogo_verbas. It never states an explicit verb such as 'list/retrieve', but the catalog nature is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to call this versus sibling catalogs, and no prerequisites. The only contextual hint is that pontos facultativos are marked in the calculation by name in calculo.pontosFacultativos, which describes downstream use rather than when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_municipiosMunicípios do PJe-CalcARead-onlyIdempotent
Procura municípios (nome/UF/id) da tabela do PJe-Calc, para preencher calculo.uf e calculo.municipio.
| Name | Required | Description | Default |
|---|---|---|---|
| uf | No | Sigla da UF (ex.: PA). | |
| nome | No | Parte do nome. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is clear. The description adds that the data comes from the PJe-Calc table and that the search is a lookup, but it doesn't describe return format, pagination, or any other operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no wasted words, and the core action and purpose are front-loaded. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity catalog lookup with rich annotations and 100% schema coverage, the description is largely complete. It omits any mention of return values, which is a minor gap given there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 mentions 'nome/UF/id', which slightly exceeds the schema (no id parameter), but adds no syntax or format detail beyond what the schema provides; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Procura') and resource ('municípios'), plus the source table and the exact output fields it supports ('calculo.uf' and 'calculo.municipio'). This distinguishes it from the many other catalogo_* siblings that cover verbas, assuntos, feriados, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear usage context: use this tool to fill calculo.uf and calculo.municipio. It does not list exclusions or 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.
catalogo_pisos_vtPisos salariais e vales-transporte cadastrados no PJe-CalcARead-onlyIdempotent
Lista as tabelas "Pisos Salariais" e "Vale-transporte" do PJe-Calc do usuário (id, nome ou linha, UF, município, período), lidas do banco por modelos_atualizar com alvo "catalogos" (PJe-Calc parado). Use o id em verbas[].base { tipo: "SALARIO_DA_CATEGORIA", piso: id } ou { tipo: "VALE_TRANSPORTE", valesTransporte: [ids] } (e em valorPago). O piso ou a linha precisa ser do mesmo estado (e município, no vale-transporte) dos parâmetros do cálculo. Se a tabela não existir no PJe-Calc do usuário, informe o piso da norma coletiva como histórico salarial (base HISTORICO_SALARIAL), com a origem na cláusula.
| Name | Required | Description | Default |
|---|---|---|---|
| uf | No | Sigla da UF para filtrar. | |
| nome | No | Parte do nome do piso ou da linha. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the bar is lower; the description still adds real value by disclosing the data source (read via modelos_atualizar with alvo "catalogos") and the precondition that PJe-Calc must be stopped, plus the same-state/municipality validity constraint. It omits pagination or result-size behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense paragraph whose purpose is front-loaded; each sentence carries actionable information (source, integration, constraint, fallback). The comma-heavy clause stacking slightly hurts scanability but nothing is truly wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's cross-tool dependencies (modelos_atualizar, verbas[].base), lack of an output schema, and no required params, the description covers return fields, downstream usage, precondition, validity constraint, and fallback. It is complete enough for an agent to call it correctly, with only minor gaps around edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (uf, nome) are already documented in the schema; the description mentions uf/município in the context of results rather than clarifying the filter parameters. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Lista") and resource (the "Pisos Salariais" and "Vale-transporte" tables of the user's PJe-Calc), and enumerates the returned fields (id, nome/linha, UF, município, período). It is immediately distinguishable from sibling catalogs like catalogo_cartao_ponto.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains how the returned id is consumed (verbas[].base { tipo: "SALARIO_DA_CATEGORIA", piso: id } / { tipo: "VALE_TRANSPORTE", ... } and valorPago), which defines the tool's purpose in the workflow, and even gives a fallback when the table is absent (HISTORICO_SALARIAL). It does not, however, name explicit sibling alternatives or exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_validar_documentosValidar número CNJ, CPF e CNPJBRead-onlyIdempotent
Confere dígitos verificadores (o PJe-Calc recusa número de processo com dígito errado) e devolve o dígito CNJ correto.
| Name | Required | Description | Default |
|---|---|---|---|
| cpf | No | CPF, com ou sem pontuação. | |
| cnpj | No | CNPJ, com ou sem pontuação. | |
| numero_processo | No | Número CNJ do processo, com ou sem pontuação. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and non-destructive, so the safety profile is covered. The description adds one genuine behavioral detail beyond that: it does not merely validate, it 'devolve o dígito CNJ correto' (returns the corrected digit). It says nothing about behavior on invalid input or error reporting, keeping it at a middling 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the action first and the rationale in a parenthetical. No filler, though the parenthetical is slightly conversational given the schema already handles formatting.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only three-parameter tool with no output schema, the description carries the return-value burden but only covers the CNJ case ('devolve o dígito CNJ correto'), leaving unspecified what is returned for CPF and CNPJ or how invalid inputs are reported. Adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each of the three parameters (cpf, cnpj, numero_processo) is documented in the schema with accepted formatting. The description maps loosely onto the same concepts but adds no syntax or format detail the schema lacks, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Confere' plus the resources 'dígitos verificadores' and 'dígito CNJ' state a specific validation action, and the title names CPF/CNPJ, so the scope is clear. It stops short of distinguishing itself from any sibling, but no other sibling is a document validator, so an agent can place it accurately.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'o PJe-Calc recusa número de processo com dígito errado' implies the use case (validate a number before feeding it to PJe-Calc), but there is no explicit when-to-use, when-not-to-use, or named alternative. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogo_verbasCatálogo de verbas (Expresso)ARead-onlyIdempotent
Verbas do lançamento "Expresso" do PJe-Calc com seus parâmetros padrão (característica, ocorrência de pagamento, incidências, base, divisor, multiplicador, quantidade) e a lista de reflexos disponíveis para cada uma. Use os nomes exatamente como aparecem aqui em "verbas[].verba" e "verbas[].reflexos".
| Name | Required | Description | Default |
|---|---|---|---|
| filtro | No | Parte do nome (ex.: "horas extras", "férias"). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld=false, non-destructive, so safety is covered. The description goes beyond that by describing the returned content (each verba's default fields plus its reflexos list), which is useful since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with what the tool returns, followed by a practical naming instruction. The parenthetical field list is dense but informative rather than wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, single-optional-parameter catalog with no output schema, the description adequately conveys the returned structure and the canonical-name contract. Minor gaps (result ordering, meaning of an unfiltered call) are inferable from the schema's zero required parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter and schema description coverage is 100%, so the schema already documents 'filtro' with examples. The description adds no filtering syntax or semantics of its own, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (the "Expresso" launch verbas of PJe-Calc) and enumerates its default parameters and reflexos list, so an agent knows exactly what this catalog returns. It lacks an explicit verb but the resource scope is precise enough to separate it from generic catalog siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: this is a lookup for canonical verba/reflexo names, reinforced by 'Use os nomes exatamente como aparecem aqui'. However, there is no explicit when-to-use vs alternatives (e.g., catalogo_enums) and no note on whether filtro is optional or what an unfiltered call returns.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
config_datasourceLer/alterar DataSource H2ADestructiveIdempotent
Sem argumentos: lê o DataSource jdbc/pjeCalcDS de META-INF/context.xml. Com argumentos: altera url/username/password (backup automático). ATENÇÃO: mudar a url pode apontar para outro banco.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Nova URL JDBC. | |
| senha | No | Nova senha. | |
| usuario | No | Novo usuário. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true and idempotentHint=true, and the description adds genuinely new context: an automatic backup is taken on writes and the URL change can silently repoint to a different database. That is exactly the kind of consequence detail annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the dual-mode rule is front-loaded and the risk warning closes it. No filler or restated name/title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-param tool with no output schema and full annotation coverage, the description supplies mode behavior, backup side-effect, and the URL caveat. Only the shape of the read result is left unstated, which is minor given no output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the three parameters are already documented in the schema. The description maps them to url/username/password and adds no format or syntax detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (jdbc/pjeCalcDS DataSource from META-INF/context.xml) and both verbs (read vs. alter) conditioned on argument presence. The resource is distinct from the config_* siblings (ports, memory, token), though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The no-args/with-args rule gives explicit when-to-use guidance for the two modes and the ATENÇÃO note warns about the URL consequence. It stops short of naming alternatives (e.g. config_ler or db_* tools) for related tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
config_lerLer arquivo de configuraçãoBRead-onlyIdempotent
Conteúdo de um arquivo de configuração do PJe-Calc (server.xml, context.xml, catalina.properties, .bat de inicialização, url_tribunal.properties, persistence.xml, web.xml). Arquivos são ISO-8859-1.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | Yes | Nome do arquivo. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context the annotations cannot express: the files are ISO-8859-1 encoded, which matters for decoding the result. It does not say whether missing files error or return empty, but the addition is real.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no padding, and the encoding note is placed last where it belongs. Efficient, though the filename list duplicates the enum and arguably consumes space the description could have spent on usage guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-enum read tool with no output schema, an agent knows what to pass and roughly what comes back via 'Conteúdo de um arquivo'. It never states the return shape (raw text vs structured) or error behavior for an invalid/missing file, which is the remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter is a closed enum, so the schema fully documents the input. The description's file list largely repeats the enum values rather than adding format or selection guidance, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The title plus description make clear this retrieves the contents of a PJe-Calc configuration file, and the enumeration of specific filenames (server.xml, context.xml, catalina.properties, etc.) pins the scope. It is a noun phrase rather than a verb+resource statement, but the resource is unmistakable. It does not differentiate itself from siblings like config_portas or config_memoria, which also touch configuration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool rather than the many sibling config_* tools (config_portas, config_memoria, config_token, config_datasource), nor any prerequisite or exclusion. Usage must be inferred purely from the tool name and the file list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
config_memoriaLer/alterar memória da JVMADestructiveIdempotent
Sem argumentos: lê Xms/Xmx dos .bat. Com argumentos: altera -Xms/-Xmx nos dois .bat (backup automático). Valores em MB. Reinicie o app para aplicar.
| Name | Required | Description | Default |
|---|---|---|---|
| xms | No | Heap inicial em MB. | |
| xmx | No | Heap máximo em MB. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=true. The description adds genuinely useful context beyond them: an automatic backup is created, values are in MB, and a restart is required to apply. Missing detail on whether the change is reversible beyond the backup, but the disclosure is strong.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences, front-loaded with the mode switch, then backup/unit/restart facts. Zero filler; every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a dual-mode config tool with no output schema, the description covers both the read return content (Xms/Xmx) and the write side effects (backup, restart needed). An agent has everything needed to invoke it correctly in either mode.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents xms/xmx with units and ranges. The description adds the mapping that these args become -Xms/-Xmx in the two .bat files, giving file-level meaning beyond the schema's abstract 'Heap' phrasing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (reads/writes Xms/Xmx JVM heap) and elegantly distinguishes its two modes: no-args reads, with-args mutates. An agent can tell exactly what it does versus the many config_* and pjecalc_* siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent when each mode applies (no args = read; with args = write), which is a clear usage split. It does not name alternative tools, but the arg-presence trigger is unambiguous enough that the lack of sibling routing is minor.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
config_portasLer/alterar portas do TomcatADestructiveIdempotent
Sem argumentos: lê as portas atuais. Com argumentos: altera http/ajp/shutdown no tomcat/conf/server.xml (apenas conectores ativos; comentários preservados; backup automático .mcp-backup-). O launcher usa a porta HTTP para abrir a interface e troca de porta automaticamente se estiver ocupada.
| Name | Required | Description | Default |
|---|---|---|---|
| ajp | No | Nova porta AJP (padrão 9258). | |
| http | No | Nova porta HTTP (padrão 9257). | |
| shutdown | No | Nova porta de shutdown (padrão 9256). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false, and the description adds valuable specifics: only active connectors are modified, comments are preserved, an automatic backup .mcp-backup-<timestamp> is created, and the launcher may auto-switch ports if HTTP is busy. These details go well beyond the safety flags.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core read/write behavior, followed by implementation notes. The final sentence about the launcher is contextually relevant but slightly tangential, keeping it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still covers the essential behavior for both modes, the file affected, backup, and preservation of comments. Combined with full schema coverage and clear annotations, an agent has enough to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema documents each parameter (ajp, http, shutdown) with defaults and ranges. The description repeats the parameter names but adds no new semantic detail (e.g., format, interaction), so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It explicitly states dual behavior: no args reads current ports; with args modifies http/ajp/shutdown in tomcat/conf/server.xml. The verb (lê/altera) and resource (ports in server.xml) are specific, and the dual mode distinguishes it from generic config siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use no-argument mode versus argument mode, which is the primary usage decision. However, it does not name alternative tools (e.g., config_ler) or state 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.
config_tokenLer/alterar token dos serviços RESTADestructiveIdempotent
Sem argumentos: mostra o token atual (seguranca.pjecalc.tokenServicos dos .bat). Com novo_token: substitui nos dois .bat (backup automático). O token protege os endpoints /servico/rest/*; o header HTTP é Authentication: Base64(token).
| Name | Required | Description | Default |
|---|---|---|---|
| novo_token | No | Novo token (opcional). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructive=true and idempotent=true; the description goes further by revealing that a write replaces the token in BOTH .bat files, that an automatic backup occurs, and that the token guards the /servico/rest/* endpoints via an Authentication: Base64(token) header. This adds meaningful context about scope and side effects beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences that are front-loaded with the two modes before adding security context. Every sentence carries information, though the header-format detail is slightly tangential for a config tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, the description covers both modes, the side effect and its backup mitigation, and the security role of the token. Return format is only implied ('mostra o token atual'), leaving a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (baseline 3), and the description adds real meaning by showing novo_token triggers the write mode and is applied to both files with an automatic backup, going beyond the schema's bare 'Novo token (opcional)'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific dual verb+resource: read the current REST services token, or replace it, and names the exact config key (seguranca.pjecalc.tokenServicos). This clearly separates it from siblings like config_portas or config_memoria, so an agent can disambiguate without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly explains the two invocation modes: with no argument it shows the current token; with novo_token it replaces it in both .bat files. The condition selecting each mode is unambiguous, though no alternatives or exclusions (e.g., what to use for other config) are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_backup_arquivoBackup físico do banco (cópia do .h2.db)A
Copia o arquivo .dados/pjecalc.h2.db byte a byte. Funciona mesmo com o app em execução? Não — copie sempre com o app parado para garantir consistência. O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | No | Caminho de destino (padrão: .dados/pjecalc.h2.db.bak-<timestamp>). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false and destructiveHint=false, and the description adds real context beyond that: the DB is locked while PJe-Calc runs, the copy must happen with the app stopped for consistency, and pjecalc_parar is the required prerequisite. This is exactly the kind of operational constraint annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the action, then the consistency caveat, then the locking rationale and the remediation step. The rhetorical question is slightly unusual but tight, and every sentence contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple file-copy operation with no output schema, the description covers the critical prerequisite (app stopped) and the tool's mechanism. It could note what confirmation/result the caller receives, but nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter 'arquivo' already documents its default pattern, so the schema carries the parameter semantics. The description adds no syntax or format detail beyond it, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource precisely: 'Copia o arquivo .dados/pjecalc.h2.db byte a byte', which makes the physical-file-copy nature unambiguous and implicitly distinguishes it from the SQL-dump sibling db_backup_sql. It does not, however, name that sibling explicitly, so differentiation relies on inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear precondition and when-to-use rule: only run with the app stopped, and it names pjecalc_parar as the required prior step. It stops short of explicitly contrasting with db_backup_sql, so the choice between physical and SQL backup is left to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_backup_sqlBackup lógico do banco (SQL)A
Gera backup completo (schema + dados, ~9 MB) em SQL usando org.h2.tools.Script com a JRE do próprio PJe-Calc. O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | No | Caminho do .sql de saída (padrão: .dados/pjecalc-backup-<timestamp>.sql). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false, destructiveHint=false and openWorldHint=false. The description adds genuinely useful context beyond them: the mechanism (org.h2.tools.Script), the ~9 MB size, and critically the constraint that the database stays locked while PJe-Calc runs, requiring pjecalc_parar first. It does not state whether an existing target file is overwritten.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, purpose front-loaded, then the prerequisite. The implementation detail about the JRE/org.h2.tools.Script is slightly more than the agent needs but is compact and earns some informational value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter backup writer with full schema coverage and annotations covering the safety profile, the description supplies the key operational caveat (stop the app) and output expectations. Missing only edge-case behavior such as overwrite/error handling on the destination path.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'arquivo' parameter is fully documented in the schema, including its default. The description adds no format or path syntax beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Gera backup completo (schema + dados ...) em SQL') and explicitly names the output format and approximate size (~9 MB), which distinguishes it from the sibling db_backup_arquivo. It does not, however, explicitly call out that sibling as the alternative, so the differentiation is by implication rather than direct contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear precondition and names the tool that satisfies it: 'Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.' That is actionable routing. It stops short of an explicit when-to-use vs. db_backup_arquivo or db_restaurar comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_consultarConsultar o banco H2 (SELECT)ARead-onlyIdempotent
Executa um SELECT no banco H2 (somente leitura) e devolve até max_linhas registros. Use db_tabelas/db_esquema para descobrir nomes. Ex.: SELECT * FROM TBSELICDIARIA ORDER BY DDTDIAINDICE DESC. O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
| sql | Yes | Comando SELECT. | |
| max_linhas | No | Limite de linhas (padrão 200). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint=false), and the description still adds meaningful behavior: results are capped at max_linhas rows, and the tool will fail unless the PJe-Calc application is stopped first. It also shows a concrete query shape, which sets expectations for input format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action and read-only nature, followed by helper-tool guidance, an example, and the lock prerequisite. Every sentence carries information, though the inline SQL example adds some length and the 'somente leitura' phrasing partially repeats the annotation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with rich annotations but no output schema, the description covers action, input guidance, row cap, and the critical operational prerequisite. It does not describe error behavior or result column formatting, but nothing essential for a correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 a little by clarifying that max_linhas is the row cap on the returned result and by providing a sample SELECT that demonstrates the sql parameter format. It does not explain default/limit interactions beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: executes a SELECT on the H2 database in read-only mode. It separates itself from the write-capable sibling db_executar by declaring 'somente leitura', though it never names that sibling as the alternative for writes. An agent can identify the tool's job without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes the agent to db_tabelas/db_esquema to discover table/column names before querying, and gives a hard precondition: PJe-Calc holds the database locked while running, so pjecalc_parar must be called first. This is exactly the when-to-use / when-not-to-use guidance that prevents failed calls.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_esquemaEsquema de uma tabela H2ARead-onlyIdempotent
Colunas (nome, tipo, nulidade, default) de uma tabela do banco H2. O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
| tabela | Yes | Nome da tabela (ex.: TBSELICDIARIA, TBVERBA, TBCALCULO). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and non-destructive behavior, so the safety profile is covered. The description adds a genuinely useful behavioral constraint not in the annotations: the H2 database is locked while PJe-Calc runs and must be released first. It does not mention error behavior for unknown table names.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste: the purpose and returned fields are front-loaded, and the blocking constraint follows. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates what is returned (name, type, nullability, default), and the locking precondition is stated. A read-only single-parameter tool needs little more; only failure behavior for invalid table names is unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'tabela' parameter is documented with concrete examples (TBSELICDIARIA, TBVERBA, TBCALCULO). The description's field list refers to the returned columns rather than adding meaning to the parameter, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and return shape: the columns (name, type, nullability, default) of one H2 table. An agent can distinguish this from db_tabelas (listing tables) or db_consultar (querying rows) by inference, but no sibling is named explicitly, 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a concrete operational precondition — the PJe-Calc keeps the database locked while running, so the app must be stopped (pjecalc_parar) before using database tools. That is real when-to-use guidance, but it does not contrast this tool with db_consultar/db_tabelas or state when schema inspection is preferable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_executarExecutar DML/DDL no banco H2ADestructiveIdempotent
Executa INSERT/UPDATE/DELETE/DDL no banco H2. PERIGOSO: exige confirmacao = "SIM, EXECUTAR" e cria backup do arquivo .h2.db antes. NÃO use para criar ou alterar cálculos: inserções diretas não avançam as sequências do Hibernate e o PJe-Calc passa a falhar com "Registro duplicado" ao criar cálculos (aconteceu nesta instalação). Para cálculos use calculo_criar. O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
| sql | Yes | Comando SQL (DML/DDL). | |
| confirmacao | Yes | Deve ser exatamente "SIM, EXECUTAR". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the destructiveHint/readOnlyHint annotations: discloses the mandatory confirmation token, that a .h2.db backup is taken first, that direct inserts desynchronize Hibernate sequences causing 'Registro duplicado' failures, and that the DB file is locked while PJe-Calc runs. That is exactly the consequence-level context annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the danger and the confirmation requirement, then the failure-mode warning, then the locking prerequisite — every sentence carries operational weight despite the length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, no-output-schema mutation tool this covers prerequisites (stop PJe-Calc), safety (backup, confirmation), and the correct alternative path, leaving nothing an agent needs before calling it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description adds real meaning by explaining what kinds of SQL are dangerous and why (sequence advancement), not just restating the parameter names. The sql parameter itself still gets no format/syntax guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb (executa) and resource (banco H2) plus the exact statement classes (INSERT/UPDATE/DELETE/DDL), which cleanly separates it from read-only siblings like db_consultar and backup siblings like db_backup_arquivo.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit when-not guidance (não use para criar/alterar cálculos; use calculo_criar) and a hard prerequisite (encerre o aplicativo via pjecalc_parar antes de usar as ferramentas de banco). An agent cannot mistake the correct route.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_restaurarRestaurar banco a partir de SQLADestructiveIdempotent
Restaura o banco executando um arquivo SQL (gerado por db_backup_sql) via org.h2.tools.RunScript. DESTRUTIVO: exige confirmacao = "SIM, RESTAURAR" e faz backup do .h2.db atual antes. O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | Yes | Caminho do .sql a executar. | |
| confirmacao | Yes | Deve ser exatamente "SIM, RESTAURAR". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant operational detail beyond annotations: the underlying RunScript mechanism, mandatory confirmation value, automatic backup creation, and PJe-Calc database lock behavior. Annotations cover destructive and idempotent hints, but the description supplies the concrete safety and sequencing requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three tightly written sentences, front-loading the action, then the destructive warning and prerequisites, with no wasted content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the destructive nature, no output schema, and rich annotations, the description covers the critical requirements: confirmation value, pre-backup behavior, execution method, and the need to stop the application first. An agent has enough information to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both parameters. The description adds useful context that the SQL file should be generated by db_backup_sql and reiterates the exact confirmation string, though it does not provide new syntax details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: restore the database by executing a SQL file generated by db_backup_sql via org.h2.tools.RunScript. This clearly distinguishes it from siblings like db_backup_sql and db_executar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly warns that the operation is destructive, requires the exact confirmation string, automatically backs up the current .h2.db, and instructs the agent to stop PJe-Calc via pjecalc_parar before using database tools. This provides clear preconditions and usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_tabelasListar tabelas do banco H2ARead-onlyIdempotent
Tabelas do esquema PUBLIC do banco embutido (.dados/pjecalc.h2.db, 151 tabelas: cálculo, verbas, fórmulas, índices, INSS, IRPF, FGTS, precatórios etc.). O PJe-Calc mantém o banco bloqueado enquanto está em execução. Encerre o aplicativo (pjecalc_parar) antes de usar as ferramentas de banco.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare read-only, idempotent, non-destructive, and closed-world behavior. The description adds valuable operational context beyond the annotations: the embedded H2 database file path, the fact that the application locks the database while running, and the required prerequisite to stop the app before using database tools.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two compact sentences, front-loading the table scope and then the critical operational prerequisite. Every sentence carries useful information with no wasted wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, read-only listing tool with no output schema, the description is complete enough. It states what is listed, where it comes from, the scale and categories, and the essential prerequisite for use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, and the schema is an empty object. With zero parameters and full schema coverage, the baseline score is 4; the description appropriately adds no parameter-level detail because none exists.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the exact resource and scope: tables of the PUBLIC schema in the embedded H2 database, including the file path and categories of tables. This is clear and specific enough to distinguish it from siblings that query or execute SQL, though it does not explicitly name those alternatives or use a direct verb like 'list'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear prerequisite: PJe-Calc locks the database while running, so the application (pjecalc_parar) must be stopped before using database tools. This is strong context for when and when not to call the tool, but it does not explicitly point to sibling alternatives such as db_esquema or db_consultar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
documento_imagensImagens das páginas escaneadas de um PDFAIdempotent
Grava em arquivos as imagens das páginas de um PDF (JPEG como está; as demais em PNG), sem depender de programa externo, para você VER as páginas escaneadas: holerites, cartões de ponto, TRCT, recibos, atestados. Por página, a imagem "principal" (a maior) é em geral a página inteira; logotipos pequenos ficam de fora. Use nas páginas que documento_inventario marca sem texto (o carimbo de assinatura do PJe não conta como texto). Formatos CCITT, JBIG2 e JPEG 2000 não são convertidos e aparecem em "avisos". O MCP não faz OCR: leia a imagem e transcreva com a folha.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | Yes | Caminho do PDF. | |
| destino | No | Pasta dos arquivos (padrão: "<nome do PDF>-paginas" ao lado do PDF). | |
| paginas | No | Ex.: "24-39,56-92" (padrão: todas). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the annotations: writes files to disk (consistent with readOnlyHint=false), operates without external programs, keeps only the largest image per page and drops small logos, and reports unsupported encodings (CCITT, JBIG2, JPEG 2000) in an 'avisos' field. These are concrete behavioral traits an agent could not derive from the schema or annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded and every sentence carries information (format handling, page selection, warnings, no-OCR caveat). The parentheticals and semicolon-dense clauses make it slightly heavy to scan, but nothing is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a file-writing tool with no output schema, the description covers where files go (referenced in schema), what each file represents, and how conversion failures surface via 'avisos'. It is nearly complete, though it does not state the naming/return convention of the written files explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already documented, and the description adds only the page-image selection semantics (largest image is usually the full page). The 'paginas' range syntax and 'destino' default are left entirely to the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource in the first clause ('Grava em arquivos as imagens das páginas de um PDF'), then specifies the per-format behavior (JPEG as-is, others PNG). It is clearly distinguishable from siblings like documento_inventario and documento_texto, both of which it references or implicitly contrasts with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes the agent: 'Use nas páginas que documento_inventario marca sem texto', naming the sibling call that produces the precondition. It also clarifies an edge case of that precondition (the PJe signature stamp does not count as text) and states what the tool cannot do (no OCR), leaving little to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
documento_inventarioInventário dos documentos (arquivos e páginas)ARead-onlyIdempotent
Lista cada arquivo (PDF, imagem, texto): hash sha256, número de páginas, páginas com e sem texto (as sem texto são escaneadas e precisam ser VISTAS como imagem), páginas com imagem, tipo provável (sentença, TRCT, holerites, cartões, extrato do FGTS...) e números de processo citados. Devolve a sugestão de contrato.documentos e o esqueleto de contrato.leitura (classificar TODAS as páginas: usadas, irrelevantes com motivo, ilegíveis com pedido). Use logo que receber os documentos (etapa 2). Veja pjecalc://docs/modulos/leitura.
| Name | Required | Description | Default |
|---|---|---|---|
| pasta | No | Alternativa: pasta com os documentos. | |
| prefixo | No | Prefixo dos ids sugeridos (padrão "D"). | |
| arquivos | No | Caminhos dos arquivos. | |
| processo | No | Id do processo de origem (contrato.processos) para as sugestões. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description nonetheless adds meaningful context beyond them: that text-less pages are scans which must be VIEWED as images, that it emits a suggested contrato.documentos plus a contrato.leitura skeleton, and the classification rule for every page (used / irrelevant with reason / illegible with request).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the verb and output contents before workflow hints, and the semicolon-separated list keeps a fairly information-dense block readable. The nested parentheses (especially the long contrato.leitura clause) make it heavier than it needs to be, but nothing is truly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so thoroughly: it names the output artifacts, enumerates the inventory fields, states the page-classification requirement, and places the call in the workflow (etapa 2) with a link to further module docs. An agent has enough to invoke it correctly without opening anything else.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so pasta, prefixo, arquivos and processo are already documented (including the default "D" prefix). The description references contrato.processos only indirectly via "números de processo citados" and adds no syntax or selection guidance beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource ("Lista cada arquivo") and immediately enumerates the exact per-file payload (sha256, page count, pages with/without text, probable type, cited case numbers), which cleanly distinguishes it from siblings like documento_texto and documento_imagens that operate on already-inventoried documents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit timing guidance ("Use logo que receber os documentos (etapa 2)") and points at supporting documentation (pjecalc://docs/modulos/leitura). It stops short of naming when NOT to use it or an alternative tool, so it's clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
documento_textoTexto de um documento por páginaARead-onlyIdempotent
Texto extraído página por página de um PDF (ou arquivo de texto), para localizar trechos e conferir números. Página sem texto próprio vem marcada (o carimbo de assinatura do PJe não conta): é escaneada, veja como imagem com documento_imagens (o MCP não faz OCR). O texto pode sair fora da ordem visual das colunas: confira sempre na página.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | Yes | Caminho do PDF ou do arquivo de texto. | |
| paginas | No | Ex.: "1-3,7" (padrão: todas). | |
| max_caracteres | No | Padrão 60000. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only/idempotent/non-destructive, yet the description still adds non-obvious behavior: pages lacking own text are flagged, the PJe signature stamp does not count as text, and output order may not follow the visual column order. It does not mention that output can be truncated by max_caracteres (default 60000), a relevant behavioral caveat.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences: purpose first, then the scan/alternative caveat, then the ordering warning. No filler; each sentence carries a distinct, actionable fact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still conveys the shape of the result (text per page, with a scanned-page marker) and the two failure modes an agent must handle (scanned pages, column misordering). Nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (arquivo, paginas, max_caracteres all documented in-schema), so the baseline is 3. The prose adds no per-parameter detail, only the caveat to verify text against the page.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb+resource with scope: extracted text page by page from a PDF (or text file). It also implicitly distinguishes itself from documento_imagens by routing scanned/no-text pages there, so an agent can separate the two without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives the use case (locate excerpts, check numbers), an explicit exclusion (pages without their own text are scanned; the MCP does no OCR), and names the alternative tool (documento_imagens) for that case. When-to-use and when-not-to-use are both covered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extrato_para_fgtsExtrato do FGTS -> depósitos (fgts.operacoes)ARead-onlyIdempotent
Recebe os lançamentos do extrato analítico do FGTS ({ competencia, data, valor, tipo: DEPOSITO|JAM|SAQUE|MULTA }) e o saldo final; devolve fgts.operacoes (depósitos e saques a deduzir), os depósitos por competência e as conferências: soma dos lançamentos = saldo; competências do período sem depósito.
| Name | Required | Description | Default |
|---|---|---|---|
| saldo | No | Saldo final do extrato, para conferir a soma dos lançamentos. | |
| periodo | No | Período do contrato (aaaa-mm), para acusar competências sem depósito. | |
| documento | No | Id do extrato em contrato.documentos (vira a origem das operações). | |
| lancamentos | Yes | Lançamentos do extrato analítico: { competencia, data, valor, tipo DEPOSITO|JAM|SAQUE|MULTA }. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world). The description adds real behavioral context beyond that: it computes and returns fgts.operacoes, per-competência deposits, and two reconciliation checks (sum = balance; competências without deposits).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence, front-loaded with the input contract then the outputs and checks. Every clause earns its place, though the inline tuple notation makes it slightly harder to parse than separated sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must carry the return-value burden, and it does: it names the produced entities and the two conferências. Nothing critical for correct invocation appears missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all four parameters. The description echoes the lancamentos shape ({competencia, data, valor, tipo}) but adds no syntax or format detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific transform: it receives FGTS analytic-statement entries plus final balance and returns fgts.operacoes, deposits per competência, and reconciliations. The verb/resource pair (extrato -> operações) is unambiguous and no sibling overlaps it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the naming of input sources and output targets, but the description never states when to use this versus alternatives or what prerequisites exist. With many sibling tools present, an explicit 'use this to convert an FGTS statement extract' cue would help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
holerites_para_historicosHolerites transcritos -> históricos salariaisARead-onlyIdempotent
Recebe a transcrição dos holerites (competência, rubricas com código, descrição, referência, valor e tipo P/D, totais e líquido, documento e folha) e o agrupamento das rubricas em históricos ({ nome, rubricas: [códigos ou descrições], fgts, inss }). Confere o fechamento de cada holerite (proventos − descontos = líquido), acusa competências faltantes no período, proventos que não entraram em histórico e meses sem a rubrica; devolve historicosSalariais (ocorrências com _origem) e contrato.remuneracoes (vigências).
| Name | Required | Description | Default |
|---|---|---|---|
| periodo | No | Período do contrato (aaaa-mm), para acusar competências faltantes. | |
| holerites | Yes | Holerites transcritos: { competencia, rubricas: [{ codigo, descricao, referencia, valor, tipo P|D }], totais, liquido, documento, folha }. | |
| historicos | No | Agrupamento das rubricas em históricos: [{ nome, rubricas: [códigos ou descrições], fgts, inss }]. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description adds substantial behavioral detail beyond them: it verifies proventos − descontos = líquido, flags missing competências, proventos not absorbed into a history, and months lacking a rubrica, and names the return shape (historicosSalariais with _origem, contrato.remuneracoes). This is rich, non-redundant disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads what is received, then the checks, then what is returned — a logical order — and every clause carries information. It is a single dense multi-clause sentence, which slightly hurts parseability but wastes little.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and nested-object inputs, the description compensates by naming both returned artifacts (historicosSalariais ocorrências with _origem, contrato.remuneracoes vigências) and the validation semantics. Nothing an agent needs to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so periodo, holerites and historicos are already documented in the schema. The description restates the field groupings but adds no syntax or format detail beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific transformation (transcrição de holerites -> históricos salariais) with concrete verbs (recebe, confere, devolve) and enumerates exactly which fields flow in and out. An agent can distinguish it from adjacent 'X para Y' siblings (extrato_para_fgts, trct_para_pagamentos) because the resource pair is named precisely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (converting transcribed payslips into salary histories with validation) but never states when to prefer this tool over alternatives or any prerequisites/exclusions. Usage is inferable from the transformation framing rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modelos_atualizarAtualizar modelos extraídos do PJe-CalcADestructiveIdempotent
Refaz os modelos usados pelo gerador a partir da instalação: "verbas" (com o PJe-Calc em execução: lança todas as verbas do Expresso num cálculo temporário, exporta, monta a biblioteca e exclui o temporário) ou "catalogos" (com o PJe-Calc PARADO: lê municípios, assuntos CNJ e feriados do banco H2). Use após atualizar o PJe-Calc ou sincronizar tabelas.
| Name | Required | Description | Default |
|---|---|---|---|
| alvo | Yes | "verbas": biblioteca das verbas do Expresso; "catalogos": municípios, feriados, pisos e demais catálogos. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false. The description adds real context beyond them: the verbas path creates a temporary cálculo, exports, builds the library and then deletes the temporary. It stops short of stating what is overwritten if the models already exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and then the invocation guideline, with the two modes parenthetically scoped. Dense but no padding; the nested clauses are long but each carries operational detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter mutation tool with full annotation coverage and no output schema, the description covers action, both modes, preconditions and timing. It only lacks failure/overwrite consequences, which limits it below a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the enum values are already documented, so the baseline is 3. The description still adds meaning by tying each enum value to its runtime precondition (PJe-Calc running vs stopped) and to the different data sources (Expresso verbas vs H2 municipality/CNJ/holiday tables).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Refaz) and resource (os modelos usados pelo gerador a partir da instalação), then splits it into two clearly named modes ("verbas" vs "catalogos") with distinct behavior. An agent can distinguish this rebuild-models tool from sibling update tools like tabelas_atualizar without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit when-to-use ("Use após atualizar o PJe-Calc ou sincronizar tabelas") and, more valuably, the operational precondition per mode: verbas requires PJe-Calc running, catalogos requires it STOPPED. It does not name alternative sibling tools to prefer instead, so it falls short of the top mark.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_abrir_interfaceAbrir a interface no navegadorAIdempotent
Abre a interface web do PJe-Calc no navegador padrão do usuário (ou o Firefox portátil que acompanha o PJe-Calc). Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| pagina | No | Caminho relativo (padrão: página inicial pages/principal.jsf). | |
| firefox_portatil | No | Usa navegador/windows/FirefoxPortable.exe. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the safety profile (non-read-only, non-destructive, idempotent, closed-world), so the description's burden is lighter. It adds real value by disclosing the prerequisite state (app running) and the browser selection behavior, going beyond what the annotations state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no waste; the primary behavior is front-loaded and the prerequisite is appended compactly. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple launcher with no output schema, the description covers the action, the browser selection, and the prerequisite state. It does not address failure behavior (e.g., what happens if the app is not running) or any confirmation returned, but that is a minor gap given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (pagina, firefox_portatil) are already documented in the schema. The description mentions the browser choice, which loosely maps to firefox_portatil, but adds no syntax, defaults, or format details beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: opening the PJe-Calc web interface in the default browser (or bundled portable Firefox). This is clear and distinct from sibling tools like pjecalc_paginas or pjecalc_status, though it never explicitly names or contrasts those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one prerequisite — 'Requer o app em execução' (the app must be running) — which is genuinely useful context. However, it offers no guidance on when to use this versus related tools such as pjecalc_paginas or pjecalc_status, leaving usage largely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_infoInformações do PJe-CalcBRead-onlyIdempotent
Identidade completa da instalação: versão/build do pjecalc.jar, módulos (base/negocio/integracao), stack tecnológico, portas do Tomcat, DataSource H2, parâmetros de JVM dos .bat, token de serviços e URLs dos 24 TRTs para sincronização de tabelas.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds real value by disclosing that the payload includes a service token (sensitive) and spans many subsystems. It does not say whether the data is read from disk or requires a running installation, nor any cost/latency implications of gathering all of it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the core claim ('Identidade completa da instalação') followed by a compact enumeration of contents. Every item listed is informative; the list is long but each element is a distinct returned field, not filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry the return shape, and it does so by enumerating the major fields, including the token and TRT URLs. Annotations cover the safety profile and there are no parameters. The only missing piece is the static-vs-live source of the data and its relationship to the config_* siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so the baseline is 4; there is nothing for the description to disambiguate. The schema is empty and 100% covered by definition, and the description correctly implies a parameterless snapshot call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It states a clear resource (the installation's identity) and enumerates exactly what that means: jar version, modules, stack, ports, DataSource, JVM params, token, TRT URLs. An agent knows precisely what comes back. It does not, however, differentiate from near-identical siblings such as config_portas, config_token, config_datasource, config_ler or pjecalc_status, which appear to overlap heavily.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no exclusions. Given siblings like config_memoria, config_portas, config_token and pjecalc_status that plausibly return subsets of the same data, an agent has no way to know whether this is the aggregate overview or whether the narrower tools should be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_iniciarIniciar o PJe-CalcAIdempotent
Inicia o PJe-Calc e aguarda a aplicação responder (até 3 min). Modo "sem-navegador" (padrão): sobe o Tomcat como o launcher oficial, sem abrir janela/navegador (ideal para o agente). Modo "normal": igual ao iniciarPjeCalc.bat (janela + navegador). Em seguida o usuário pode abrir http://localhost:9257/pjecalc no navegador.
| Name | Required | Description | Default |
|---|---|---|---|
| modo | No | sem-navegador (padrão) ou normal. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes beyond the annotations (idempotentHint, destructiveHint=false) by disclosing the up-to-3-minute wait, that Tomcat is started as the official launcher, that no window/browser opens in headless mode, and the resulting port/URL. It does not state what happens if the service is already up or what a failure looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action and its timeout, then the mode semantics, then the follow-up URL. Dense and mostly waste-free; the trailing localhost sentence is marginally useful but slightly beyond the tool's own scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and a single optional parameter, so the description carries the burden and does so adequately: what starts, how long it waits, the modes, and the endpoint exposed. It omits how to confirm readiness afterward (pjecalc_status) and the return shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (baseline 3), but the description adds real meaning to the enum values — "sem-navegador" is explained as launching Tomcat without a window, "normal" as equivalent to iniciarPjeCalc.bat — which the terse schema text does not convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Inicia o PJe-Calc") and disambiguates the two launch modes with concrete behavior for each. It does not, however, distinguish itself from nearby siblings like pjecalc_abrir_interface or pjecalc_status, which an agent must sort out on its own.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"sem-navegador (padrão) ... ideal para o agente" gives clear guidance for choosing a mode, but there is no guidance on when to pick this tool over the sibling launch/status/info tools, nor any stated prerequisites (e.g. is the app already running?).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_localizarLocalizar o PJe-Calc no computadorAIdempotent
Mostra qual instalação do PJe-Calc o MCP está usando e como a encontrou (PJECALC_HOME, escolha guardada, PJe-Calc em execução, pasta acima do MCP ou busca em Downloads, Área de Trabalho, Documentos, Arquivos de Programas e raiz dos discos). Com "pasta", fixa a instalação escolhida pelo usuário (guardada para as próximas vezes). Com "procurar_de_novo", esquece a escolha e busca outra vez (use quando a pasta foi movida). Se houver várias instalações, pergunte ao usuário qual usar.
| Name | Required | Description | Default |
|---|---|---|---|
| pasta | No | Pasta do PJe-Calc (a que contém "bin" e "tomcat"). | |
| procurar_de_novo | No | Esquece a instalação guardada e procura o PJe-Calc de novo (use quando a pasta foi movida). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, so safety is partly covered. The description adds real behavior beyond that: the ordered discovery strategy (PJECALC_HOME, saved choice, running instance, parent folder, common directories) and the fact that "pasta" persists a choice while "procurar_de_novo" forgets it. No contradiction with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the primary purpose (which installation is in use and how it was found), followed by per-parameter behavior. The parenthetical list of search locations is long but informative; otherwise the text is tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by explaining what is reported (the installation in use plus the discovery method). For a two-parameter, zero-required tool this is essentially complete, with only minor gaps around failure behavior when nothing is found.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds genuine semantics the schema lacks: "pasta" selects and persists an installation for future runs, and "procurar_de_novo" clears the saved choice. These side effects are not visible from the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: it shows which PJe-Calc installation the MCP is currently using and how it was found. This is clearly distinct from siblings like pjecalc_status and pjecalc_info, and an agent can tell what the tool returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit conditions for both parameters: use "procurar_de_novo" when the folder was moved, and "pasta" to persist a user-chosen installation. It also instructs the agent to ask the user when multiple installations exist. It does not name an alternative sibling tool, 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.
pjecalc_logsLer logs do PJe-CalcARead-onlyIdempotent
Últimas linhas dos logs do Tomcat/MCP (tomcat/logs). Com somente_erros=true, lista só exceções e linhas GRAVE — útil quando uma operação devolve "Erro Interno no Servidor".
| Name | Required | Description | Default |
|---|---|---|---|
| linhas | No | Linhas por arquivo (padrão 60). | |
| arquivo | No | Arquivo específico dentro de tomcat/logs. | |
| somente_erros | No | Lista só exceções e linhas GRAVE/SEVERE. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, covering the safety profile. The description adds the log location and the filtering behavior of somente_erros, but says nothing about rotation, file count, encoding, or how the raw lines are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with the resource identified first and the practical trigger in the second. No padding or redundant restatement of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations covering safety and no output schema required, the definition tells the agent where the logs live and when to apply the error filter — enough to call it correctly. It could still note the default volume of lines returned per file.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (linhas, arquivo, somente_erros) are documented in the schema, including the default of 60 and the 500 maximum. The description only restates the meaning of somente_erros, adding no syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource: reading the last lines of the Tomcat/MCP logs under tomcat/logs. It is unmistakably the only log-reading tool among the siblings, though it never explicitly contrasts itself with any of them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names a concrete trigger: when an operation returns "Erro Interno no Servidor", use somente_erros=true to see only exceptions and GRAVE lines. No alternative tool or exclusion is mentioned, but the when-to-use context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_paginasListar páginas do webappARead-onlyIdempotent
Mapa completo das páginas .xhtml do webapp (calculos, índices, INSS, IRPF, FGTS, custas, pagamento, cartão de ponto etc.). Use pjecalc_abrir_interface com o caminho retornado para abrir cada uma.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so safety is covered. The description adds value beyond that by characterizing the output as a 'complete map' of .xhtml pages and tying it to the follow-up open step, though it omits anything about output format details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences: the first front-loads the purpose and scope, the second gives the follow-up action. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param listing tool with annotations covering the safety profile and no output schema, the description is nearly complete: it says what is returned (paths to webapp pages) and how to use them. Minor gap in not describing the exact return shape, but adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing to document and the baseline is 4. The description correctly implies a no-argument, list-everything operation rather than suggesting filters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource: it maps/list the .xhtml pages of the webapp, and adds concrete examples (calculos, índices, INSS, IRPF, FGTS, custas, pagamento, cartão de ponto). This clearly separates it from sibling tools like pjecalc_abrir_interface, which consumes the returned path rather than producing the map.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence explicitly routes the agent to the next action: use pjecalc_abrir_interface with the returned path to open each page. This gives clear context for when the tool is used, though it does not state exclusions or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_pararParar o PJe-CalcADestructiveIdempotent
Encerra o PJe-Calc. Se foi iniciado pelo MCP (sem-navegador), encerra o Tomcat de forma ordenada (o banco H2 fecha corretamente); caso contrário encerra o processo java, como o próprio launcher faria ao sair.
| Name | Required | Description | Default |
|---|---|---|---|
| forcar | No | Encerra o processo java diretamente. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered; the description adds genuinely useful behavior beyond that — the orderly Tomcat shutdown when MCP-started (with the H2 database closing correctly) versus killing the java process like the launcher would. It could go further by warning about data-loss risk in the non-MCP/forced path.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but well front-loaded: the action comes first, then the two conditional branches in a single sentence. Every clause carries information, though the nesting of conditions makes it slightly heavier than necessary for a one-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple stop tool with one optional flag, no output schema, and destructive/idempotent annotations already present, the description covers the important runtime behavior in both branches. Only the return/error behavior when nothing is running is left implicit, which is acceptable given idempotentHint=true.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single optional 'forcar' flag is documented in the schema itself ('Encerra o processo java diretamente'). The description does not mention the flag or explain how an explicit force interacts with the two shutdown paths it describes, so it adds nothing over the schema — baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Encerra o PJe-Calc') and is unambiguously the opposite pole of the sibling pjecalc_iniciar, so an agent can route between start/stop/status without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains what happens in each shutdown path but never says when the agent should call this versus alternatives such as pjecalc_status (to check whether PJe-Calc is even running) or whether calling it when already stopped is a no-op. No when/when-not guidance or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_statusStatus do PJe-CalcARead-onlyIdempotent
Estado do PJe-Calc: processos java, porta HTTP, se a aplicação responde, versão e banco; quando não responde, o diagnóstico lido no log (por exemplo, falta de memória) e o que fazer. Não altera nada.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and non-destructive, and the closing 'Não altera nada' merely restates that. Beyond the structured data, the description adds real behavioral value: it explains that the tool reads the log to produce a diagnosis (e.g. out-of-memory) and includes remediation guidance when the app is down, which tells the agent what a non-responding result actually contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the reported fields listed first and the failure-path behavior second; every clause carries information. The only soft spot is the trailing 'e o que fazer', which is vague about whether remediation advice is data in the response or a directive to the agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must convey return content, and it does: process state, port, reachability, version, database, and log-based diagnosis. Adequate for a zero-parameter read tool; it could be marginally stronger by stating the response shape (structured fields vs. free text) since no output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the baseline is 4 and there is nothing further the description could clarify. No parameter semantics are needed or missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates exactly what the tool reports: Java processes, HTTP port, whether the application responds, version and database, plus log-derived diagnosis when it does not respond. That is a concrete verb+resource picture an agent can act on. It stops short of naming a sibling (e.g. pjecalc_logs or pjecalc_info) to distinguish overlapping diagnostic data, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent infers 'call this to check whether PJe-Calc is up and why it is not.' There is no explicit when-to-use/when-not, and no routing to pjecalc_logs for raw logs or pjecalc_iniciar/pjecalc_parar for lifecycle actions, which are the obvious neighbors for the 'what to do' part.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pjecalc_template_csvLer template CSV de importaçãoARead-onlyIdempotent
Conteúdo dos arquivos CSV de exemplo usados pela tela de importação (cartão de ponto, jornada, faltas, férias e histórico salarial). Use como referência para gerar arquivos de importação.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo | No | Caminho relativo (ex.: templateCartaoDePonto/ExemploCartaoDePonto.csv). Deixe vazio para listar. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds that these are 'exemplo' reference files but does not describe return shape or listing behavior. Against annotation-covered reads, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences; the resource definition is front-loaded and the intended use follows. Every sentence earns its place. Slightly less than 5 because the category list is a bit long but it is informative rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, annotation-covered read tool with no output schema, the description is sufficient: it says what is inside the files and why to read them. The only minor gap is that it does not restate that an empty argument lists available templates, but the schema covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already explains the path format and the empty-string listing behavior. The description adds no parameter-level detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('Conteúdo dos arquivos CSV de exemplo') and enumerates the categories (cartão de ponto, jornada, faltas, férias, histórico salarial), so an agent immediately knows what it returns. It does not name a sibling it overlaps with, but no sibling provides this template content, so no differentiation is strictly needed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit use case: 'Use como referência para gerar arquivos de importação.' This tells the agent when the tool is valuable. However, it offers no when-not guidance or alternative tools, keeping it short of a perfect score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
processo_mapaMapa do processo (fase e processos ligados)ARead-onlyIdempotent
Confere o mapa do processo em contrato.processos: o processo principal (fase: PRE_PROCESSUAL, CONHECIMENTO, RECURSAL, LIQUIDACAO, EXECUCAO_PROVISORIA, EXECUCAO, ENCERRADO; trabalho: CALCULO_NOVO, ATUALIZACAO, EXECUCAO_COLETIVA, HABILITACAO, ENTE_PUBLICO) e todos os processos ligados (conexo, litispendência, coisa julgada, ação anterior arquivada, protesto, coletiva, acordo, recuperação judicial, falência, prova emprestada, rescisória...), cada um com o efeito no cálculo e os documentos exigidos da relação. Acusa números de processo citados nos documentos e decisões que não estão no mapa, prescrição incompatível com o marco interruptivo, parcela já decidida em outro processo, data-limite de recuperação judicial, devedores, pagamentos da execução e destinos do crédito. Use logo no começo (etapa 0). Veja pjecalc://docs/modulos/processo.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so safety is covered. The description adds substantive behavioral context beyond that: it is an analysis tool that flags process numbers missing from the map, prescription conflicts, already-decided parcels, RJ deadlines, debtors, and execution payments. It does not disclose return format or any rate/permission constraints, keeping it at 4.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, then elaborates. The parenthetical enumerations of phase, trabalho, and linked-process types are long and make it dense, but they carry genuine domain signal rather than filler, so it stays appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry the return burden, and it does explain what the tool detects and flags. It also points to pjecalc://docs/modulos/processo for depth. It is strong for a complex domain tool, though it leaves the two input parameters unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (arquivo_json and especificacao are both documented), so the baseline is 3. The description never references either parameter or their file-vs-inline JSON alternatives, adding no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Confere o mapa do processo em contrato.processos') and then delimits the exact scope: the main process with its phase/trabalho enums and all linked processes. An agent can tell precisely what this tool inspects, and it is clearly distinct from sibling tools like calculo_validar or calculo_pendencias.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear directive on timing: 'Use logo no começo (etapa 0)', which orients the agent within the workflow. It does not, however, name any alternative tool or state when NOT to use it, so the routing guidance stops short of full 5-level completeness.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_precatorio_atualizarAtualizar precatório (REST)ARead-onlyIdempotent
POST /pjecalc/servico/rest/atualizacao/precatorios — envia um AtualizacaoPrecatorioDTO e recebe o precatório atualizado (correção por índices de precatórios). O DTO é um objeto JSON livre (campos como numeroPrecatorio, valor, dataBase, indices...). Consulte references/API-REST.md. Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| dto | Yes | Objeto AtualizacaoPrecatorioDTO (JSON). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds non-obvious context beyond that: the local PJeCalc app must be running, the request body is an arbitrary free-form JSON object rather than a fixed shape, and the reference doc must be consulted for details. It does not, however, describe error behavior or what the returned object contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A compact paragraph that front-loads the HTTP method and endpoint path, then the DTO contract, then the prerequisite. Every sentence carries information; it is slightly dense (three ideas in one block) but wastes nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an endpoint whose body is a free-form nested object and which has no output schema, the description supplies the endpoint, the DTO type, example fields and a doc reference for the full contract. What is missing is a hint about the shape of the returned precatório, though the absence of an output schema limits how much blame this warrants.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is technically 100% but the schema only says 'Objeto AtualizacaoPrecatorioDTO (JSON)' with additionalProperties: {} — it defines no fields at all. The description compensates by naming example fields (numeroPrecatorio, valor, dataBase, indices...) and pointing to references/API-REST.md, which is real added meaning over an empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb, resource and transport: POST to /pjecalc/servico/rest/atualizacao/precatorios, sending an AtualizacaoPrecatorioDTO and receiving the updated precatório via index correction. An agent can distinguish this from sibling calculation tools such as calculo_atualizar or the SIP-based rest_precatorios_sip* tools without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a prerequisite ('Requer o app em execução') and a documentation pointer ('Consulte references/API-REST.md'), which is useful context. However, it never states when to prefer this tool over the related precatório siblings (rest_precatorios_sip, rest_precatorios_sip_indices) or what input it expects the caller to have on hand. Usage is implied rather than directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_precatorios_sipAtualizar precatórios SIP (REST)ADestructiveIdempotent
POST /pjecalc/servico/rest/atualizacao/sip/precatorios — atualiza em lote uma lista de AtualizacaoPrecatorioSIPDTO (precatórios do SIP) e devolve a lista processada. Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| lista | Yes | Lista de objetos AtualizacaoPrecatorioSIPDTO. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (write, destructive, idempotent, closed-world). The description adds the batch nature, the returned processed list, and the runtime dependency (app must be running), which are genuine additions. It does not explain what the update destroys or the DTO's mutation semantics, so with annotations carrying the burden a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence front-loads the endpoint, then the action, the return, and the runtime requirement in sequence. No filler text; every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter batch mutation with no output schema, the description covers endpoint, batch action, return value, and runtime dependency. The DTO shape is only referenced rather than described, but that is acceptable given the schema and lacks an output contract to explain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'lista' parameter, so the schema already documents it. The description restates that the list holds AtualizacaoPrecatorioSIPDTO objects but adds no syntax or format detail beyond the schema, giving the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: batch-updates a list of AtualizacaoPrecatorioSIPDTO (SIP precatórios) via a named REST endpoint. The 'em lote' / 'SIP' qualifiers provide some differentiation from the singular sibling rest_precatorio_atualizar, though it never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides one prerequisite ('Requer o app em execução'), which is useful context. However, it gives no explicit when-to-use guidance relative to alternatives like rest_precatorio_atualizar or rest_precatorios_sip_indices, leaving routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_precatorios_sip_indicesAtualizar índices de precatórios SIP (REST)BDestructiveIdempotent
POST /pjecalc/servico/rest/atualizacao/sip/precatorios/indices — atualiza em lote uma lista de AtualizacaoPrecatorioSIPIndicesDTO. Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| lista | Yes | Lista de objetos AtualizacaoPrecatorioSIPIndicesDTO. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is covered. The description adds the batch nature ('em lote') and the app-running prerequisite, but says nothing about what gets overwritten, required auth, or error behavior for a destructive batch write.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the endpoint and the action, with the operational prerequisite last. Efficient, though the full URL path occupies space that adds little semantic value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter destructive batch mutation, the annotations plus schema plus the app-running note cover the essentials. Missing are consequences of the update (what indices change, reversibility) that an agent would want before invoking a destructive write.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'lista' parameter, so the baseline is 3. The description names the same DTO type the schema documents but adds no format, limits, or item-shape detail beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: batch update of a list of AtualizacaoPrecatorioSIPIndicesDTO, with the REST endpoint spelled out. It is distinguishable from siblings like rest_precatorio_atualizar and rest_precatorios_sip, though it never explicitly says how it differs from them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only contextual guidance is the prerequisite 'Requer o app em execução', which is genuinely useful but not a when-to-use rule. No alternatives or exclusion conditions are named, leaving the agent to infer when this tool is preferred over nearby precatório tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_selic_periodoCalcular SELIC do período (REST)ARead-onlyIdempotent
GET /pjecalc/servico/rest/atualizacao/selic — devolve o fator SELIC acumulado entre duas datas. Datas no formato dd/MM/aaaa. Autenticação automática via header Authentication (Base64 do token dos .bat). Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| dataFinal | Yes | Data final dd/MM/aaaa. | |
| dataInicial | Yes | Data inicial dd/MM/aaaa. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful context beyond that: authentication is handled automatically via the Authentication header (Base64 of the .bat token) and the app must be running. It stops short of describing response shape or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the endpoint and return value, followed by format and auth/prerequisite notes. Every sentence carries information; slight room for trimming in the date-format repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only tool with no output schema, the description covers what is returned, the date format, auth handling and the runtime prerequisite. The absence of any error/edge-case note (e.g. invalid or reversed dates) is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – both dataInicial and dataFinal are documented with the dd/MM/aaaa format in the schema itself. The description repeats that same format, adding no new semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('devolve o fator SELIC acumulado entre duas datas') and even gives the concrete REST endpoint (GET /pjecalc/servico/rest/atualizacao/selic). The resource is unique among the rest_* siblings, so an agent can identify it without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a prerequisite ('Requer o app em execução') but never states when to prefer this over other SELIC/atualização sources or any when-not condition. Usage is only implied by the purpose statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_tabelas_sincronizar_nacionaisSincronizar tabelas nacionais (REST)AIdempotent
LADO SERVIDOR do PJe-Calc local (o serviço que ele oferece a outros TRTs): NÃO atualiza as tabelas deste PJe-Calc — para isso use tabelas_atualizar. GET /pjecalc/servico/rest/sincronizacao/nacionais/{hash}?versao=X — devolve SincronizacaoTabelasDTO com {tabelas: Base64(GZIP do SQL), hashServidor}. 404 = já está na versão mais recente. Com salvar_arquivo, grava o SQL descompactado no caminho indicado. Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | Hash solicitante (ex.: 0 para forçar). | |
| versao | No | Versão desejada (opcional). | |
| salvar_arquivo | No | Caminho para gravar o SQL descompactado (opcional). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=false), the description discloses the 404 semantics, the Base64/GZIP return payload, the file-writing side effect of salvar_arquivo, and the runtime prerequisite ('Requer o app em execução'). This is rich behavioral context and consistent with the readOnlyHint=false annotation given the file write.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but front-loaded: the server-side role and the sibling exclusion come first, followed by the endpoint, return shape, and edge cases. Every sentence carries information, though the technical packing is heavy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by describing the returned SincronizacaoTabelasDTO structure, the 404 outcome, the file-write option, and the app-running requirement. An agent has everything needed to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented. The description adds structural context (hash and versao as URL components) and restates salvar_arquivo's file-write behavior, but contributes little new parameter meaning beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific role ('LADO SERVIDOR do PJe-Calc local'), the exact endpoint, and what it returns, so the agent knows precisely what the tool does. It explicitly distinguishes itself from tabelas_atualizar, preventing the most likely confusion with a sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit when-not ('NÃO atualiza as tabelas deste PJe-Calc') and names the alternative (tabelas_atualizar) plus a special case (404 = already latest). The positive use case — serving tables to other TRTs — is stated but less elaborated than the exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_tabelas_sincronizar_regionaisSincronizar tabelas regionais (REST)AIdempotent
LADO SERVIDOR do PJe-Calc local (o serviço que ele oferece a outros TRTs): NÃO atualiza as tabelas deste PJe-Calc — para isso use tabelas_atualizar. GET /pjecalc/servico/rest/sincronizacao/nacionaiseregionais/regional/{TRT}/hash/{hash} (ou ...proxy... para passar pelo TRT raiz). Tribunal deve ser TRT1..TRT24 (maiúsculo). Devolve SincronizacaoTabelasDTO regional. Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | Hash solicitante. | |
| proxy | No | Usa o endpoint nacionaiseregionaisproxy (via TRT responsável). | |
| tribunal | Yes | TRT1..TRT24. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), so the bar is lower. The description adds real context beyond them: server-side role, the app-must-be-running precondition, and the endpoint form. It doesn't detail side effects on the receiving TRT, so not a full 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The key routing distinction (server-side, does not update local tables) is front-loaded in the first clause, which is exactly right. It is a dense single paragraph packing endpoint template and return type, slightly crammed but with no wasted sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-param tool with no output schema, the description names the return type (SincronizacaoTabelasDTO regional) and the runtime precondition. Enough for correct invocation, though it could say more about what the sync actually changes on the remote side.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the enum already documents tribunal and the descriptions cover hash and proxy. The description adds only marginal detail (uppercase requirement, which the enum implies, and the proxy endpoint path). Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (sincronizar tabelas regionais) and immediately scopes it as the server-side endpoint, explicitly noting it does NOT update this instance's tables. This distinguishes it from sibling tabelas_atualizar and rest_tabelas_sincronizar_nacionais without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit when-not ('NÃO atualiza as tabelas deste PJe-Calc') and names the alternative to use instead ('para isso use tabelas_atualizar'). Also states the precondition 'Requer o app em execução', leaving little to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_tabelas_ultima_versaoÚltima versão das tabelas nacionais (REST)ARead-onlyIdempotent
LADO SERVIDOR do PJe-Calc local (o serviço que ele oferece a outros TRTs): NÃO atualiza as tabelas deste PJe-Calc — para isso use tabelas_atualizar. GET /pjecalc/servico/rest/sincronizacao/nacionais/ultimaVersao — devolve ControleAtualizacaoTabelasDTO com a última versão das tabelas auxiliares nacionais (404 se não houver controle). Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, but the description adds behavior beyond them: the returned DTO type (ControleAtualizacaoTabelasDTO), the 404-when-no-control error case, and the runtime prerequisite of the app being active. That is meaningful operational context an agent cannot infer from the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but well front-loaded: the server-side scope and the negative 'does not update' clause come first. Every clause carries information (endpoint, return type, error code, precondition), though the paragraph is packed tightly enough to be slightly hard to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by naming the returned DTO and the 404 case, and it flags the app-running dependency. For a zero-parameter read endpoint, there is nothing an agent still needs in order to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is no parameter semantics to explain; schema coverage is 100% by definition. Baseline 4 applies with no gap introduced by the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('devolve ... a última versão das tabelas auxiliares nacionais') and identifies the exact endpoint. It explicitly scopes itself as the server-side view ('LADO SERVIDOR do PJe-Calc local'), which separates it from the local/client variants like tabelas_status and rest_tabelas_versao.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states what the tool does NOT do ('NÃO atualiza as tabelas deste PJe-Calc') and names the alternative for that job ('para isso use tabelas_atualizar'). It also gives a precondition ('Requer o app em execução'), so an agent knows both when to pick it and when not to.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rest_tabelas_versaoBuscar versão específica das tabelas (REST)ARead-onlyIdempotent
LADO SERVIDOR do PJe-Calc local (o serviço que ele oferece a outros TRTs): NÃO atualiza as tabelas deste PJe-Calc — para isso use tabelas_atualizar. GET /pjecalc/servico/rest/sincronizacao/nacionais/versao/{hash} — busca o registro de controle de uma versão pelo hash (MD5). 404 = versão inexistente. Requer o app em execução.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | Hash da versão (hashSolicitante). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, and closed-world behavior. The description adds valuable operational context beyond annotations: the exact GET endpoint, that a 404 means the version does not exist, that it does not modify local tables, and that the app must be running. No contradiction is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads the key scope distinction ('LADO SERVIDOR... NÃO atualiza...') before giving endpoint and failure semantics. Every clause carries information useful for correct invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only GET with one required parameter and full annotation coverage, the description supplies the endpoint, failure condition, runtime prerequisite, and scope exclusion. No output schema exists, so return details need not be explained further.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the hash parameter is already documented. The description adds that the hash is MD5 and corresponds to the endpoint path parameter, giving useful format and location meaning beyond the schema's 'hashSolicitante' label.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('busca') and resource ('registro de controle de uma versão pelo hash'), and explicitly distinguishes itself from the update tool by saying it does NOT update tables. An agent can identify it as a read-only server-side lookup rather than a synchronization or mutation operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when not to use it ('NÃO atualiza as tabelas deste PJe-Calc — para isso use tabelas_atualizar') and names the alternative for updates. It also states the prerequisite that the app must be running, but does not compare against the closely related latest-version sibling rest_tabelas_ultima_versao.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tabelas_atualizarAtualizar tabelas e índices do PJe-CalcADestructiveIdempotent
Executa Tabelas > Atualização de Tabelas e Índices > Online no PJe-Calc: o próprio aplicativo baixa as tabelas nacionais e as do TRT informado (se o TRT recusar, pelo proxy nacional do TRT8) e as aplica (10 a 60 s). Use o TRT do processo (o dígito TR do número CNJ: ...5.18.... = TRT18): as tabelas regionais de outros TRTs são substituídas. Requer internet. Devolve a situação das tabelas depois.
| Name | Required | Description | Default |
|---|---|---|---|
| regional | Yes | TRT do processo (TRT1..TRT24). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant context beyond the annotations: the operation replaces regional tables of other TRTs (explaining destructiveHint), takes 10–60 s, requires internet, and falls back to the TRT8 national proxy if the TRT refuses. This tells the agent what gets overwritten and the failure path, which the annotation flags alone do not.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense but front-loaded paragraph that opens with the action and then the mechanics. Every clause carries information (fallback, timing, parameter rule, requirement); punctuation is heavy but not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema, the description covers what it does, the parameter choice, the destructive consequence, the internet requirement, timing, and that it returns the tables' status. Complete enough to invoke safely, missing only explicit routing against sibling sync/status tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 100%, so the baseline is 3, but the description adds real meaning: it tells the agent to derive the value from the CNJ process number ('...5.18.... = TRT18') and warns that selecting the wrong TRT replaces other regions' tables. This is decision-relevant guidance beyond the enum list.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Atualizar tabelas e índices') and elaborates the mechanism (downloads national and TRT tables, applies them), which distinguishes it from read-only siblings like tabelas_status and rest_tabelas_sincronizar_*. However, it never names those alternatives, so sibling differentiation is implied rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides implied usage context ('Use o TRT do processo', 'Requer internet') but does not state when to use this tool versus restore/sync/status alternatives. The agent must infer the selection criteria from the surrounding tool set rather than being told.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tabelas_statusSituação das tabelas de índices do PJe-CalcARead-onlyIdempotent
Lê no PJe-Calc em execução a competência/data mais recente de cada índice (Tabela Única JT, IPCA-E, IPCA, INPC, TR, SELIC simples e composta, tabela diária de débitos, juros pela taxa legal). Com data_liquidacao diz se as tabelas cobrem a liquidação (até 2 meses de defasagem). Use antes de liquidar cálculos recentes.
| Name | Required | Description | Default |
|---|---|---|---|
| data_liquidacao | No | dd/mm/aaaa (padrão: hoje). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description still adds real value by describing what is returned (most recent competence/date per index) and the 2-month-lag coverage semantics of the data_liquidacao check.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with the action front-loaded; the long index enumeration is justified because it defines the tool's scope, though it slightly inflates length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read-only status tool with no output schema, the description covers scope, return content, and usage timing. Nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and documents the format/default, so the baseline would be 3. The description goes beyond it by explaining the parameter's effect: it determines whether the tables actually cover the given liquidation date, which the schema alone does not convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Lê') and resource (the index tables inside the running PJe-Calc), and enumerates exactly which indices are covered. The phrase 'no PJe-Calc em execução' implicitly separates it from the REST/sync variants (rest_tabelas_*, db_tabelas), though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Use antes de liquidar cálculos recentes' gives a concrete when-to-use condition tied to a sibling workflow (calculo_liquidar). It doesn't name an alternative tool or state when not to use it, so it falls short of the top band.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
titulo_comporCompor o título executivo (cadeia de decisões)ARead-onlyIdempotent
Monta a matriz de capítulos: para cada parcela e critério (ATUALIZACAO, HONORARIOS, CUSTAS...), a cadeia de decisões de todas as instâncias (vara, TRT, TST, STF, liquidação, execução), a decisão que vale (efeito substitutivo; recurso não conhecido não substitui; embargos integram; anulação com retorno), a situação e o trânsito por capítulo. Acusa capítulo sem decisão, decisão mal registrada, reforma por recurso não conhecido, capítulo anulado sem nova decisão, recurso pendente fora de execução provisória, conflito entre dispositivo e fundamentação, parcela que cita decisão superada e critério de correção que contraria precedente vinculante. Veja pjecalc://docs/modulos/titulo-executivo e pjecalc://docs/precedentes.
| Name | Required | Description | Default |
|---|---|---|---|
| arquivo_json | No | Alternativa: caminho de um arquivo .json com a especificação. | |
| especificacao | No | Especificação do cálculo (JSON). Formato em calculo_modelo_json. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds real behavioral value beyond that: it explains the prevailing-decision logic (substitutive effect, non-known appeal not substituting, embargoes integrating, annulment with return) and enumerates the eight diagnostic conditions the tool surfaces.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded: it opens with what the matrix is, then lists the diagnostics, then points to reference docs. It is dense with long multi-clause sentences, but the content is information-bearing rather than padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a high-complexity legal-analysis tool with no output schema, the description explains what is produced (the chapter matrix plus per-chapter status/trânsito) and what errors are flagged, and it links to two reference documents. It could say more about the returned shape, but it is largely complete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters (arquivo_json, especificacao) have 100% schema description coverage, so the schema already carries their meaning. The description adds no parameter-level detail — no format, precedence, or mutual-exclusion notes — so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource — it 'Monta a matriz de capítulos' (builds the chapter matrix) for the executive title — and scopes it precisely (per installment and criterion, across all instances). No sibling tool deals with composing/validating the título executivo, so an agent can tell it apart from calculo_*, catalogo_*, db_*, and config_* tools without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to build and check the decision chain (its diagnostic list signals a validation use case), but it never states when to use it versus alternatives or any preconditions. No explicit 'use this when' or 'do not use when' guidance is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trct_para_pagamentosTRCT transcrito -> pagamentos do contratoARead-onlyIdempotent
Recebe os campos do TRCT ({ codigo, descricao, valor, tipo P/D }), os totais (bruto, descontos, líquido), a data do pagamento, o documento e a folha; devolve contrato.pagamentos (um por provento, com a parcela provável pelo código do campo — Portaria MTE 1.621/2010) e as conferências da soma dos campos com os totais. Ligue cada pagamento à parcela do contrato antes de abater.
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | Data do pagamento das verbas rescisórias (aaaa-mm-dd). | |
| folha | No | Folha do TRCT nos autos. | |
| campos | Yes | Campos do TRCT: { codigo, descricao, valor, tipo P|D }. | |
| totais | No | Totais do TRCT (bruto, descontos, líquido), para conferir a soma dos campos. | |
| documento | No | Id do TRCT em contrato.documentos. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so safety is covered. The description goes further by disclosing the output semantics: one payment per provento, the probable parcela derived from the field code under Portaria MTE 1.621/2010, and the conferências of field sums against totals. That is genuine behavioral detail beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with inputs then outputs, and every clause carries information (field shape, totals role, output shape, parcela rule, conferência). Dense but not padded; the parenthetical clauses add load without much waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nested 5-parameter transform with no output schema, the description covers input shape, output shape, the parcela-mapping rule, and the sum-check behavior. It stops short of detailing the conferência result format, but the essential contract is conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds role meaning: 'campos' is the {codigo, descricao, valor, tipo P/D} list, 'totais' exists specifically to conferir a soma dos campos, and 'documento' is the TRCT id in contrato.documentos. It reinforces why each parameter exists rather than only restating it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific transformation: it takes transcribed TRCT fields/totals and returns contrato.pagamentos plus sum checks. No sibling tool does TRCT->payments conversion, so it is clearly distinguishable from the catalogo/calculo family. Verb+resource+output are all explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a pipeline position ('Ligue cada pagamento à parcela do contrato antes de abater'), which tells the agent what to do with the result, but it never states when to prefer this tool or what alternative exists for the same job. Usage is inferable but not spelled out.
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.
21 tool updates
v2.16.0-mcp.14- Changed
calculo_apurar_cartao_ponto2 fields changed- added
Input schema / properties / id_calculo / descriptionAdded value: +"Número do cálculo no PJe-Calc." - added
Input schema / properties / vinculos / descriptionAdded value: +"Verbas a ligar às colunas apuradas (quantidade ou divisor importados do cartão)."
- Changed
calculo_criar_lote2 fields changed- added
Input schema / properties / atualizar_tabelas / descriptionAdded value: +"Se as tabelas de índices não cobrirem a liquidação, atualiza-as pelo TRT do processo (padrão false)." - added
Input schema / properties / ignorar_tabelas / descriptionAdded value: +"Liquida mesmo com tabelas desatualizadas (o resultado fica errado)."
- Changed
calculo_excluir1 field changed- added
Input schema / properties / id_calculo / descriptionAdded value: +"Número do cálculo no PJe-Calc."
- Changed
calculo_exportar_pjc1 field changed- added
Input schema / properties / id_calculo / descriptionAdded value: +"Número do cálculo no PJe-Calc."
- Changed
calculo_externo_criar1 field changed- added
Input schema / properties / iniciar / descriptionAdded value: +"Inicia o PJe-Calc se estiver parado (padrão true)."
- Changed
calculo_liquidar2 fields changed- added
Input schema / properties / acumular_indices / descriptionAdded value: +"Desde quando acumular os índices de correção: mês subsequente ao vencimento, mês do vencimento ou a combinação dos dois (padrão: o da tela)." - added
Input schema / properties / id_calculo / descriptionAdded value: +"Número do cálculo no PJe-Calc."
- Changed
calculo_regerar_ocorrencias2 fields changed- added
Input schema / properties / id_calculo / descriptionAdded value: +"Número do cálculo no PJe-Calc." - added
Input schema / properties / manter_alteracoes / descriptionAdded value: +"Mantém as alterações feitas à mão nas ocorrências (padrão: regera tudo)."
- Changed
calculo_relatorio2 fields changed- added
Input schema / properties / formato / descriptionAdded value: +"HTML devolve o texto; PDF grava o arquivo (padrão HTML)." - added
Input schema / properties / id_calculo / descriptionAdded value: +"Número do cálculo no PJe-Calc."
- Changed
cartoes_para_jornadas2 fields changed- added
Input schema / properties / dias / descriptionAdded value: +"Marcações dia a dia: { data, marcacoes: [\"08:00\", \"12:00\", ...] }, { data, turnos } ou { data, ocorrencia }." - added
Input schema / properties / periodo / descriptionAdded value: +"Período a conferir (aaaa-mm-dd), para acusar dias sem registro."
- Changed
catalogo_assuntos_cnj1 field changed- added
Input schema / properties / filtro / descriptionAdded value: +"Parte do nome ou do código do assunto."
- Changed
catalogo_feriados1 field changed- added
Input schema / properties / uf / descriptionAdded value: +"Sigla da UF dos feriados estaduais e municipais."
- Changed
catalogo_pisos_vt1 field changed- added
Input schema / properties / uf / descriptionAdded value: +"Sigla da UF para filtrar."
- Changed
catalogo_validar_documentos3 fields changed- added
Input schema / properties / cnpj / descriptionAdded value: +"CNPJ, com ou sem pontuação." - added
Input schema / properties / cpf / descriptionAdded value: +"CPF, com ou sem pontuação." - added
Input schema / properties / numero_processo / descriptionAdded value: +"Número CNJ do processo, com ou sem pontuação."
- Changed
documento_imagens1 field changed- added
Input schema / properties / arquivo / descriptionAdded value: +"Caminho do PDF."
- Changed
documento_texto1 field changed- added
Input schema / properties / arquivo / descriptionAdded value: +"Caminho do PDF ou do arquivo de texto."
- Changed
extrato_para_fgts3 fields changed- added
Input schema / properties / lancamentos / descriptionAdded value: +"Lançamentos do extrato analítico: { competencia, data, valor, tipo DEPOSITO|JAM|SAQUE|MULTA }." - added
Input schema / properties / periodo / descriptionAdded value: +"Período do contrato (aaaa-mm), para acusar competências sem depósito." - added
Input schema / properties / saldo / descriptionAdded value: +"Saldo final do extrato, para conferir a soma dos lançamentos."
- Changed
holerites_para_historicos3 fields changed- added
Input schema / properties / historicos / descriptionAdded value: +"Agrupamento das rubricas em históricos: [{ nome, rubricas: [códigos ou descrições], fgts, inss }]." - added
Input schema / properties / holerites / descriptionAdded value: +"Holerites transcritos: { competencia, rubricas: [{ codigo, descricao, referencia, valor, tipo P|D }], totais, liquido, documento, folha }." - added
Input schema / properties / periodo / descriptionAdded value: +"Período do contrato (aaaa-mm), para acusar competências faltantes."
- Changed
modelos_atualizar1 field changed- added
Input schema / properties / alvo / descriptionAdded value: +"\"verbas\": biblioteca das verbas do Expresso; \"catalogos\": municípios, feriados, pisos e demais catálogos."
- Changed
pjecalc_localizar1 field changed- added
Input schema / properties / procurar_de_novo / descriptionAdded value: +"Esquece a instalação guardada e procura o PJe-Calc de novo (use quando a pasta foi movida)."
- Changed
pjecalc_logs1 field changed- added
Input schema / properties / somente_erros / descriptionAdded value: +"Lista só exceções e linhas GRAVE/SEVERE."
- Changed
trct_para_pagamentos5 fields changed- added
Input schema / properties / campos / descriptionAdded value: +"Campos do TRCT: { codigo, descricao, valor, tipo P|D }." - added
Input schema / properties / data / descriptionAdded value: +"Data do pagamento das verbas rescisórias (aaaa-mm-dd)." - added
Input schema / properties / documento / descriptionAdded value: +"Id do TRCT em contrato.documentos." - added
Input schema / properties / folha / descriptionAdded value: +"Folha do TRCT nos autos." - added
Input schema / properties / totais / descriptionAdded value: +"Totais do TRCT (bruto, descontos, líquido), para conferir a soma dos campos."
71 tool updates
v2.16.0-mcp.13- First observed
calculo_aprovar_plano - First observed
calculo_apurar_cartao_ponto - First observed
calculo_atualizar - First observed
calculo_comparar_referencia - First observed
calculo_criar - First observed
calculo_criar_lote - First observed
calculo_documentos_necessarios - First observed
calculo_excluir - First observed
calculo_exportar_pjc - First observed
calculo_externo_criar - First observed
calculo_gerar_pjc - First observed
calculo_importar_pjc - First observed
calculo_ler_pjc - First observed
calculo_liquidar - First observed
calculo_modelo_json - First observed
calculo_pendencias - First observed
calculo_plano_interpretacao - First observed
calculo_recentes - First observed
calculo_regerar_ocorrencias - First observed
calculo_relatorio - First observed
calculo_validar - First observed
cartoes_para_jornadas - First observed
catalogo_assuntos_cnj - First observed
catalogo_atividades - First observed
catalogo_cartao_ponto - First observed
catalogo_enums - First observed
catalogo_feriados - First observed
catalogo_municipios - First observed
catalogo_pisos_vt - First observed
catalogo_validar_documentos - First observed
catalogo_verbas - First observed
config_datasource - First observed
config_ler - First observed
config_memoria - First observed
config_portas - First observed
config_token - First observed
db_backup_arquivo - First observed
db_backup_sql - First observed
db_consultar - First observed
db_esquema - First observed
db_executar - First observed
db_restaurar - First observed
db_tabelas - First observed
documento_imagens - First observed
documento_inventario - First observed
documento_texto - First observed
extrato_para_fgts - First observed
holerites_para_historicos - First observed
modelos_atualizar - First observed
pjecalc_abrir_interface - First observed
pjecalc_info - First observed
pjecalc_iniciar - First observed
pjecalc_localizar - First observed
pjecalc_logs - First observed
pjecalc_paginas - First observed
pjecalc_parar - First observed
pjecalc_status - First observed
pjecalc_template_csv - First observed
processo_mapa - First observed
rest_precatorio_atualizar - First observed
rest_precatorios_sip - First observed
rest_precatorios_sip_indices - First observed
rest_selic_periodo - First observed
rest_tabelas_sincronizar_nacionais - First observed
rest_tabelas_sincronizar_regionais - First observed
rest_tabelas_ultima_versao - First observed
rest_tabelas_versao - First observed
tabelas_atualizar - First observed
tabelas_status - First observed
titulo_compor - First observed
trct_para_pagamentos
TDQS
Scored across 71 tools
Most tools target clearly distinct operations or resources, and descriptions provide strong differentiation. A few boundaries are blurry, such as calculo_criar vs calculo_importar_pjc vs calculo_gerar_pjc, and the multiple rest_tabelas_* endpoints, but an agent can generally tell them apart from the descriptions.
Names use consistent snake_case with predictable domain prefixes (calculo_, pjecalc_, catalogo_, documento_, db_, config_, rest_). There are minor deviations in internal pattern (some are noun phrases like calculo_modelo_json, others verb-based like calculo_criar) and a Portuguese/English mix, but the overall style is readable and consistent.
71 tools is an extreme mismatch for a single MCP server, far exceeding the 50+ threshold for poor appropriateness. Many are low-level DB, config, REST, and fine-grained lifecycle operations that would overwhelm agent selection and could be consolidated or split into focused servers.
The tool surface is exceptionally comprehensive, covering application lifecycle, calculation creation/validation/import/export/liquidation/update, document ingestion, catalogs, database, configuration, and REST integration. There are no obvious dead ends for the apparent PJe-Calc domain.
Maintenance
Related MCP Connectors
JusPronto is case-management software for Brazilian law firms. Its remote MCP server (OAuth 2.1 with PKCE, per-permission scopes, audit log) lets Claude and ChatGPT read the firm's own cases, deadlines, agenda, recent court movements and case files with the page cited. Write actions require the lawyer's approval. Requires a JusPronto account.
Brazilian labor calculation for AI: update labor claims and awards with official correction, interes
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
11
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceEnables AI assistants to connect to a running openLCA instance for life cycle assessment workflows, including building models, running calculations, auditing, and extracting data quality assessments.149 PyPI6-
- AlicenseNot gradedqualityCmaintenanceEnables Claude and other AI agents to build, edit, and analyze Microsoft Project desktop schedules on Windows through natural language, covering tasks, WBS, dependencies, resources, calendars, baselines, critical path, resource leveling, and earned value, with live changes in Project and single-step undo. It also exports results to PDF or CSV and reads project health and time-phased data for S-curves and histograms.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to control, automate, and query desktop project-management schedules in real time via native Windows COM, including task/WBS management, resource and cost assignment, baselines, critical path, status reporting, and PDF export.MIT
- FlicenseNot gradedqualityAmaintenanceEnables AI assistants such as Claude for Desktop or Cursor to control CAD applications (AutoCAD, ZWCAD, GstarCAD, BricsCAD) on Windows through 7 unified tools exposing 56 commands. Supports drawing shapes, managing layers, blocks and entities, extracting data, exporting to Excel, and saving drawings via natural language or direct tool calls.-