Skip to main content
Glama
chicoIA

mcp-glpi-it4

by chicoIA

mcp-glpi-it4

MCP Server para integração com o GLPI da IT4Solução via High-level API v2.3 (OAuth2). Expõe chamados, inventário de computadores e configuração de parâmetros como ferramentas (tools) para assistentes como o Claude.

  • Instância: https://suporte.sys.com.br

  • API: api.php/v2.3 · Auth: OAuth2 Password Grant

  • Stack: Python 3.12 · FastMCP · httpx (async)

  • Segurança: dry_run por padrão + reversão de toda escrita

Decisões de design e a análise "reusar vs. construir" estão no SDD.

Por que um servidor novo (e não os MCPs públicos)

Os MCPs avaliados (GMS64260/mcp-glpi, svtica/glpi-mcp) autenticam pela API legacy (Session-Token), incompatível com a v2.3/OAuth2 desta instância, e não cobrem configuração de parâmetros. Este projeto reaproveita o cliente OAuth2 e o mecanismo de rollback já validados em scripts_glpi/.

Related MCP server: GLPI MCP

Instalação

cd mcp-glpi-it4
uv sync            # ou: pip install -e ".[dev]"
cp .env.example .env   # preencha as credenciais

Configuração (variáveis de ambiente)

Variável

Obrigatória

Default

Descrição

GLPI_BASE_URL

https://suporte.sys.com.br

URL base

GLPI_API_VERSION

v2.3

Versão da API

GLPI_CLIENT_ID / GLPI_CLIENT_SECRET

sim

Cliente OAuth (Setup > OAuth Clients)

GLPI_USERNAME / GLPI_PASSWORD

sim

Usuário de serviço

GLPI_OAUTH_SCOPE

api

Escopo OAuth

GLPI_WRITE_MODE

dry_run

dry_run (simula) | live (executa)

GLPI_TIMEOUT / GLPI_MAX_RETRIES

15 / 3

Tuning HTTP

Como obter Client ID/Secret: Setup > OAuth Clients no GLPI (ver ../scripts_glpi/COMO_OBTER_CREDENCIAIS_OAUTH.md).

Uso com Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) ou %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "glpi-it4": {
      "command": "python",
      "args": ["-m", "mcp_glpi_it4.server"],
      "env": {
        "PYTHONPATH": "/caminho/para/mcp-glpi-it4/src",
        "GLPI_CLIENT_ID": "...", "GLPI_CLIENT_SECRET": "...",
        "GLPI_USERNAME": "...", "GLPI_PASSWORD": "...",
        "GLPI_WRITE_MODE": "dry_run"
      }
    }
  }
}

Detalhes e exemplos de prompts: docs/USO.md.

Ferramentas (29)

Chamados: glpi_listar_chamados, glpi_consultar_chamado, glpi_criar_chamado, glpi_atualizar_chamado, glpi_adicionar_acompanhamento, glpi_adicionar_tarefa, glpi_adicionar_solucao, glpi_atribuir_chamado, glpi_excluir_chamado.

Inventário: glpi_listar_computadores, glpi_consultar_ativo, glpi_criar_computador, glpi_atualizar_computador, glpi_excluir_computador.

Usuários: glpi_listar_usuarios, glpi_consultar_usuario, glpi_listar_perfis, glpi_criar_usuario, glpi_excluir_usuario.

Configuração: glpi_listar_config, glpi_consultar_config, glpi_atualizar_config.

Apoio/Segurança: glpi_listar_categorias, glpi_listar_entidades, glpi_listar_grupos, glpi_status_sessao, glpi_modo_escrita, glpi_reverter, glpi_listar_reversiveis.

Segurança e reversão

  • dry_run (padrão): toda escrita apenas devolve o payload que seria enviado; nada é alterado.

  • live: executa de verdade; cada operação é gravada em rollback_log.json com snapshot do estado anterior.

  • Reverter: glpi_reverter (uma operação por audit_id ou todas pendentes). Ver docs/REVERSAO.md.

Testes

pip install -e ".[dev]"
pytest -q

Desenvolvimento futuro

Como adicionar recursos/tools e confirmar endpoints: docs/DESENVOLVIMENTO.md.

Licença

MIT.

Available Tools

24 tools
glpi_adicionar_acompanhamentoC

Adiciona um acompanhamento (follow-up) ao chamado.

ParametersJSON Schema
NameRequiredDescriptionDefault
ticket_idYes
contentYes
is_privateNo

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. It does not mention that this is a write/mutation operation, any required permissions, idempotency, or side effects beyond the basic action.

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

Conciseness4/5

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

