superlogica_ocorrencias_imprimircarta
Ocorrências: Imprimir carta (POST /ocorrencias/imprimircarta). [write, altera dados]
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | ||
| query | No | ||
| account | No |
Ocorrências: Imprimir carta (POST /ocorrencias/imprimircarta). [write, altera dados]
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | ||
| query | No | ||
| account | No |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While annotations declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, the description adds the tag '[write, altera dados]', signaling a write operation that changes data. This is contradictory: printing a letter is typically a non-mutating retrieval/print action, yet the description marks it as data-changing and annotations say it is not read-only. For a print operation the description should clarify what side effects occur (e.g., marking the occurrence as printed, generating a PDF), but it does not. The tag actually creates an annotation contradiction because destructiveHint=false says not destructive while the text claims it alters 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?
The description is very short and front-loaded with the endpoint, which is helpful for quick scanning. However, the '[write, altera dados]' tag is terse and ambiguous, and a single unlabeled sentence is minimally adequate rather than well-structured. The anachronistic 'imprimircarta' spelling also reflects a poorly edited Portuguese description, but it is short and names the resource.
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 three unknown parameters, no output schema, and no usage guidance, this description is inadequate. The agent cannot know required input, expected output, side effects, or error conditions. For a write-like operation on occurrences, this level of underspecification is dangerous and the annotation contradiction compounds the completeness problem.
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 0%, so the description must compensate for the three undocumented parameters: body, query, and account. It does not. An agent has no idea what to put in body (perhaps the occurrence ID), what query parameters are accepted, or the format of the account identifier. The description adds zero parameter-level meaning.
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 says 'Ocorrências: Imprimir carta (POST /ocorrencias/imprimircarta)' which clearly identifies the verb (imprimir/imprint) and resource (ocorrências/occurrences), and adds the HTTP endpoint. It distinguishes this printing action from sibling ocorrências operations like list/create/update/delete. The '[write, altera dados]' tag is confusing since printing a letter should be read-only, but the core purpose is identifiable.
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 does not state when to use this tool instead of other ocorrências tools or printing-related tools like superlogica_impressoes_list or superlogica_impressoes_post. It leaves the agent to infer usage from the title and endpoint, with no context about prerequisites, typical scenarios, or the difference between this print action and the general impressoes tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Many tools have overlapping boundaries: arquivos_create vs arquivos_put both add files, configuracoes_list vs configuracoes_list_get vs ini_config are three config-listing variants, and sindicos_list vs sindicos_list_get vs responsaveis_list vs usuario_list are four person-listing tools with similar semantics. The recurring _list vs _list_get suffix pattern across resources (inadimplencia, planocontas, configuracoes, sindicos) makes selection genuinely ambiguous.
The superlogica_<resource>_<action> prefix is consistent, but action verbs are a chaotic mix of English (create, delete, update) and Portuguese (desfazer, estornar, liquidar, desinvalidar), and HTTP-method suffixes are semantically inverted (malotes_put creates while malotes_post edits; despesas_post edits). Platform tools (authenticate, marketplace, toolkit_info) break the pattern entirely, and there is a typo in ocorrencias_susgestoes.
120 tools is an extreme count, far beyond the 50+ threshold for a mismatch. Even granting the breadth of a condominium-management domain, the surface looks like an uncurated endpoint-by-endpoint dump of the entire Superlógica API rather than a designed tool set.
The core domain is remarkably well covered: receitas, despesas, acordos, cobranças, unidades, condomínios, ocorrências, reservas, tickets, processos judiciais, and relatórios all have substantial lifecycle coverage including create/edit/delete/liquidar/estornar operations. Minor gaps exist (no delete for fornecedores or comunicados, no get-by-id for condominios/cobrancas, no ticket status update), but agents can work around most of them.