Skip to main content
Glama
geo-sapiens

Coletum MCP Server

Official
by geo-sapiens

gerar_pdf_preenchimento

Generate PDF reports from Coletum form submissions using export, column, or photographic models. Customize logo, hidden fields, photos per row, font, color, and page orientation.

Instructions

Gera PDF de preenchimentos. O PDF padrão é o da exportação do Coletum (modelo coletum_exportacao, o mesmo de gerar_pdf_modelo); a resposta traz modelo e layout. Os ajustes pedidos na conversa ("põe meu logo", "tira o campo X", "uma foto por linha", fonte, cor de destaque, página deitada) valem NO PRÓPRIO modelo do Coletum: o visual continua o da exportação. modelo=coletum_colunas para "em colunas" ou "compacto" (pergunta | resposta); modelo=coletum_fotografico para "relatório fotográfico" ou "só as fotos". Se o pedido tem um ajuste que nenhum dos três faz (ver ajustes), a ferramenta recusa e diz quais ajustes não existem, sem gerar outro visual: avise o cliente e ofereça o modelo dele (analisar_pdf_modelo e gerar_pdf_modelo).

Escolha: (1) preenchimentos com id e criado_em (de buscar_preenchimentos); (2) ids_preenchimentos com um período; (3) só filtros, até max_preenchimentos. Na escolha (3) entram os mais recentes, porque a API devolve do mais recente para o mais antigo: "PDF dos 5 últimos" = sem filtro e max_preenchimentos=5 (1 chamada); para mostrar a lista antes, buscar_preenchimentos com pagina=1 e tamanho_pagina=5 e passe id e criado_em. Por padrão sai um PDF com todos, cada preenchimento em página nova; modo=um_por_preenchimento gera um arquivo para cada. As fotos são baixadas pelo link direto do armazenamento, sem passar pela conversa; se o link não responde, entra um quadro "foto indisponível". Custo: 1 chamada por janela de busca (ids com datas próximas dividem a mesma janela) ou 1 por página de filtro, mais 1 pela estrutura na primeira vez. Baixar fotos não gasta cota, mas gera tráfego para o Coletum (até 200 fotos por chamada). Devolve só caminhos, links, páginas e contagens, nunca o conteúdo (vários arquivos: o link de cada um e o da pasta). Ao terminar, sempre mostre ao usuário o caminho completo de cada arquivo (vem no começo da resposta e em mostrar_ao_usuario), em bloco de código, para ele copiar; se ele pedir para abrir, use mostrar_arquivo. Nunca diga só 'na pasta do projeto'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modoNoum_pdf (padrão): um arquivo com todos, cada preenchimento em página nova. um_por_preenchimento: um arquivo para cada.
modeloNoModelo do Coletum. coletum_exportacao (padrão): igual ao PDF da exportação. coletum_colunas: "em colunas", "compacto", pergunta à esquerda e resposta à direita. coletum_fotografico: "relatório fotográfico", "só as fotos", fotos grandes com legenda e os demais campos em letra pequena.
origemNoOrigem da criação: mobile (aplicativo), web_private (sistema, logado) ou web_public (link público).
ajustesNoAjustes pedidos na conversa, aplicados no próprio modelo do Coletum: empresa{nome,logo} (nome da conta na linha de 14 pt e logo no topo à direita), campos{ocultar[],ordem[],mostrar_vazios} (pela chave ou pelo rótulo, em qualquer nível), fotos{por_linha 1 a 4}, fonte{tamanho 6 a 16}, cores{destaque #RRGGBB: títulos de grupo e barras}, pagina{orientacao retrato|paisagem}; campos.layout colunas = modelo coletum_colunas. Ex.: {"empresa": {"nome": "Empresa Exemplo", "logo": "/caminho/logo.png"}, "campos": {"ocultar": ["Observações"]}, "fotos": {"por_linha": 1}}. Qualquer outra chave (titulo, subtitulo, rodape, metadados[], cores.clara, campos.mostrar[], campos.campos_por_linha 2, grupos_repetiveis.modo, fotos.max, fotos.incluir falso, varios.indice, pagina.margem_mm) os modelos do Coletum não fazem: a ferramenta recusa o pedido, sem chamar a API, e diz quais ajustes não existem.
templateNoOpcional: caminho de um JSON com ajustes, salvo pelo Claude para reaproveitar entre conversas. Os ajustes da chamada valem por cima dele; a mesma regra vale para as chaves dele.
criado_porNoId do usuário que criou (aparece como autor_id em buscar_preenchimentos).
pasta_saidaNoPasta onde gravar. Padrão: COLETUM_PASTA_SAIDA ou Documentos/Coletum/saidas.
id_formularioYesId numérico do formulário (vem de listar_formularios).
preenchimentosNoPreenchimentos escolhidos, cada um com id e criado_em como buscar_preenchimentos devolve. Ex.: [{"id": "1024.3", "criado_em": "2026-09-01 08:15:00"}].
criado_antes_deNoSó preenchimentos criados antes desta data (exclusivo). AAAA-MM-DD ou data e hora ISO.
criado_depois_deNoSó preenchimentos criados depois desta data (exclusivo). AAAA-MM-DD ou data e hora ISO.
ids_preenchimentosNoAlternativa: só os ids, junto com um período (criado_depois_de/criado_antes_de) que os contenha.
max_preenchimentosNoSó com filtros (sem ids): quantos preenchimentos entram no máximo. Padrão 20, máximo 100.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.2

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false/destructiveHint=false/openWorldHint=true; the description adds substantial non-structured behavior: cost accounting (1 per search window, 1 per filter page, 1 for structure), photo traffic limits (up to 200 per call, no quota), fallback 'foto indisponível' frame, and the strict rule that only paths/links/pages/counts are returned, never content.

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

Conciseness3/5

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

Purpose and the model/refusal rules are front-loaded, but the text is very long with dense parentheticals and repetition of the modeling/refusal contract. Most sentences carry information, yet the block is heavier than needed for an agent to act.

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

Completeness5/5

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

For a 13-parameter, no-output-schema tool, the description covers input modes, model selection, refusal behavior, cost, photo handling, return shape, and the required post-call UX (show full path in a code block, use mostrar_arquivo to open). Nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema coverage is already 100%, so baseline is 3, but the description genuinely enriches semantics: it maps modelo values to natural-language request phrases ('em colunas', 'só as fotos'), lists which ajustes keys are accepted versus refused (titulo, subtitulo, rodape, etc.), and explains template override precedence.

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

Purpose5/5

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

States a specific verb+resource (gera PDF de preenchimentos) and immediately scopes it against the sibling gerar_pdf_modelo by naming the shared default model coletum_exportacao. An agent can distinguish it from analisar_pdf_modelo/gerar_pdf_modelo without opening schemas.

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

Usage Guidelines5/5

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

Gives three explicit input strategies (preenchimentos with id+criado_em, ids_preenchimentos with a period, or filters up to max_preenchimentos), names the alternative workflow (buscar_preenchimentos with pagina/tamanho_pagina) when a list must be shown first, and states when the tool refuses and what to offer instead.

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