The description is a single concise sentence that immediately conveys the tool's purpose. It is well-structured and front-loaded, though it may be too brief for the complexity of the tool.

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

Completeness2/5

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

For a mutation tool with no output schema, the description should indicate return values or success/failure behavior, but it does not. The tool's overall context is insufficient for an agent to understand the full effect of its invocation.

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

Parameters2/5

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

The schema has 3 parameters with zero description coverage. The tool description does not add any meaning or context for parameters like ticket_id, content, or is_private. The agent receives no guidance on what a follow-up entails or how to use the parameters correctly.

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

Purpose5/5

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

The description clearly states the tool adds a follow-up to a ticket, using a specific verb and resource. It is distinct from sibling tools like glpi_adicionar_solucao (add solution) and glpi_adicionar_tarefa (add task).

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, nor any context about prerequisites or exclusions. The description only states the basic action.

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

glpi_adicionar_solucaoB

Registra a solução do chamado (pode encerrá-lo conforme a config do GLPI).

ParametersJSON Schema
NameRequiredDescriptionDefault
ticket_idYes
contentYes
solutiontypes_idNo

TDQS

B3.4/5.0
Behavior4/5

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

The description discloses a key behavioral trait: the action may close the ticket depending on GLPI configuration. This adds valuable context beyond the basic action. However, it does not mention permissions, reversibility, or other 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.

Conciseness4/5

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

The description is very concise at one sentence, but it lacks parameter details. It is front-loaded with the main verb and object, making the purpose immediately clear.

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

Completeness2/5

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

Given no annotations, no output schema, and three parameters, the description is incomplete. It fails to explain the meaning of solutiontypes_id, return values, or constraints. Important behavioral context is hinted but not fully developed.

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

Parameters1/5

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

The description provides no information about the parameters (ticket_id, content, solutiontypes_id). With 0% schema coverage, this is a critical omission. The agent receives no guidance on what to provide for each parameter.

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

Purpose5/5

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

The description clearly states the main action: registering a solution for a ticket. It uses a specific verb ('registra') and resource ('solução do chamado'), which distinguishes it from sibling tools like adding follow-up or tasks.

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

Usage Guidelines3/5

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

The description implies usage by stating the action, but does not provide explicit guidance on when to use this tool versus alternatives. No when-to-use or when-not-to conditions are given.

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

glpi_adicionar_tarefaB

Adiciona uma tarefa ao chamado. actiontime em segundos; state: 1=A fazer,2=Feito.

ParametersJSON Schema
NameRequiredDescriptionDefault
ticket_idYes
contentYes
actiontimeNo
stateNo

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must bear the burden. While it gives hints about parameter units (actiontime in seconds) and state mapping, it lacks disclosure about mutability, error behavior, or required permissions. The description adds minimal behavioral context beyond parameter semantics.

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

Conciseness5/5

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

The description consists of two short sentences, front-loading the core purpose and immediately listing parameter details. No extraneous text; every sentence serves a clear function.

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

Completeness2/5

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

Given the lack of annotations and output schema, the description is incomplete. It does not describe return values, error states, or prerequisites. For a tool with four parameters (two required), more context about the effect on the ticket and expected behavior is needed.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It explains that actiontime is in seconds and state uses specific integer values (1=A fazer, 2=Feito), adding value beyond the bare schema. However, ticket_id and content are not elaborated, leaving their meanings implicit.

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

Purpose5/5

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

The description clearly states 'Adiciona uma tarefa ao chamado' (Adds a task to a ticket), which is a specific verb-resource combination. It distinguishes from sibling tools like 'adicionar_acompanhamento' (add follow-up) and 'adicionar_solucao' (add solution) by specifying the task addition action.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not specify prerequisites, conditions, or scenarios where this tool is appropriate, leaving the agent without comparative context.

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

glpi_atribuir_chamadoC

Define um ator no chamado. role: requester | observer | assign.

ParametersJSON Schema
NameRequiredDescriptionDefault
ticket_idYes
roleNoassign
users_idNo
groups_idNo

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It does not disclose that this is a write operation, what side effects occur (e.g., notifications), or required permissions. The term 'define' is vague and does not clarify the action's nature.

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

Conciseness3/5

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

The description is extremely brief (two sentences) with no extra words. However, it is under-specified; conciseness at the cost of completeness is not helpful.

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

Completeness1/5

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

Given 4 parameters, no output schema, and no annotations, the description fails to cover essential context like how to use parameters, what the tool returns, and how it fits with siblings. It provides only the minimum purpose.

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

Parameters1/5

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

Schema description coverage is 0%. The description only explains the 'role' parameter (listing its allowed values). It does not explain 'ticket_id', 'users_id', or 'groups_id', nor how to specify an actor (e.g., at least one of users_id or groups_id required).

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

Purpose4/5

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

The description uses the verb 'Define' and specifies the resource 'actor' in a ticket, listing three possible roles (requester, observer, assign). It distinguishes this tool from siblings that handle other ticket actions like adding follow-ups or solutions.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. There is no mention of prerequisites, exclusion criteria, or comparison to similar tools like glpi_consultar_chamado or glpi_atualizar_chamado.

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

glpi_atualizar_chamadoA

Atualiza campos de um chamado. Guarda o estado anterior para reversão.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
nameNo
contentNo
statusNo
urgencyNo
itilcategories_idNo

TDQS

A3.6/5.0
Behavior3/5

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

Description adds key behavioral trait: 'Guarda o estado anterior para reversão' (keeps previous state for reversal). Since no annotations are provided, description carries burden; it addresses reversion but does not disclose permissions, side effects, or rate limits. Some value added beyond schema.

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

Conciseness5/5

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

Two short sentences, front-loaded with action. No filler or redundant text. Every sentence adds value.

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

Completeness3/5

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

For a simple update tool with 6 parameters and no output schema, description covers the basic action and revert behavior. However, it lacks explanation of return values or what happens after update. Parameter descriptions would improve completeness, but the core is present.

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

Parameters2/5

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

Schema has 6 parameters with 0% description coverage. The description only says 'Atualiza campos de um chamado', implying any of the parameters can be updated, but provides no explanation of individual fields or constraints. Minimal compensation for low schema coverage.

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?

Description clearly states the tool updates ticket fields and preserves previous state for reversal. Verb 'atualiza' (updates) + resource 'chamado' (ticket) is specific. Distinguishes from sibling tools like criar (create), excluir (delete), consultar (consult).

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

Usage Guidelines3/5

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

Description implies usage for updating ticket fields, but does not explicitly state when to use or when to avoid. No mention of alternatives like glpi_adicionar_acompanhamento for adding follow-ups. Context is clear but lacks exclusionary guidance.

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

glpi_atualizar_computadorB

Atualiza um computador. Guarda o estado anterior para reversão.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
nameNo
serialNo
states_idNo
commentNo

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It discloses the mutation behavior and the important trait that previous state is saved for reversal. However, it omits details like required permissions, error handling, or side effects.

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

Conciseness5/5

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

Two sentences with no fluff: the first states the action, the second adds a key behavioral detail. Every word earns its place.

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

Completeness2/5

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

Given 5 parameters, no output schema, and no annotations, the description is too sparse. It does not explain return values, error states, or prerequisites (e.g., computer must exist). The reversal feature is a positive but incomplete context.

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

Parameters1/5

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

The input schema has 5 parameters with 0% description coverage, and the tool description adds no explanation of parameters. The user must infer what 'name', 'serial', 'states_id', and 'comment' mean, which is insufficient for correct invocation.

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

Purpose5/5

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

The description clearly states it updates a computer (specific verb and resource) and adds the unique feature of saving previous state for reversal, which distinguishes it from other update tools like glpi_atualizar_chamado and glpi_atualizar_config.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives is provided. It does not mention prerequisites, conditions, or compare with similar update tools (e.g., glpi_atualizar_chamado). The reversal feature is noted but not contextualized.

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

glpi_atualizar_configA

Altera um parâmetro de configuração (reversível). Exige GLPI_WRITE_MODE=live. Parâmetros sensíveis (URL base, senhas, chaves) são bloqueados.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
nameYes
valueYes

TDQS

A4/5.0
Behavior4/5

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

Without annotations, the description discloses that the operation is reversible and that certain parameters are blocked, adding behavioral context beyond the schema.

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

Conciseness5/5

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

Two concise sentences that front-load the purpose and immediately provide constraints, with no redundant information.

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

Completeness3/5

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

Given no output schema and 3 required parameters, the description covers core behavior and constraints but lacks details on error handling, return values, and parameter usage.

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

Parameters2/5

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

With 0% schema description coverage, the description does not explain the 'context' parameter or provide details on 'name' and 'value' formats, only hinting at blocked sensitive parameters.

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

Purpose5/5

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

The description clearly states it alters a configuration parameter (reversível), distinguishing from sibling tools like glpi_consultar_config and glpi_listar_config.

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

Usage Guidelines4/5

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

It explicitly requires GLPI_WRITE_MODE=live and mentions blocked sensitive parameters, providing clear usage conditions. It does not explicitly contrast with siblings but context implies when to use.

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

glpi_consultar_ativoA

Detalha um computador. Se incluir_softwares, agrega os softwares instalados.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
incluir_softwaresNo

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It implies a read operation but does not explicitly state read-only or side effects. It adds context about optional software inclusion but lacks authorization or rate limit info.

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

Conciseness5/5

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

The description is extremely concise: two sentences with no wasted words. The purpose is front-loaded, and every sentence adds value.

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

Completeness3/5

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

Given no output schema, the description does not explain return values or error conditions. For a simple details tool, it is adequate but lacks completeness regarding what the tool returns.

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

Parameters3/5

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

Schema description coverage is 0% (no param descriptions in schema). The description explains the boolean 'incluir_softwares' effect, adding meaning beyond the schema. However, 'id' is not elaborated, leaving half of parameters without additional context.

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

Purpose4/5

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

The description 'Detalha um computador' uses a specific verb and resource, clearly indicating it retrieves details of a single computer. It distinguishes from sibling tools like glpi_listar_computadores (list) and glpi_atualizar_computador (update).

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

Usage Guidelines3/5

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

The description implies usage for retrieving computer details, but does not explicitly state when to use this tool versus alternatives like listing or updating. No exclusions or context provided.

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

glpi_consultar_chamadoA

Detalha um chamado. Se incluir_timeline, agrega follow-ups, tarefas e solução.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
incluir_timelineNo

TDQS

A3.7/5.0
Behavior4/5

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

Given no annotations, the description discloses that the timeline parameter aggregates follow-ups, tasks, and solutions. It implies a read operation but does not explicitly state safety or permissions. Still, it provides useful behavioral context beyond the schema.

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

Conciseness5/5

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

Two sentences with no wasted words. Purpose is first, then conditional behavior. Efficient and clear.

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

Completeness3/5

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

Without an output schema, the description does not specify the structure of the returned details. It explains the timeline aggregation but omits whether other fields are always present or how to interpret the output. Adequate for a simple tool, but could be more complete.

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

Parameters3/5

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

Schema description coverage is 0%, but the description explains the effect of incluir_timeline (aggregates extra info). The required parameter id is not described, leaving its meaning solely to its name. Partially compensates for low schema coverage.

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?

Description clearly states it details a ticket, which is a specific verb+resource. It also hints at an optional parameter that changes behavior, distinguishing it from sibling tools like listing or creating tickets.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like glpi_listar_chamados or glpi_consultar_ativo. The description does not specify scenarios or prerequisites.

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

glpi_consultar_configC

Lê um parâmetro específico (ex.: context='core', name='default_requesttypes_id').

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
nameYes

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only indicates a read operation ('lê') but does not mention whether authentication is required, side effects, rate limits, or error conditions.

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

Conciseness5/5

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

The description is a single sentence that efficiently conveys the tool's purpose and example usage. No redundant information is present.

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

Completeness2/5

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

Given no output schema and no annotations, the description lacks details about return format, error handling, and required permissions. For a simple read operation, more contextual guidance would be beneficial.

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

Parameters2/5

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

Schema coverage is 0% as the description only shows example values ('context='core', name='default_requesttypes_id'') without explaining what these parameters represent or valid values. The agent must infer meaning from the parameter names alone.

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

Purpose4/5

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

The description 'Lê um parâmetro específico' clearly states the tool reads a specific configuration parameter, with an example showing the context and name parameters. This distinguishes it from sibling tools like 'glpi_listar_config' (lists all) and 'glpi_atualizar_config' (updates).

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool vs alternatives. The description only gives an example but does not specify that this tool is for reading a single parameter while 'glpi_listar_config' lists all, or any prerequisites.

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

glpi_criar_chamadoB

Abre um novo chamado. type: 1=Incidente, 2=Requisição. urgency: 1..5. Em modo dry_run, retorna o payload sem criar.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contentYes
typeNo
urgencyNo
itilcategories_idNo
entities_idNo
requester_idNo

TDQS

B3.4/5.0
Behavior3/5

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

Discloses dry_run behavior that returns payload without persisting, and specifies value ranges for type and urgency. However, no annotations exist, and the description omits side effects (e.g., required permissions, success/failure responses, or error conditions).

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

Conciseness4/5

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

The description is short (two sentences) and front-loaded with the main action. Each sentence adds value (action + parameter hints + dry_run note). However, it could be slightly more structured or include brief mentions of other parameters.

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

Completeness2/5

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

Despite low schema coverage and no output schema, the description provides minimal context (type/urgency ranges, dry_run mode). It lacks details on required parameters (name, content), return value, error handling, or integration with GLPI entities.

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

Parameters2/5

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

Description clarifies 'type' and 'urgency' parameters (their meaning and ranges), but with 0% schema coverage, it fails to explain other parameters like name, content, itilcategories_id, entities_id, and requester_id. This leaves many parameters ambiguous.

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?

Description clearly states 'Abre um novo chamado' (opens a new ticket) and differentiates from siblings like atualizar (update) or excluir (delete). It also specifies valid values for type and urgency, making the tool's purpose unambiguous.

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

Usage Guidelines3/5

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

The description implies usage for creating new tickets but does not explicitly state when to use this tool vs. alternatives (e.g., glpi_atualizar_chamado for updates). It mentions dry_run mode but lacks guidance on prerequisites or when not to use.

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

glpi_criar_computadorC

Cadastra um computador no inventário. Em dry_run, retorna o payload sem criar.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
serialNo
entities_idNo
states_idNo
manufacturers_idNo
commentNo

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are present, so the description must disclose behavioral traits. It mentions creation and dry_run behavior, but fails to describe side effects, required permissions, error scenarios, or what happens on duplicate names. Transparency is minimal.

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

Conciseness4/5

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

The description is concise with two sentences and no extraneous content. It front-loads the core purpose. However, it could be more structured by including parameter hints or usage context.

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

Completeness2/5

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

Given the complexity (6 parameters, no output schema, no annotations), the description is incomplete. It does not explain return values beyond dry_run, lacks parameter details, and misses essential context for an agent to use it effectively.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain any parameter beyond the tool's name. No parameter purposes, formats, or constraints are given. The parameter names are somewhat self-explanatory, but the description should compensate for the schema gap.

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

Purpose4/5

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

The description clearly states the tool registers a computer in inventory ('Cadastra um computador no inventário') and mentions a dry_run mode. While it distinguishes from siblings implicitly (create vs update/delete/list), it does not explicitly differentiate from related tools like 'glpi_atualizar_computador'.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as update or delete tools. There are no prerequisites, usage examples, or when-not-to-use instructions. The dry_run mention is useful but insufficient for contextual usage.

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

glpi_excluir_chamadoC

Move o chamado para a lixeira (soft-delete, reversível via glpi_reverter).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

TDQS

C2.9/5.0
Behavior3/5

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

Without annotations, the description adds value by stating it's a soft-delete and reversible, but lacks disclosure of permissions, side effects (e.g., effects on related data), or error conditions. Adequate but not comprehensive.

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?

Single sentence, no wasted words, but could be slightly more informative without becoming verbose. Adequate conciseness.

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

Completeness2/5

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

For a mutation tool with no annotations or output schema, the description omits crucial context like permissions, error handling, and expected outcomes. Incomplete for safe usage.

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

Parameters1/5

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

The schema has 0% description coverage, and the description does not explain the 'id' parameter. The agent gets no guidance on what ID to provide or its format.

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

Purpose5/5

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

The description clearly states the action (move to trash), specifies it's a soft-delete, and mentions reversibility via a sibling tool. It effectively distinguishes from other tools like glpi_excluir_computador and glpi_reverter.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool vs alternatives. While it mentions reversibility, it does not provide context for when soft-delete is appropriate or when to avoid it.

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

glpi_excluir_computadorA

Move o computador para a lixeira (soft-delete, reversível via glpi_reverter).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden. It discloses that the deletion is a soft-delete (non-permanent) and reversible, which are key behavioral traits. However, it does not mention other potential behaviors like authorization needs or side effects.

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

Conciseness5/5

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

The description is a single, concise sentence that is front-loaded with the primary action and key behavior (soft-delete, reversible). Every word earns its place with no waste.

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

Completeness4/5

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

For a tool with one parameter and no output schema, the description is mostly complete: it specifies the action and reversible nature. It could mention potential errors or return values, but given the simplicity, it adequately covers the context.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It does not explain the meaning of the 'id' parameter beyond what the schema provides (type integer, required). The context of the tool name implies it's a computer ID, but the description adds no explicit semantic value.

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

Purpose5/5

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

The description clearly states the action: moving a computer to the trash (soft-delete) and notes it is reversible via glpi_reverter. It distinguishes this tool from sibling tools like glpi_excluir_chamado or glpi_criar_computador.

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

Usage Guidelines3/5

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

The description implies usage for soft-deleting a computer and mentions reversibility, but provides no explicit guidance on when to use vs alternatives, prerequisites, or conditions.

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

glpi_listar_categoriasC

Lista as categorias ITIL para classificar chamados.

ParametersJSON Schema
NameRequiredDescriptionDefault
limiteNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as read-only nature, authentication needs, rate limits, or output format. The description is minimal.

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

Conciseness3/5

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

The description is a single concise sentence, but it is too brief to provide adequate context. It is not unnecessarily verbose, but structure is minimal.

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

Completeness2/5

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

Given the simplicity (one param, no output schema, no annotations), the description is incomplete. It does not specify the return format or behavior when limit is omitted. Sibling tools like glpi_listar_chamados likely have more detailed descriptions, making this one appear lacking.

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

Parameters1/5

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

The input schema has 0% description coverage for the only parameter 'limite'. The description does not explain what the limit parameter does (e.g., maximum number of categories to return). Since schema coverage is low, the description fails to compensate.

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

Purpose5/5

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

The description clearly states the tool lists ITIL categories for classifying tickets. The verb 'list' and resource 'categories' are explicit, and it distinguishes from sibling tools like glpi_listar_chamados and glpi_listar_computadores.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, no exclusions, and no prerequisites mentioned. The usage is only implied by the purpose.

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

glpi_listar_chamadosB

Lista chamados do GLPI com filtros opcionais e paginação. status: 1=Novo,2=Atribuído,3=Planejado,4=Pendente,5=Solucionado,6=Fechado. tipo: 1=Incidente,2=Requisição. prioridade: 1..6.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNo
tipoNo
prioridadeNo
tecnico_idNo
limiteNo
offsetNo

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description must cover behavioral traits. It does not state that the operation is read-only (assumed but not explicit), does not describe pagination behavior beyond defaults, and omits any side effects or authorization needs.

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

Conciseness4/5

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

Description is short and front-loaded with purpose. Includes useful value mappings. Could be more structured (e.g., separate pagination info) but no wasted sentences.

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

Completeness3/5

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

Given 6 parameters, no output schema, and no annotations, description needs to be more complete. It covers purpose and some params but lacks pagination behavior details, return format, and any prerequisites. Adequate but with clear gaps.

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

Parameters3/5

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

Schema has no descriptions (0% coverage). Description explains meaning for three parameters (status, tipo, prioridade) with value mappings. However, tecnico_id, limite, offset lack explanation beyond names. Partial coverage.

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

Purpose5/5

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

The description clearly states the tool lists tickets from GLPI with optional filters and pagination. It differentiates from siblings like glpi_consultar_chamado (single ticket) and glpi_criar_chamado (creation).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Does not specify when filters are appropriate or when pagination should be used. Lacks exclusions or prerequisites.

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

glpi_listar_computadoresC

Lista computadores do inventário. 'busca' aplica RSQL =like= sobre o nome.

ParametersJSON Schema
NameRequiredDescriptionDefault
buscaNo
entities_idNo
states_idNo
limiteNo
offsetNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden. It states the tool lists computers but does not mention it is read-only, whether pagination is supported (implied by parameters), or any other behavioral traits beyond the basic operation.

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

Conciseness4/5

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

The description is brief and front-loaded with the main purpose. However, it sacrifices critical parameter details for brevity, making it somewhat under-specified.

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

Completeness2/5

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

With 5 parameters, no output schema, and no annotations, the description fails to inform the agent about return format, pagination behavior, or parameter constraints. The tool is simple but the description lacks completeness for effective invocation.

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

Parameters2/5

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

Schema description coverage is 0%, yet the description only explains the 'busca' parameter superficially ('aplica RSQL =like= sobre o nome'). It does not clarify the RSQL format, nor does it explain entities_id, states_id, limite, or offset. This adds little value beyond the schema itself.

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

Purpose4/5

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

The description clearly states it lists computers from inventory and mentions the 'busca' parameter filters by name using RSQL =like=. This distinguishes it from siblings like glpi_listar_chamados, but could be more specific about the scope of listing.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., glpi_consultar_computador or glpi_listar_chamados). No exclusion criteria or context provided.

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

glpi_listar_configA

Lista parâmetros de configuração. Sem 'context' lista todos os contextos; com 'context' (ex.: 'core') lista os parâmetros daquele contexto.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNo

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided. Description implies read-only operation ('Lista') but does not explicitly state it is non-destructive, safe, or discuss authentication/rate limits. For a list tool, more transparency about side effects is expected.

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

Conciseness5/5

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

Two sentences, front-loaded with purpose, then parameter behavior. No unnecessary words. Efficient and clear.

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

Completeness4/5

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

For a list tool with one optional parameter and no output schema, the description is mostly complete. It explains the parameter effect and overall function. Lacks return format (e.g., list of names or key-value pairs), but that is a minor gap.

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 0%, so description must compensate. It clearly explains that the 'context' parameter filters to that context when provided, and lists all contexts when absent. Adding an example (e.g., 'core') helps, but could mention valid values or format.

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

Purpose4/5

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

Description states tool lists configuration parameters and explains behavior with/without 'context'. It distinguishes from sibling tools like glpi_consultar_config (single config) and glpi_atualizar_config (update), but does not explicitly name them.

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

Usage Guidelines3/5

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

Provides clear usage: without context lists all contexts, with context lists parameters of that context (e.g., 'core'). Does not specify when not to use or mention alternatives like glpi_consultar_config for a single parameter.

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

glpi_listar_entidadesC

Lista as entidades disponíveis no GLPI.

ParametersJSON Schema
NameRequiredDescriptionDefault
limiteNo

TDQS

C2.3/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits, but it only implies a read operation without confirming safety, destructiveness, or authentication needs.

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

Conciseness3/5

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

The description is short and front-loaded, but it largely restates the tool name, offering minimal additional insight.

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

Completeness3/5

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

Given the simple tool with one optional parameter, the description is minimally adequate but lacks explanation of what entities are and how the limit parameter affects results.

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

Parameters1/5

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

The schema has 0% description coverage for the 'limite' parameter, and the description provides no explanation of its purpose or effect, failing to add value beyond the schema.

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

Purpose3/5

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

The description states the tool lists entities, which is clear in verb and resource, but it does not specify what 'entidades' refers to in GLPI, leaving ambiguity compared to sibling tools that list more specific entities.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives like listar_categorias or listar_grupos; there is no context on prerequisites or typical use cases.

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

glpi_listar_gruposC

Lista os grupos do GLPI (para atribuição de chamados).

ParametersJSON Schema
NameRequiredDescriptionDefault
limiteNo

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as whether it returns all groups, pagination, or required permissions. The purpose is stated but lacks depth.

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

Conciseness4/5

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

The description is a single sentence and is concise. However, it could be slightly restructured to include parameter information without losing conciseness.

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

Completeness2/5

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

Given the absence of annotations and output schema, the description is incomplete. It omits explanation of the sole parameter and does not describe the return format or edge cases, leaving gaps for an agent.

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

Parameters1/5

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

The input schema has 0% description coverage and the tool description does not explain the 'limite' parameter. The description adds no meaning beyond the schema, failing to compensate for the lack of schema documentation.

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

Purpose4/5

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

The description clearly states the tool lists GLPI groups and specifies the use case (for ticket assignment). However, it does not explicitly differentiate from sibling listing tools, but the resource name itself distinguishes it.

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

Usage Guidelines3/5

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

The description implies usage for assigning tickets ('para atribuição de chamados'), but provides no explicit guidance on when to use or when not to, nor mentions alternatives.

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

glpi_listar_reversiveisA

Lista as operações de escrita ainda reversíveis (pendentes de reversão).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility. It does not disclose whether the tool is read-only, required authentication, side effects, or how 'reversible' is defined. The description is minimally informative.

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

Conciseness5/5

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

The description is a single, clear sentence with no unnecessary words. It is front-loaded and concise.

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

Completeness3/5

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

Given the tool has no parameters and no output schema, the description gives the basic purpose but lacks details on the return format, the meaning of 'reversible,' or any context about the write operations. It could be more complete for an agent to use confidently.

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

Parameters4/5

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

There are zero parameters and schema coverage is 100% trivially. The description adds no parameter details, but the baseline for zero parameters is 4. No additional information needed.

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

Purpose5/5

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

The description clearly states the tool lists write operations that are still reversible, using a specific verb and resource. It distinguishes itself from sibling tools like glpi_listar_chamados or glpi_reverter by focusing on pending reversals.

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

Usage Guidelines3/5

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

The description implies usage: to see what operations can be reverted. However, it provides no explicit when-to-use or when-not-to-use guidance, nor mentions alternatives like glpi_reverter.

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

glpi_modo_escritaA

Informa o modo de escrita atual: dry_run (simula) ou live (executa).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description adequately discloses that the tool reads and reports the current write mode without side effects. It does not mention any destructive or state-changing behavior, which is appropriate for a read-only tool.

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

Conciseness5/5

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

The description is a single, clear sentence that front-loads the action and result. No unnecessary words.

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

Completeness4/5

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

For a simple read-only tool with no parameters, the description provides the essential information. It could be slightly more complete by explaining that the mode is session-specific, but it is sufficient.

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

Parameters4/5

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

There are no parameters, so the baseline is 4. The description adds value by explaining the possible return values (dry_run or live), which goes beyond the empty schema.

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

Purpose5/5

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

The description clearly states the tool informs the current write mode, listing the two possible values (dry_run and live). It is distinct from sibling tools that perform actions like adding or updating tickets.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. An agent might need to know it's useful to check the mode before performing write operations, but this is not mentioned.

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

glpi_reverterA

Reverte uma operação de escrita (por audit_id) ou TODAS as pendentes, em ordem reversa. Sem argumento, reverte o lote pendente registrado.

ParametersJSON Schema
NameRequiredDescriptionDefault
audit_idNo

TDQS

A4/5.0
Behavior3/5

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

No annotations provided, so description bears full burden. It explains that without argument it reverts the entire pending batch, and with audit_id reverts a specific operation. Lacks details on what 'pending operations' mean, whether the revert is permanent, or any success/failure feedback.

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

Conciseness5/5

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

Two sentences with no extraneous words. Information is front-loaded: action and scope first, then default behavior.

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

Completeness4/5

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

For a simple one-parameter revert tool, description covers main usage and parameter meaning. Could elaborate on what constitutes 'pending operations' and result indication, but is adequate for selection and basic invocation.

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

Parameters4/5

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

Input schema only lists audit_id with type string/null. Description explains its role: 'por audit_id' and default behavior when omitted. This adds clarity beyond the schema, though format of audit_id is not specified.

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

Purpose5/5

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

The description clearly states the tool reverts a write operation by audit_id or all pending operations in reverse order. It distinguishes from sibling CRUD tools by specifying 'reverter' as a distinct action.

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

Usage Guidelines3/5

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

Usage context is implied: use to undo pending write operations. However, no explicit guidance on when to use versus other tools like glpi_listar_reversiveis (which lists reversibles) 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.

glpi_status_sessaoA

Valida credenciais/conectividade autenticando na API (OAuth2).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

The description implies a read-only authentication check but does not explicitly state that it has no destructive side effects. With no annotations, the description could better clarify that the tool only validates without modifying data.

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

Conciseness5/5

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

The description is a single sentence with no extraneous words. It is front-loaded and efficient.

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

Completeness4/5

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

For a parameterless tool, the description is mostly complete. However, since there is no output schema, it would benefit from mentioning what the tool returns (e.g., success/failure) for full clarity.

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

Parameters4/5

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

There are no parameters, so the baseline is 4. The description covers the tool's purpose without needing additional parameter details.

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

Purpose5/5

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

The description clearly states it validates credentials/connectivity via OAuth2 authentication. The verb 'Valida' and resource 'credenciais/conectividade' are specific, and this tool is distinct from the sibling CRUD tools.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. It does not mention that it can serve as a health check before other GLPI operations or any prerequisites.

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.

  1. 24 tool updatesv0.1.0
    • First observedglpi_adicionar_acompanhamento
    • First observedglpi_adicionar_solucao
    • First observedglpi_adicionar_tarefa
    • First observedglpi_atribuir_chamado
    • First observedglpi_atualizar_chamado
    • First observedglpi_atualizar_computador
    • First observedglpi_atualizar_config
    • First observedglpi_consultar_ativo
    • First observedglpi_consultar_chamado
    • First observedglpi_consultar_config
    • First observedglpi_criar_chamado
    • First observedglpi_criar_computador
    • First observedglpi_excluir_chamado
    • First observedglpi_excluir_computador
    • First observedglpi_listar_categorias
    • First observedglpi_listar_chamados
    • First observedglpi_listar_computadores
    • First observedglpi_listar_config
    • First observedglpi_listar_entidades
    • First observedglpi_listar_grupos
    • First observedglpi_listar_reversiveis
    • First observedglpi_modo_escrita
    • First observedglpi_reverter
    • First observedglpi_status_sessao

TDQS

B3.4/5.0

Scored across 24 tools

Disambiguation5/5

Each tool has a clearly distinct purpose, covering different entities (chamados, computadores, config) and actions (CRUD, list, assign, etc.). No overlap or ambiguity.

Naming Consistency5/5

All tools follow a consistent 'glpi_verb_noun' pattern in snake_case, making it easy to predict tool names and understand their function.

Tool Count4/5

24 tools is on the higher side but appropriate for the GLPI IT management domain, covering multiple entity types and operations without being excessive.

Completeness4/5

The tool set covers CRUD and lifecycle operations for chamados and computadores, plus configuration management and reversible operations. Missing some asset types, but core workflows are well-covered.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers