Skip to main content
Glama

Server Details

Full clinic management on Feegow Clinic, patients, appointments, providers, specialties, insurance,

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
mcp-dir/feegow-mcp
GitHub Stars
1
Server Listing
Feegow Clinic

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsC

Average 2.5/5 across 94 of 94 tools scored. Lowest: 1.3/5.

Server CoherenceD
Disambiguation1/5

Many tools have identical descriptions (e.g., multiple tools with same 'Read appointments and scheduling data' text) and only differ by a 'flattened action' label, making it impossible for an agent to distinguish which tool to call for a specific operation.

Naming Consistency2/5

Names follow a loose verb_noun pattern but are extremely inconsistent: some use underscores, some have redundant prefixes like 'feegow_appointment_', and the same actions are duplicated across multiple tool names (e.g., 'list' appears in many). The 'flattened action' suffix is confusing.

Tool Count1/5

94 tools is far too many for a clinic management system. This is clearly due to a one-action-per-tool design that fragments the API surface, making the server bloated and hard to navigate. A typical well-structured server for this domain would have 10-20 tools.

Completeness3/5

The server covers many areas (appointments, patients, financial, procedures, stock, etc.), suggesting broad functionality. However, the fragmentation obscures gaps and makes it difficult to determine if all CRUD operations exist for each entity. Some areas (e.g., stock write) have multiple tools for single actions.

Available Tools

94 tools
authenticateA
Idempotent
Inspect

MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header Authorization: Bearer <token> for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "" } after the user pastes, or with no args to get the link.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNo
Behavior4/5

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

Annotations indicate idempotentHint=true and destructiveHint=false. Description adds context about the two authentication methods, the behavior of calling with or without token, and the permanence of config-based auth. No contradiction with annotations.

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

Conciseness4/5

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

Description is a single paragraph with clear, actionable sentences. No unnecessary words. Could be slightly more structured (e.g., bullet points), but remains concise and front-loaded with key information.

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

Completeness4/5

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

For a simple authentication tool with one optional parameter, the description covers the essential workflow: two login methods, token format, and best practice. No output schema, but the behavior is adequately described.

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 has one optional parameter 'token' with no description. Description explains that token is a JWT and clarifies the two scenarios: pass token for session login or omit to get a link. This adds necessary meaning beyond the bare 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?

Clearly states the verb 'authenticate' and the resource 'MCP.AI for IDE agents'. Distinguishes from siblings by being the only authentication tool among many feegow and other tools. Explains two methods of login: permanent via config header or session via token.

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?

Explicitly states when to use the tool (for login) and provides context for two use cases. Does not explicitly mention when not to use, but the purpose is clear and well-scoped.

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

connectA
Read-onlyIdempotent
Inspect

Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint, indicating safe, idempotent read operation. The description adds behavioral context by detailing response fields (authenticated, pending, connect_url) and explaining different states, going beyond annotations.

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 the main action. Every sentence provides essential information without redundancy. Highly concise and well-structured.

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

Completeness5/5

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

Given no output schema, the description explains key return scenarios (authenticated state, pending array, connect URLs). It covers the necessary context for an agent to interpret results correctly. Complete for a simple status check tool.

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

Parameters4/5

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

The input schema has zero parameters, and schema description coverage is 100% (trivially). Per guidelines, zero parameters earn a baseline of 4. The description adds no parameter semantics, but none 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 'Returns connection status and URLs', specifying the verb (returns) and resource (connection status). It distinguishes itself from siblings like 'authenticate' by focusing on status rather than performing authentication. Additional details about different response scenarios add clarity.

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

Usage Guidelines4/5

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

The description provides context on when to use the tool by explaining behavior under different conditions (all providers connected vs missing credentials). However, it does not explicitly mention when not to use it or offer alternative tools, leaving some guidance implicit.

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

feegow_appointment_available_scheduleC
Read-onlyIdempotent
Inspect

Read appointments and scheduling data in Feegow. Actions:

  • list: search appointments by date range (data_start/data_end DD-MM-YYYY), profissional_id, paciente_id, unidade_id, especialidade_id, procedimento_id, canal_id, retorno, list_procedures (1/0).

  • statuses: list all appointment status types (Marcado, Em atendimento, Atendido, etc.).

  • motives: list cancellation/rescheduling motives.

  • channels: list appointment channels (online, clinic, etc.).

  • available_schedule: find available time slots. Requires tipo (E=Especialidade, P=Procedimento), data_start, data_end (DD-MM-YYYY). Optional: especialidade_id, procedimento_id, unidade_id, profissional_id, convenio_id.

  • queue_position: generate queue ticket (requires unidade_id, tipo_senha: 0=G, 1=P, 2=C, 3=E, 4=R).

[Flattened action: available_schedule]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false, which the description aligns with by stating 'Read appointments and scheduling data'. The description adds that it finds available time slots, but does not disclose additional behavioral traits like authentication or rate limiting.

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

Conciseness2/5

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

The description is verbose, listing multiple actions irrelevant to this specific tool. It would be more concise and front-loaded by focusing solely on the available_schedule action.

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 the low schema coverage and no output schema, the description fails to explain how to supply the required parameters via the 'data' field or the expected format. It is incomplete and inconsistent with the actual schema.

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 defines only 'data' and 'account' as string parameters with no descriptions, while the description details many parameters like tipo, data_start, data_end, etc. that are not present in the schema. This mismatch misleads the agent about what parameters to provide.

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 includes the specific action 'available_schedule: find available time slots' which clarifies the tool's purpose, but it also lists other unrelated actions (list, statuses, etc.) that are not part of this tool, causing potential confusion. The tool name itself is clear enough.

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 does not explicitly state when to use this tool versus its sibling tools. It only provides parameter requirements for the available_schedule action, but no guidance on alternatives or context for selection.

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

feegow_appointment_channelsC
Read-onlyIdempotent
Inspect

Read appointments and scheduling data in Feegow. Actions:

  • list: search appointments by date range (data_start/data_end DD-MM-YYYY), profissional_id, paciente_id, unidade_id, especialidade_id, procedimento_id, canal_id, retorno, list_procedures (1/0).

  • statuses: list all appointment status types (Marcado, Em atendimento, Atendido, etc.).

  • motives: list cancellation/rescheduling motives.

  • channels: list appointment channels (online, clinic, etc.).

  • available_schedule: find available time slots. Requires tipo (E=Especialidade, P=Procedimento), data_start, data_end (DD-MM-YYYY). Optional: especialidade_id, procedimento_id, unidade_id, profissional_id, convenio_id.

  • queue_position: generate queue ticket (requires unidade_id, tipo_senha: 0=G, 1=P, 2=C, 3=E, 4=R).

[Flattened action: channels]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which align with the described 'Read' nature. The description adds some parameter details for internal actions but does not disclose additional behavioral traits (e.g., rate limits, side effects) beyond what annotations provide.

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

Conciseness2/5

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

The description is long and contains verbose parameter lists for each action, but the critical information (that this tool is for channels and how to invoke it given the minimal schema) is not front-loaded. The note '[Flattened action: channels]' adds confusion rather than clarity.

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

Completeness1/5

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

Given the minimal input schema (two string parameters) and no output schema, the description should explain how to use the tool. Instead, it details parameters that do not exist in the schema, making it impossible to correctly invoke the tool based on the description alone. The description is severely incomplete.

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 input schema has only two generic parameters ('data' and 'account') with 0% schema description coverage, but the description lists many action-specific parameters (e.g., data_start, profissional_id) that are not part of the actual schema. The description does not explain how 'data' and 'account' relate to the actions, leaving the agent without guidance on how to populate the real parameters.

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

Purpose2/5

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

The description lists multiple actions (list, statuses, motives, channels, etc.) but the tool name is 'channels' and the note '[Flattened action: channels]' suggests it is specifically for accessing appointment channels. This ambiguity makes it unclear what the tool actually does, as it duplicates functionality of sibling tools.

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

Usage 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 its siblings (e.g., feegow_appointment_list, feegow_appointment_statuses). The description does not differentiate between this tool and others, leaving the agent to guess which tool to invoke.

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

feegow_appointment_listD
Read-onlyIdempotent
Inspect

Read appointments and scheduling data in Feegow. Actions:

  • list: search appointments by date range (data_start/data_end DD-MM-YYYY), profissional_id, paciente_id, unidade_id, especialidade_id, procedimento_id, canal_id, retorno, list_procedures (1/0).

  • statuses: list all appointment status types (Marcado, Em atendimento, Atendido, etc.).

  • motives: list cancellation/rescheduling motives.

  • channels: list appointment channels (online, clinic, etc.).

  • available_schedule: find available time slots. Requires tipo (E=Especialidade, P=Procedimento), data_start, data_end (DD-MM-YYYY). Optional: especialidade_id, procedimento_id, unidade_id, profissional_id, convenio_id.

  • queue_position: generate queue ticket (requires unidade_id, tipo_senha: 0=G, 1=P, 2=C, 3=E, 4=R).

[Flattened action: list]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations indicate readOnlyHint=true, but the description includes 'queue_position: generate queue ticket', which implies a state-changing operation. This contradiction reduces transparency. Additionally, the input schema does not match the described parameters, further obscuring behavior.

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

Conciseness2/5

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

The description is verbose, mixing multiple actions in a single block. It ends with an unexplained '[Flattened action: list]', which is cryptic. Better structure would isolate the primary list action and note that other actions are separate tools.

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 the complexity (multiple actions described, rich sibling ecosystem) and minimal input schema (no descriptions, no output schema), the description fails to explain how to use the actual parameters or interpret the flattened action, leaving critical gaps.

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 only 'data' and 'account' with no descriptions (0% coverage). The description extensively lists parameters like data_start, data_end, profissional_id, etc., but these are not in the schema, adding no value to the actual parameters and creating confusion.

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

Purpose2/5

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

The description lists multiple actions (list, statuses, motives, channels, available_schedule, queue_position) but the tool name is 'appointment_list', suggesting a focused purpose. The description conflates these actions, and many have separate sibling tools, causing ambiguity about the tool's primary function.

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

Usage Guidelines1/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 its siblings (e.g., feegow_appointment_statuses, feegow_appointment_channels). The description lists actions that overlap with existing distinct tools, leaving the agent without clear criteria for tool selection.

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

feegow_appointment_motivesC
Read-onlyIdempotent
Inspect

Read appointments and scheduling data in Feegow. Actions:

  • list: search appointments by date range (data_start/data_end DD-MM-YYYY), profissional_id, paciente_id, unidade_id, especialidade_id, procedimento_id, canal_id, retorno, list_procedures (1/0).

  • statuses: list all appointment status types (Marcado, Em atendimento, Atendido, etc.).

  • motives: list cancellation/rescheduling motives.

  • channels: list appointment channels (online, clinic, etc.).

  • available_schedule: find available time slots. Requires tipo (E=Especialidade, P=Procedimento), data_start, data_end (DD-MM-YYYY). Optional: especialidade_id, procedimento_id, unidade_id, profissional_id, convenio_id.

  • queue_position: generate queue ticket (requires unidade_id, tipo_senha: 0=G, 1=P, 2=C, 3=E, 4=R).

[Flattened action: motives]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the descriptor adds no new behavioral information. The description does not disclose rate limits, authentication needs, or other traits beyond what annotations cover.

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

Conciseness2/5

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

The description is long and includes multiple unrelated actions, making it not concise for this specific tool. The 'Flattened action: motives' note is buried at the end, reducing clarity.

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

Completeness1/5

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

Given the tool's complexity within the appointment suite, the description is incomplete. It does not explain the output format, parameter requirements for motives, or how the tool fits into workflow, leaving agents with insufficient 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 two parameters (data, account) with 0% description coverage. The description does not explain how these parameters relate to the motives action, leaving the agent without guidance on parameter usage.

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 that the tool lists cancellation/rescheduling motives, distinguishing it from sibling tools like statuses and channels. However, the description also includes a general statement about reading appointments and scheduling data, which could be seen as broad.

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 does not provide any guidance on when to use this tool instead of alternatives like feegow_appointment_statuses or feegow_appointment_list. It simply describes the action without context for selection.

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

feegow_appointment_queue_positionD
Read-onlyIdempotent
Inspect

Read appointments and scheduling data in Feegow. Actions:

  • list: search appointments by date range (data_start/data_end DD-MM-YYYY), profissional_id, paciente_id, unidade_id, especialidade_id, procedimento_id, canal_id, retorno, list_procedures (1/0).

  • statuses: list all appointment status types (Marcado, Em atendimento, Atendido, etc.).

  • motives: list cancellation/rescheduling motives.

  • channels: list appointment channels (online, clinic, etc.).

  • available_schedule: find available time slots. Requires tipo (E=Especialidade, P=Procedimento), data_start, data_end (DD-MM-YYYY). Optional: especialidade_id, procedimento_id, unidade_id, profissional_id, convenio_id.

  • queue_position: generate queue ticket (requires unidade_id, tipo_senha: 0=G, 1=P, 2=C, 3=E, 4=R).

[Flattened action: queue_position]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior1/5

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

Annotations declare readOnlyHint=true and idempotentHint=true, but the description includes 'queue_position' action that 'generates a queue ticket,' implying a write operation. This contradicts the readOnly hint. No explanation of other behavioral traits.

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

Conciseness2/5

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

The description is verbose and includes multiple actions not relevant to the tool name. It is not front-loaded; the key purpose is buried. Every sentence does not earn its place.

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 the minimal schema and absence of output schema, the description fails to explain how to use the actual parameters (data and account). It provides no context on return values or behavior beyond listing unrelated actions.

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 only two parameters (data, account) with 0% description coverage. The description lists many parameters for various actions (e.g., data_start, profissional_id) that are not in the schema. This misleads the agent about what parameters are actually required.

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

Purpose2/5

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

The description includes multiple actions (list, statuses, motives, channels, available_schedule, queue_position) but the tool name specifically suggests queue_position. The ending says '[Flattened action: queue_position]' which is confusing. It does not clearly state what the tool does in relation to its name.

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 versus siblings. The description lists parameters for actions but does not differentiate this tool from similar sibling tools like feegow_appointment_available_schedule or feegow_appointment_list.

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

feegow_appointment_statusesD
Read-onlyIdempotent
Inspect

Read appointments and scheduling data in Feegow. Actions:

  • list: search appointments by date range (data_start/data_end DD-MM-YYYY), profissional_id, paciente_id, unidade_id, especialidade_id, procedimento_id, canal_id, retorno, list_procedures (1/0).

  • statuses: list all appointment status types (Marcado, Em atendimento, Atendido, etc.).

  • motives: list cancellation/rescheduling motives.

  • channels: list appointment channels (online, clinic, etc.).

  • available_schedule: find available time slots. Requires tipo (E=Especialidade, P=Procedimento), data_start, data_end (DD-MM-YYYY). Optional: especialidade_id, procedimento_id, unidade_id, profissional_id, convenio_id.

  • queue_position: generate queue ticket (requires unidade_id, tipo_senha: 0=G, 1=P, 2=C, 3=E, 4=R).

[Flattened action: statuses]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior1/5

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

The description claims to support actions with many parameters (data_start, profissional_id, etc.), but the actual input schema only has two string fields ('data' and 'account'). This contradiction makes the tool's real behavior opaque and misleading.

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

Conciseness2/5

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

The description is excessively long and contains a list of actions that are irrelevant to the tool's actual functionality (based on the schema). The final note '[Flattened action: statuses]' suggests oversimplification, but the overall structure is poor and wastes space.

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 the mismatch between the described functionality and the minimal schema, the description fails to provide a complete and accurate picture. It does not explain how the tool works with only two parameters, leaving the agent without actionable guidance.

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 lists numerous parameters (e.g., data_start, data_end, profissional_id) that are not present in the schema. This misleads the agent into thinking it can pass those parameters, leading to inevitable errors.

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

Purpose2/5

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

The description starts with 'Read appointments and scheduling data in Feegow.' which is broad and does not match the tool name 'feegow_appointment_statuses'. It lists multiple actions (list, statuses, motives, etc.) that are likely handled by other sibling tools, causing confusion about the actual purpose.

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

Usage Guidelines1/5

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

No guidance is given on when to use this tool versus its siblings (e.g., feegow_appointment_list, feegow_appointment_channels). The description lists actions that appear to belong to other tools, making it impossible to determine when this specific tool is appropriate.

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

feegow_appointment_write_cancelDInspect

Create, cancel, reschedule, or update status of appointments in Feegow. Actions:

  • create: new appointment. Requires local_id, paciente_id, profissional_id, especialidade_id, procedimento_id, data (DD-MM-YYYY), horario (HH:MM:SS 24h), valor (centavos), plano (0=no insurance, 1=insurance). Optional: convenio_id, convenio_plano_id, canal_id, tabela_id, notas, celular, telefone, email, retorno, sys_user.

  • cancel: requires agendamento_id, motivo_id. Optional: obs. (reversible status flip — not a hard delete).

  • reschedule: requires agendamento_id, motivo_id, data (DD-MM-YYYY), horario (HH:MM:SS). Optional: obs.

  • update_status: requires AgendamentoID, StatusID. Optional: Obs, HoraChegada (HH:MM for waiting status).

[Flattened action: cancel]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations show readOnlyHint=false, destructiveHint=false, which are consistent with a cancel operation. The description adds that cancel is 'reversible status flip', which is helpful. However, the massive mismatch between described parameters (detailed lists) and actual schema (only data and account) undermines transparency.

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

Conciseness2/5

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

The description is excessively long (multiple action cases) for a tool that likely only cancels. Important info is buried, and irrelevant details for other actions are included. Not concise or front-loaded.

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?

Though the tool appears complex (multiple actions implied), the actual schema has only 2 params with no output schema. The description fails to explain the schema mismatch, leaving an agent confused about what parameters to use. Incomplete and misleading.

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 coverage is 0%: the description does not explain the actual parameters ('data' and 'account') at all. Instead, it lists many parameters for hypothetical actions that do not match the schema. No semantic value added for the real parameters.

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

Purpose2/5

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

The description lists multiple actions (create, cancel, reschedule, update status) but the tool name and sibling tools strongly indicate it is for cancel only. The flattened action '[cancel]' contradicts the body. Purpose is vague and not specific to the tool's role.

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 when-to-use guidance. The description suggests the tool can perform any action, but sibling tools for other actions exist, creating confusion about when to use this vs. others.

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

feegow_appointment_write_createCInspect

Create, cancel, reschedule, or update status of appointments in Feegow. Actions:

  • create: new appointment. Requires local_id, paciente_id, profissional_id, especialidade_id, procedimento_id, data (DD-MM-YYYY), horario (HH:MM:SS 24h), valor (centavos), plano (0=no insurance, 1=insurance). Optional: convenio_id, convenio_plano_id, canal_id, tabela_id, notas, celular, telefone, email, retorno, sys_user.

  • cancel: requires agendamento_id, motivo_id. Optional: obs. (reversible status flip — not a hard delete).

  • reschedule: requires agendamento_id, motivo_id, data (DD-MM-YYYY), horario (HH:MM:SS). Optional: obs.

  • update_status: requires AgendamentoID, StatusID. Optional: Obs, HoraChegada (HH:MM for waiting status).

[Flattened action: create]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations provide readOnlyHint=false and destructiveHint=false. The description adds context that cancellation is a reversible status flip, not hard delete. However, the description fails to align with annotations regarding the scope of actions (create vs. all).

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 verbose and mixes multiple actions, but it is structured with bullet points and optional fields. However, it could be more concise by focusing on the single intended action (create) and referencing siblings for others.

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 schema poverty and complexity, the description attempts to be complete but fails due to contradictions with sibling tools and the schema. The output schema is absent, so return values are not explained.

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 input schema has 0% description coverage with only 'data' and 'account' parameters. The description compensates by listing many action-specific parameters, but these do not match the schema, leading to confusion about which parameters are actually required or available.

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

Purpose2/5

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

The description claims the tool can create, cancel, reschedule, or update status, which contradicts the existence of sibling tools dedicated to cancel, reschedule, and update status. The phrase '[Flattened action: create]' adds confusion, as the description itself describes multiple actions. This misalignment makes the purpose unclear.

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 its siblings (e.g., feegow_appointment_write_cancel). The description lists multiple actions without indicating which scenario warrants this tool over another.

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

feegow_appointment_write_rescheduleDInspect

Create, cancel, reschedule, or update status of appointments in Feegow. Actions:

  • create: new appointment. Requires local_id, paciente_id, profissional_id, especialidade_id, procedimento_id, data (DD-MM-YYYY), horario (HH:MM:SS 24h), valor (centavos), plano (0=no insurance, 1=insurance). Optional: convenio_id, convenio_plano_id, canal_id, tabela_id, notas, celular, telefone, email, retorno, sys_user.

  • cancel: requires agendamento_id, motivo_id. Optional: obs. (reversible status flip — not a hard delete).

  • reschedule: requires agendamento_id, motivo_id, data (DD-MM-YYYY), horario (HH:MM:SS). Optional: obs.

  • update_status: requires AgendamentoID, StatusID. Optional: Obs, HoraChegada (HH:MM for waiting status).

[Flattened action: reschedule]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations are minimal (all false). The description adds some context: cancellation is a reversible status flip, not a hard delete. However, it does not disclose authentication needs, rate limits, or side effects for other actions. No contradiction with annotations.

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

Conciseness2/5

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

The description is verbose with bullet points for multiple actions, but the tool name suggests a single action. The 'Flattened action: reschedule' contradicts the listed actions. The structure is not tailored to this specific tool.

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

Completeness1/5

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

Given the complexity of multiple actions and many parameters, the description fails to explain how to invoke the tool correctly. The schema does not support the described parameters, making the description useless for proper invocation. No output schema.

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 lists many parameters (e.g., local_id, paciente_id) for each action, but the input schema only has 'data' and 'account' with no descriptions. This mismatch is highly misleading; the agent cannot map described parameters to actual schema properties.

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

Purpose2/5

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

The description claims to handle create, cancel, reschedule, and update_status, but the tool name is 'reschedule' and sibling tools exist for each specific action. This ambiguity confuses the tool's actual purpose. The 'Flattened action: reschedule' hint adds contradiction.

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

Usage Guidelines1/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 sibling tools like feegow_appointment_write_cancel or feegow_appointment_write_create. The description does not differentiate use cases or provide exclusions.

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

feegow_appointment_write_update_statusBInspect

Create, cancel, reschedule, or update status of appointments in Feegow. Actions:

  • create: new appointment. Requires local_id, paciente_id, profissional_id, especialidade_id, procedimento_id, data (DD-MM-YYYY), horario (HH:MM:SS 24h), valor (centavos), plano (0=no insurance, 1=insurance). Optional: convenio_id, convenio_plano_id, canal_id, tabela_id, notas, celular, telefone, email, retorno, sys_user.

  • cancel: requires agendamento_id, motivo_id. Optional: obs. (reversible status flip — not a hard delete).

  • reschedule: requires agendamento_id, motivo_id, data (DD-MM-YYYY), horario (HH:MM:SS). Optional: obs.

  • update_status: requires AgendamentoID, StatusID. Optional: Obs, HoraChegada (HH:MM for waiting status).

[Flattened action: update_status]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations provide basic hints (readOnlyHint=false, destructiveHint=false). The description adds that cancel is 'reversible status flip, not a hard delete.' However, it does not disclose authentication needs, rate limits, or other side effects beyond annotations.

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 moderately structured with bullet points per action, but is verbose in listing optional parameters repeatedly. The 'Flattened action: update_status' note adds confusion. Could be more 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 no output schema and minimal input schema, the description covers actions and parameters well but lacks integration with the actual API signature (e.g., how to structure the 'data' field). Missing return value info and error handling, so incomplete for practical 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?

With 0% schema description coverage, the description carries full burden. It lists required/optional parameters per action and gives format hints (e.g., data in DD-MM-YYYY). However, it does not explain how to map these to the actual schema's 'data' string property, leaving a 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 can create, cancel, reschedule, or update status of appointments, listing actions with parameters. It distinguishes from sibling tools like feegow_appointment_write_cancel by offering a consolidated interface. However, the name 'update_status' is narrower than the actual scope.

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 provides detailed parameter lists per action but does not explicitly guide when to use this tool versus the sibling tools for individual actions (e.g., feegow_appointment_write_create). No exclusions or alternatives are mentioned.

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

feegow_benefit_card_list_contractsC
Read-onlyIdempotent
Inspect

Read benefit card data in Feegow (contracts and plans). Actions:

  • list_contracts: list benefit contracts. Filter by page, perPage, document, planId, name, personID, accountOwner, registrationNumber, initialDate, endDate, statusContractId, unity, user, accountPayer.

  • list_plans: list benefit plans. Filter by page, perPage, id.

[Flattened action: list_contracts]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already indicate readOnly, idempotent, and not destructive. The description adds filter details but no new behavioral traits beyond what annotations imply.

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 structured with bullet points but includes extraneous details like both actions and a note about 'Flattened action'. It could be more concise.

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 low schema coverage, the description fails to explain return values or how to use the 'data' and 'account' parameters. It also does not clarify the mismatch between the listed filters and actual schema.

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 two parameters 'data' and 'account' with no descriptions, and the description does not explain them. It instead lists filters that are not in the schema, providing no help for the actual parameters.

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

Purpose4/5

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

The description states 'Read benefit card data' and lists two actions with filters, making the purpose clear. However, it includes both list_contracts and list_plans while the tool is specifically for list_contracts, causing slight ambiguity.

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 the sibling 'feegow_benefit_card_list_plans' or other contexts. The description lacks explicit when-to-use and when-not-to-use information.

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

feegow_benefit_card_list_plansC
Read-onlyIdempotent
Inspect

Read benefit card data in Feegow (contracts and plans). Actions:

  • list_contracts: list benefit contracts. Filter by page, perPage, document, planId, name, personID, accountOwner, registrationNumber, initialDate, endDate, statusContractId, unity, user, accountPayer.

  • list_plans: list benefit plans. Filter by page, perPage, id.

[Flattened action: list_plans]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so basic safety is covered. The description adds minimal context ('Read') beyond annotations, but does not provide additional behavioral details like pagination or authorization.

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?

Description is short but includes extraneous mention of list_contracts, which may not belong to this tool. Front-loaded with 'Read benefit card data' but lacks focus.

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 only 2 parameters with no schema descriptions and no output schema, the description should explain the parameters and return format. It fails to do so, and the listed filters do not correspond to the actual schema.

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?

Input schema has 2 parameters (data, account) with 0% coverage. Description lists filters (page, perPage, id) that do not match schema parameters, causing confusion. No useful meaning added to actual parameters.

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

Purpose2/5

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

The description states 'Read benefit card data' but is ambiguous whether it lists contracts and plans or just plans, given the name and '[Flattened action: list_plans]' note. It does not clearly distinguish from the sibling tool 'feegow_benefit_card_list_contracts'.

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 versus alternatives like 'feegow_benefit_card_list_contracts'. The description simply lists actions without context.

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

feegow_benefit_card_write_create_contractBInspect

Write benefit card operations in Feegow (contracts and plans). Actions:

  • create_contract: create benefit contract. Full body with contract, recurrence, people arrays.

  • update_contract: update benefit contract.

  • create_plan: create benefit plan (name, membershipValue, recurrenceValue, dependencyMembershipValue, dependencyRecurrenceValue, parameters).

  • update_plan: update benefit plan (id required).

[Flattened action: create_contract]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations indicate a write operation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds that create_contract requires a 'full body with contract, recurrence, people arrays,' but does not disclose behavior like auth requirements, side effects, or error handling.

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 moderately concise but includes redundant listing of actions that could be split into separate tool definitions. The flattened action note is helpful, but overall structure could be tighter.

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 minimal input schema and absent output schema, the description provides enough context for a simple create action but lacks details on prerequisites, error states, or expected return format.

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?

Input schema has 0% description coverage, but the description partially compensates by explaining that for create_contract the data string should contain 'contract, recurrence, people arrays.' The account parameter is not explained, leaving ambiguity.

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 specifies the tool is for writing benefit card operations, and the flattened action indicates the specific operation for this instance (create_contract). However, it lists multiple actions (update_contract, create_plan, update_plan) which could cause confusion with sibling tools like feegow_benefit_card_write_create_plan.

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 siblings such as feegow_benefit_card_write_create_plan or feegow_benefit_card_write_update_contract. The description does not differentiate between similar write operations, leaving the agent without clear selection criteria.

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

feegow_benefit_card_write_create_planDInspect

Write benefit card operations in Feegow (contracts and plans). Actions:

  • create_contract: create benefit contract. Full body with contract, recurrence, people arrays.

  • update_contract: update benefit contract.

  • create_plan: create benefit plan (name, membershipValue, recurrenceValue, dependencyMembershipValue, dependencyRecurrenceValue, parameters).

  • update_plan: update benefit plan (id required).

[Flattened action: create_plan]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations confirm a write operation (readOnlyHint=false) but the description only states 'create benefit plan' without disclosing side effects, idempotency, or error conditions. No additional behavioral context beyond the obvious.

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

Conciseness2/5

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

The description includes extraneous actions for a tool that seems to focus on create_plan. The '[Flattened action: create_plan]' note is confusing. Could be streamlined to focus on the actual action.

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?

The description fails to provide a complete understanding. It lacks details on the required format of 'data', what each plan field means, and what the response looks like. With no output schema, this is insufficient for an agent to invoke correctly.

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%, so the description must explain parameters. It lists fields for create_plan (name, membershipValue, etc.) but does not clarify how they map to the 'data' string parameter. The two parameters 'data' and 'account' are not explained.

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

Purpose2/5

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

The description lists multiple actions (create_contract, update_contract, create_plan, update_plan) but the tool name and '[Flattened action: create_plan]' suggest it is specifically for creating a plan. This ambiguity hurts clarity relative to sibling tools like feegow_benefit_card_list_plans and feegow_benefit_card_write_update_plan.

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 such as create_contract or update_plan. The description does not mention prerequisites, exclusions, or context for choosing this tool.

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

feegow_benefit_card_write_update_contractDInspect

Write benefit card operations in Feegow (contracts and plans). Actions:

  • create_contract: create benefit contract. Full body with contract, recurrence, people arrays.

  • update_contract: update benefit contract.

  • create_plan: create benefit plan (name, membershipValue, recurrenceValue, dependencyMembershipValue, dependencyRecurrenceValue, parameters).

  • update_plan: update benefit plan (id required).

[Flattened action: update_contract]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations already mark the tool as non-readOnly and non-destructive. The description adds 'write benefit card operations' but fails to disclose side effects, idempotency, or behavior of individual actions (e.g., whether updates are partial or full replacement).

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 moderately concise but includes redundant action listings and an ambiguous flattened action note. It could be clearer and more focused on the intended action.

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?

The description lacks critical information: how to select an action, the format of the 'data' string, return values, and error conditions. Given the presence of sibling tools and the complexity of the domain, the description is insufficient.

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 two parameters, 'data' and 'account', with no descriptions in the schema (0% coverage). The description briefly mentions 'Full body with contract, recurrence, people arrays' for create_contract but does not explain the structure of 'data' for other actions, nor the role of 'account'.

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

Purpose2/5

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

The description lists multiple actions (create_contract, update_contract, create_plan, update_plan) but the tool name and final note indicate it's for update_contract. This ambiguity obscures the specific purpose and conflicts with sibling tools that specialize in each action.

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

Usage Guidelines1/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 sibling tools like feegow_benefit_card_write_create_contract or feegow_benefit_card_write_update_plan. The description does not clarify which action to choose or how to specify it.

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

feegow_benefit_card_write_update_planCInspect

Write benefit card operations in Feegow (contracts and plans). Actions:

  • create_contract: create benefit contract. Full body with contract, recurrence, people arrays.

  • update_contract: update benefit contract.

  • create_plan: create benefit plan (name, membershipValue, recurrenceValue, dependencyMembershipValue, dependencyRecurrenceValue, parameters).

  • update_plan: update benefit plan (id required).

[Flattened action: update_plan]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations are present but basic (no readOnly, destructive hints). The description adds little beyond stating 'write operations' – no details on side effects, authorization needs, or what 'benefit card' means. With annotations covering safety profile minimally, the description should compensate but does not.

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 relatively concise but structurally confusing. It lists four actions then appends '[Flattened action: update_plan]', which contradicts the earlier listing. This wastes space and reduces clarity.

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

Completeness2/5

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

The tool handles multiple operations with no output schema, no error or return information, and incomplete parameter explanations. Given the complexity and zero schema coverage, the description should provide more context, such as the format of the 'data' parameter for each action.

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 explain parameters. It mentions JSON bodies for actions but does not link to the 'data' and 'account' parameters. The description does not clarify what these parameters contain (e.g., is 'data' the JSON string for the action?). This is insufficient.

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 lists multiple actions (create_contract, update_contract, create_plan, update_plan) but the title and final line 'Flattened action: update_plan' suggest a primary focus. This creates ambiguity about the tool's actual purpose, making it unclear whether it handles multiple operations or just plan 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 guidance on when to use this tool versus sibling tools like feegow_benefit_card_write_create_plan or update_contract. The description does not differentiate use cases or indicate prerequisites, leaving the agent to infer from names alone.

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

feegow_billingC
Read-onlyIdempotent
Inspect

Read insurance billing guides (guias) in Feegow. Requires billing_type_id (1=Consulta, 2=SADT, 3=Honorarios, 4=Internação, 5=Quimioterapia), insurance_id, billing (guide number).

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations already set readOnlyHint=true, so the description's 'Read' aligns. However, the description lists three parameters that are not present in the actual input schema (data, account), creating a mismatch. This misrepresentation of how to invoke the tool significantly reduces transparency.

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. The first sentence states the purpose, and the second lists required fields. Despite the content issue, the structure is efficient and front-loaded.

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?

For a read operation with required parameters and no output schema, the description should explain how to construct the input. It fails to address the mismatch between listed parameters and the actual schema, leaving the agent with insufficient guidance for correct invocation.

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%, so the description must clarify the parameters. It lists billing_type_id, insurance_id, and billing, but the schema only has 'data' and 'account'. The description fails to map these to the actual schema, making it unclear how to provide the required inputs.

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 reads insurance billing guides, which distinguishes it from write siblings like feegow_billing_write_create and feegow_billing_write_edit. The verb 'Read' and resource 'insurance billing guides (guias)' are specific and clear.

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 lists required parameters (billing_type_id, insurance_id, billing) but does not explicitly state when to use this tool versus alternatives. However, the read-only nature is implied by the description and annotations, providing some usage guidance.

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

feegow_billing_write_createCInspect

Create or edit insurance billing guides in Feegow. Actions:

  • create: create a new SADT billing guide. Pass full data as JSON.

  • edit: edit a SADT billing guide. Requires billing_id, billing_type_id, plus attribute to edit.

[Flattened action: create]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations provide no readOnly or destructive hints, so description must clarify mutation behavior. It says 'create or edit' but doesn't describe side effects, idempotency, permission requirements, or what happens on duplicate creation. The flattened action note adds ambiguity rather than clarity.

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

Conciseness2/5

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

The description is short but poorly structured. It redundantly lists actions and then adds a contradictory flat comment. The layout is not front-loaded; the key takeaway (flattened action) is at the end. Space could be used more effectively to explain the single actual action and parameter structure.

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

Completeness1/5

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

With low schema coverage and no output schema, the description should fully compensate. It does not explain the 'data' parameter format, the 'account' parameter's purpose, or what the tool returns. For a mutation tool, this is critically incomplete, leaving the agent unable to correctly invoke it.

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 has two parameters (data, account) with 0% description coverage. Description adds meaning by mentioning JSON data for create and specific fields (billing_id, billing_type_id) for edit, but these fields are not reflected in the schema's parameter list. This creates confusion and misalignment between description and actual interface.

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 'Create or edit insurance billing guides', which is specific but confusing because a sibling tool 'feegow_billing_write_edit' exists for editing. The purpose is somewhat clear for creation, but the inclusion of editing blurs the distinction without clear differentiation.

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 versus the separate edit tool. The description lists create and edit actions, but the input schema lacks an action field, making it unclear how to invoke edit. The final '[Flattened action: create]' suggests only create is actually supported, contradicting the earlier instructions.

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

feegow_billing_write_editCInspect

Create or edit insurance billing guides in Feegow. Actions:

  • create: create a new SADT billing guide. Pass full data as JSON.

  • edit: edit a SADT billing guide. Requires billing_id, billing_type_id, plus attribute to edit.

[Flattened action: edit]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations are minimal and the description does not add behavioral context beyond indicating write operations. No disclosure of side effects, permissions, or rate limits. With no annotations providing safety details, the description fails to compensate.

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 but includes a confusing 'Flattened action: edit' line that undermines clarity. It front-loads the action list but fails to resolve ambiguity. Could be more concise and structured.

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 schema does not include a mode parameter and the description implies two distinct actions, the lack of clarity on how to specify the action leaves the tool incomplete. No output schema, no error or return value information.

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 description mentions parameters like 'billing_id', 'billing_type_id', and 'attribute to edit' that do not exist in the input schema (only 'data' and 'account'). This contradiction misleads the agent about how to invoke the tool. Schema coverage is 0%, and the description adds incorrect semantics.

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 it can create or edit insurance billing guides, but the note 'Flattened action: edit' creates confusion. It distinguishes create vs edit but the schema does not reflect the required parameters for each action, making the purpose unclear.

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 versus the sibling 'feegow_billing_write_create'. The mention of both create and edit actions without clear delineation misleads the agent. No when-not-to-use information.

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

feegow_company_list_localsC
Read-onlyIdempotent
Inspect

Read clinic company info in Feegow. Actions:

  • list_units: list all units (matriz + filiais). Optional: endereco, cep.

  • list_locals: list rooms/locations registered across units.

[Flattened action: list_locals]

ParametersJSON Schema
NameRequiredDescriptionDefault
cepNo
accountNo
enderecoNo
Behavior3/5

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

Annotations (readOnlyHint=true, destructiveHint=false) already indicate a safe read operation. Description adds 'Read clinic company info' consistent with annotations, but doesn't disclose any additional behavioral traits like output format or pagination. No contradiction.

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 but includes extraneous information about list_units, which is better left to the sibling tool. The flattening note is helpful but the mixed focus reduces clarity. Could be more concise by only describing list_locals.

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 simple schema (3 params, no output schema), a clear description should suffice, but the ambiguity about the actual action and parameter roles leaves the agent unsure about what the tool returns and how to use parameters correctly.

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 coverage, the description must explain parameters. It mentions 'Optional: endereco, cep' but only in context of list_units, not list_locals. The 'account' parameter is not explained at all. This provides insufficient meaning for the agent to correctly invoke the tool.

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

Purpose3/5

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

Description states 'Read clinic company info' but then lists two actions (list_units and list_locals) while the tool name suggests list_locals. The final 'Flattened action: list_locals' clarifies the intended action, but the inclusion of list_units creates ambiguity and conflates with sibling tool feegow_company_list_units.

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 versus siblings like feegow_company_list_units. The description even mentions list_units as a possible action, potentially leading an agent to use this tool for unit listing instead of the dedicated sibling.

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

feegow_company_list_unitsC
Read-onlyIdempotent
Inspect

Read clinic company info in Feegow. Actions:

  • list_units: list all units (matriz + filiais). Optional: endereco, cep.

  • list_locals: list rooms/locations registered across units.

[Flattened action: list_units]

ParametersJSON Schema
NameRequiredDescriptionDefault
cepNo
accountNo
enderecoNo
Behavior2/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds 'Read clinic company info', but also includes an action (list_locals) that belongs to a separate tool, potentially misleading the agent about behavior.

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 but includes redundant mention of an action that belongs to another tool. It could be more focused on 'list_units' only, reducing clarity.

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 3 undocumented parameters and no output schema, the description fails to explain what the tool returns or how parameters affect results. It also introduces irrelevant functionality (list_locals), making it incomplete.

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%. The description only notes 'Optional: endereco, cep' without explaining their meaning or usage. The 'account' parameter is not mentioned at all, adding minimal value over the schema.

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

Purpose2/5

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

The description mentions two actions ('list_units' and 'list_locals'), but the tool name indicates only 'list_units'. This blurs purpose and fails to distinguish from the sibling tool 'feegow_company_list_locals'.

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 vs alternatives. The description does not mention the sibling tool or exclude cases, leaving the agent uninformed about appropriate context.

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

feegow_employeeA
Read-onlyIdempotent
Inspect

List employees in Feegow. Requires ativo (0=inactive, 1=active). Optional: unidade_id.

Bulk support: accepts unidade_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
ativoNo
accountNo
unidade_idNo
unidade_idsNo
Behavior4/5

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

Annotations already declare read-only, non-destructive, idempotent. Description adds batch execution capability via 'unidade_ids', providing useful behavioral context beyond annotations.

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 focused sentences, first covers purpose and key parameters, second adds bulk feature. No wasted words, easy to scan.

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?

Covers purpose, required/optional parameters, batch support. Lacks details on output format or pagination, but for a simple list tool with good annotations, it's adequate.

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?

Describes ativo (with values explained), unidade_id (optional), and unidade_ids (bulk). However, the 'account' parameter is not mentioned, leaving its purpose unclear. With 0% schema coverage, the description partially compensates.

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?

States 'List employees in Feegow' clearly identifying the action and resource. While it doesn't explicitly differentiate from sibling list tools, the resource name 'employee' is distinct.

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?

Provides parameter requirements (ativo) but no guidance on when to use this tool versus sibling list tools for other entities. No exclusionary context.

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

feegow_financial_delete_cancel_voucherC
Destructive
Inspect

Destructive financial operations in Feegow. Actions:

  • remove_invoice: remove an invoice.

  • remove_payment: remove a payment.

  • cancel_voucher: cancel a voucher. All are irreversible.

[Flattened action: cancel_voucher]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations already include destructiveHint=true, indicating irreversibility. The description adds 'All are irreversible,' which reinforces but doesn't substantially expand beyond the annotation. The mention of unrelated actions introduces slight confusion, but there is no contradiction with annotations.

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

Conciseness3/5

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

The description is relatively short but includes extraneous listing of other actions not relevant to this specific tool. The flattened action note is helpful. Some noise could be removed without losing meaning.

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

Completeness2/5

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

With no output schema and minimal description, the tool lacks information on return values, error conditions, or side effects beyond irreversibility. For a destructive operation, more context (e.g., what happens to related data) is needed for safe use.

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%, and the description provides no explanation of the parameters 'data' and 'account'. The agent must infer their purpose (likely voucher identifier and account context) without any guidance, risking misuse.

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

Purpose4/5

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

The description states the tool cancels a voucher, with a clear flattened action. However, it also lists other actions (remove_invoice, remove_payment) that belong to sibling tools, causing minor confusion. The resource and operation are clear, but differentiation from similar tools is not explicit.

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 warns that operations are irreversible but provides no guidance on when to use this tool versus sibling delete tools (e.g., feegow_financial_delete_remove_invoice). No context on prerequisites or appropriate scenarios is given.

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

feegow_financial_delete_remove_invoiceC
Destructive
Inspect

Destructive financial operations in Feegow. Actions:

  • remove_invoice: remove an invoice.

  • remove_payment: remove a payment.

  • cancel_voucher: cancel a voucher. All are irreversible.

[Flattened action: remove_invoice]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations already set destructiveHint=true, and the description adds 'All are irreversible,' which reinforces the destructive nature. This adds minimal extra value beyond annotations, but there is no contradiction. No additional behavioral details (e.g., authentication, side effects) are disclosed.

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 relatively short but includes extraneous information by listing multiple actions not relevant to this specific tool. The 'Flattened action' line helps, but the overall structure could be more focused. Some text is not strictly necessary.

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 two unannotated parameters, no output schema, and a destructive nature, the description is insufficient. It does not explain the input requirements, the effect of the action beyond irreversibility, or any expected outcomes. More detail is needed for safe and correct 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 input schema has two parameters (data, account) with 0% coverage (no descriptions in schema). The description does not mention or explain any parameters, leaving the agent without guidance on what values to provide. Given low schema coverage, the description should compensate, but it fails to do so.

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 tool name and description both indicate it removes an invoice. The description explicitly states 'remove_invoice: remove an invoice' and clarifies it is the flattened action. However, the description also lists other actions (remove_payment, cancel_voucher) which may cause confusion, though it does specify the current tool's 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?

No explicit guidance on when to use this tool versus similar siblings like feegow_financial_delete_cancel_voucher or feegow_financial_delete_remove_payment. The description only says it is destructive and irreversible, but does not provide decision criteria or context.

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

feegow_financial_delete_remove_paymentD
Destructive
Inspect

Destructive financial operations in Feegow. Actions:

  • remove_invoice: remove an invoice.

  • remove_payment: remove a payment.

  • cancel_voucher: cancel a voucher. All are irreversible.

[Flattened action: remove_payment]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations already indicate destructiveHint=true. The description adds 'All are irreversible,' which is consistent but adds little beyond the annotation. The description also falsely implies the tool handles multiple action types, which misrepresents its behavior.

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 but includes unnecessary information about other actions. The 'Flattened action' note adds clarity but the overall structure is muddled. It could be more concise by focusing solely on 'remove_payment'.

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 that this is a destructive operation with no output schema and low schema coverage, the description is severely lacking. It does not explain the parameters, the expected input format, or the consequences beyond 'irreversible'. The agent cannot reliably invoke this tool based on the description.

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 two parameters ('data' and 'account'), but the description provides no explanation of their meaning, format, or purpose. With 0% schema coverage, the description must compensate but fails to do so.

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

Purpose2/5

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

The description lists three actions (remove_invoice, remove_payment, cancel_voucher) but then states '[Flattened action: remove_payment]', creating ambiguity about what the tool actually does. The tool name suggests it is for removing payments only, yet the description broadens the scope incorrectly.

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

Usage Guidelines1/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 vs. sibling tools like 'feegow_financial_delete_cancel_voucher' or 'feegow_financial_delete_remove_invoice'. The description does not help the agent decide which action to invoke.

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

feegow_financial_find_invoice_nfseD
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: find_invoice_nfse]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description adds minimal behavioral context beyond stating 'Read financial data'. It mentions parameter format (JSON in data field) but omits details like response structure, pagination, or auth requirements.

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

Conciseness2/5

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

The description is short but padded with a long list of unrelated actions and a confusing 'Flattened action' note. It should focus only on this tool, making the current content inefficient and hard to parse.

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 the lack of output schema and parameter descriptions, the description fails to provide essential context about what the tool returns, how to structure the data parameter, or what an invoice NFSE is. It is inadequate for effective agent 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?

Schema description coverage is 0% and the description only notes that all params are passed as JSON in the 'data' field. There is no explanation of what the 'data' or 'account' parameters represent or what JSON structure is expected for find_invoice_nfse, leaving the agent unable to construct valid inputs.

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

Purpose2/5

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

The description only says 'Read financial data in Feegow' and lists many actions including find_invoice_nfse. It does not clarify what an invoice NFSE is or what 'find' means, failing to distinguish from sibling tools like list_invoices. The verb is vague and the resource is not defined.

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

Usage Guidelines1/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 feegow_financial_list_invoices or other search tools. There are no prerequisites, exclusions, or context for appropriate use.

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

feegow_financial_get_dmedC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: get_dmed]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows it's a safe read. The description adds that parameters are passed as JSON in the 'data' field, which is a behavioral detail beyond annotations but not extensive. No contradictions.

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

Conciseness2/5

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

The description is poorly structured: it mixes a generic purpose ('Read financial data'), a list of unrelated actions, a technical note about JSON passing, and a cryptic '[Flattened action: get_dmed]'. It is not concise or front-loaded with key information.

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 output schema and 0% parameter coverage, the description should provide rich context. However, it fails to explain what DMED is, what data the tool returns, or how to use the parameters effectively. The annotations provide safety info, but the tool's function remains unclear.

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%, so the description must add meaning. It states 'All params are passed as JSON in the data field', which gives some context but does not explain what 'data' or 'account' parameters represent. The actual parameters remain mostly undocumented.

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

Purpose2/5

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

The description starts with 'Read financial data in Feegow' but then lists many actions (list_suppliers, etc.), implying this tool does all of them. It does not specifically describe what 'get_dmed' does, leaving the purpose vague. The tool name suggests it retrieves a DMED, but the description offers no clarity.

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 sibling tools like feegow_financial_list_invoices or feegow_financial_search_supplier. The description does not differentiate this action from others, nor does it mention prerequisites or context.

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

feegow_financial_list_categoriesC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_categories]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that it reads financial data, which aligns, but provides no further behavioral details. No contradiction with annotations.

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

Conciseness3/5

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

The description is short but includes an irrelevant list of actions that clutter the purpose. The key information ('[Flattened action: list_categories]') is in a comment-like line. Could be more concise and front-loaded.

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?

No output schema, parameters are poorly explained, and there is no description of what the tool returns. For a listing tool, details on output format or pagination would be expected. The description leaves significant gaps.

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

Parameters2/5

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

Schema coverage is 0%, so description must compensate. It explains that params are passed as JSON in the 'data' field, which adds some meaning, but the 'account' parameter is unexplained. No details on required structure within the JSON.

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

Purpose2/5

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

The description opens with 'Read financial data in Feegow' and lists many actions, including list_categories, but does not clearly state that this tool specifically lists categories. The purpose is vague and fails to distinguish from sibling tools like feegow_financial_list_suppliers.

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. Among many financial list siblings, no context is given for when to choose list_categories over other list tools.

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

feegow_financial_list_cost_centersD
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_cost_centers]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds only 'Read financial data', which is consistent but provides no additional behavioral context beyond annotations.

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

Conciseness2/5

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

Wasteful: includes a long list of unrelated actions that are irrelevant for this specific tool. Could be concise by focusing only on list_cost_centers.

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?

No output schema and simple parameters, but description fails to specify what the tool returns or how to properly invoke it. Incomplete for agent decision-making.

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?

Input schema has two parameters (data, account) with 0% schema description coverage. Description does not explain their meaning or usage, leaving the agent without guidance.

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

Purpose2/5

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

Description is generic: 'Read financial data in Feegow' and lists many actions including list_cost_centers, but does not explicitly state that this tool lists cost centers. Purpose is vague and nearly tautological.

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 vs alternatives. The description lumps multiple actions together without differentiation.

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

feegow_financial_list_credit_card_brandsC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_credit_card_brands]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already provide readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds that parameters are passed as JSON in the 'data' field, which offers some behavioral insight, but lacks details like pagination or response format.

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

Conciseness1/5

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

The description is part of a large block listing many actions, making it verbose and unfocused for this specific tool. It includes irrelevant actions and a flattened action label, wasting space.

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

Completeness2/5

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

The tool is simple (list credit card brands) but lacks output schema and parameter details. The description does not provide enough information for an agent to correctly invoke the tool, as the structure of the 'data' JSON is unknown.

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?

With 0% schema description coverage, the description must explain parameters but fails. It only states that 'All params are passed as JSON in the 'data' field' without specifying what fields go into that JSON. The 'account' parameter is also unexplained.

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 tool name clearly indicates it lists credit card brands, but the description is generic ('Read financial data in Feegow') and lumps many actions together without specifying what this tool does individually.

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 the many sibling financial list tools (e.g., list_categories, list_cost_centers). The description does not differentiate or provide context.

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

feegow_financial_list_current_accountsC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_current_accounts]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which adequately indicate safe read behavior. The description adds a minor behavioral detail ('All params are passed as JSON in the data field') but does not contradict annotations. No additional behavioral traits are disclosed, so a 3 is appropriate.

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

Conciseness2/5

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

The description is not concise. It includes a long list of unrelated actions (e.g., list_suppliers, search_supplier) that are not relevant to this tool. The only relevant part is the final line '[Flattened action: list_current_accounts]', but the bulk of the description is clutter, wasting space and confusing the agent.

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 many sibling financial list tools and the lack of output schema, the description fails to provide complete context. It does not specify what data is returned (e.g., account IDs, names, balances) or how to interpret results. The agent cannot confidently use this tool without additional external knowledge.

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%, so the description must explain the parameters. It vaguely states that all params are passed as JSON in the 'data' field, but does not describe what 'data' or 'account' contain or how they affect the call. This provides almost no semantic value beyond the schema.

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

Purpose2/5

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

The description is vague and mixes multiple actions into one tool. It says 'Read financial data in Feegow' and lists many actions, but the specific action for this tool is 'list_current_accounts' as indicated only in the flattened action tag. This does not clearly state the tool's specific purpose and fails to distinguish it from sibling tools like feegow_financial_list_categories or feegow_financial_list_invoices.

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. With many sibling financial list tools, the agent has no basis to choose this one over others. The description does not mention any preconditions, context, or scenarios for use.

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

feegow_financial_list_invoicesC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_invoices]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe reading. The description adds 'Read financial data' but no further behavioral details beyond annotations.

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

Conciseness2/5

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

The description is cluttered with a long list of unrelated actions that are not part of this tool. It could be a single sentence: 'List invoices. Params are passed as JSON in the data field.' Current version wastes space.

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 simple 2-parameter read tool, the description should explain what list_invoices does (e.g., filters, pagination) and the meaning of parameters. It fails to provide this, leaving the agent underinformed.

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%. The description says 'All params are passed as JSON in the data field', which clarifies the data parameter but not the account parameter. No explanation of expected JSON structure or parameter purpose.

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 tool name 'feegow_financial_list_invoices' clearly indicates it lists invoices, but the description includes many other actions (list_suppliers, etc.) making the purpose ambiguous. The '[Flattened action: list_invoices]' helps, but the rest is confusing.

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 vs alternatives like feegow_financial_list_suppliers. The description does not differentiate it from siblings.

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

feegow_financial_list_private_tablesC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_private_tables]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds that 'All params are passed as JSON in the data field,' which is a useful behavioral hint about parameter encoding, but it does not explain the account parameter or return behavior. No contradiction with annotations.

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

Conciseness2/5

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

The description includes a lengthy list of unrelated actions, which is noise for this specific tool. The core information about list_private_tables is buried and the listing wastes space. A concise, focused description would be more 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?

There is no output schema and the description lacks return value details or behavior for a list operation. Parameter meanings are vague, and the tool's expected response format is unaddressed, leaving the agent without crucial 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?

Schema coverage is 0%, so the description must compensate. It says 'All params are passed as JSON in the data field,' implying the data string contains nested parameters, but it does not clarify the meaning or content of either the data or account parameters. This is insufficient for an agent to construct valid input.

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 starts with 'Read financial data in Feegow' which is generic, but the tool's name 'feegow_financial_list_private_tables' and the flattened action at the end 'list_private_tables' clarify its specific purpose. However, the inclusion of many other actions in the list causes ambiguity and detracts from the primary function.

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 sibling tools like list_suppliers or list_categories. The description lists many actions but does not differentiate this tool's role.

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

feegow_financial_list_salesC
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_sales]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, which align with the description's 'Read financial data'. The description adds no further behavioral context (e.g., what data is returned, pagination, authentication needs). Since annotations cover safety, the description meets minimum expectations but adds little value.

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

Conciseness2/5

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

The description includes a long list of unrelated actions (list_suppliers, search_supplier, etc.) that bloat the text and distract from the tool's actual purpose. The key information ('list_sales') is buried at the end. This is not concise; it could be trimmed to focus on the current 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?

Despite annotations providing safety context, the description lacks details on how to use the parameters (data JSON format, account meaning) and what the tool returns. For a simple read operation, an agent needs guidance on input structure and expected output, both missing. The description is insufficient for confident 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?

With schema description coverage at 0%, the description must compensate, but it only says 'All params are passed as JSON in the "data" field.' This hints at how to pass parameters but doesn't specify the required JSON structure for 'list_sales' (e.g., filters, date ranges). The 'account' parameter is unexplained. The added value is minimal.

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

Purpose2/5

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

The description starts with a generic 'Read financial data in Feegow' and lists many actions, not focusing on listing sales. Only the final line '[Flattened action: list_sales]' clarifies the tool's specific purpose, but it doesn't explain what 'list_sales' does (e.g., returns sales records). The purpose is vague and relies heavily on the tool name.

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 siblings like feegow_financial_list_invoices or feegow_financial_list_vouchers. There is no mention of prerequisites, filters, or contexts where list_sales is appropriate. The description fails to help an agent choose this tool over alternatives.

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

feegow_financial_list_suppliersD
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_suppliers]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already declare readOnlyHint and idempotentHint. Description adds that params are passed as JSON in 'data' but creates confusion by listing unrelated actions. Does not clarify behavior specific to list_suppliers.

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

Conciseness2/5

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

Description is long and includes a list of actions not relevant to this tool. Could be shortened to 'List suppliers. Pass parameters as JSON in data field.' Wastes space.

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?

No output schema, no description of return format or filters. Tool is a simple list but description provides no useful context beyond the name.

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 coverage is 0%, so description must compensate. Only says 'All params passed as JSON in data field' – no explanation of what params list_suppliers expects or what account is for. Adds no meaningful semantics.

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

Purpose2/5

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

Description opens with generic 'Read financial data' instead of stating specific purpose. Lists many actions including list_suppliers, then notes flattening to list_suppliers, but does not clearly state what this tool does. Vague and tautological.

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 list_suppliers vs sibling tools like search_supplier. Does not specify prerequisites or context.

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

feegow_financial_list_transfersD
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_transfers]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already indicate readOnlyHint=true. The description adds 'Read financial data,' which aligns but does not enhance transparency beyond annotations.

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

Conciseness2/5

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

The description is cluttered with a list of unrelated actions and a flattened action note. It is not front-loaded with the tool's main purpose.

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

Completeness1/5

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

With 2 parameters, no output schema, and the description adding almost no value, the tool is severely underdocumented for effective agent use.

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 description notes that 'All params are passed as JSON in the data field,' but schema coverage is 0% and no specifics about the data format or account parameter are given.

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

Purpose1/5

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

The description lists many actions and says 'Read financial data,' but fails to specifically state that this tool lists transfers. The purpose is unclear and misleading.

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

Usage Guidelines1/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. Sibling tools like feegow_financial_list_invoices are similar, but no differentiation is provided.

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

feegow_financial_list_vouchersD
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: list_vouchers]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already indicate readOnlyHint, destructiveHint, idempotentHint. The description adds minimal behavioral context beyond noting that params are passed as JSON in the 'data' field.

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

Conciseness1/5

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

The description is cluttered with an irrelevant list of other actions, making it verbose and unfocused. It should only describe the current tool.

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

Completeness1/5

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

For a tool listing vouchers with no output schema and many siblings, the description provides no information about return data, pagination, or what a voucher is.

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 coverage is 0%, and the description does not explain what the 'data' or 'account' parameters represent. Saying 'all params are passed as JSON in the data field' is insufficient.

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

Purpose2/5

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

The description lists many actions including list_vouchers but does not clearly state that this tool specifically lists vouchers. It says 'Read financial data' and includes a generic list, making the purpose ambiguous.

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 given on when to use this tool vs similar list tools like feegow_financial_list_invoices. The description lacks context for selection.

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

feegow_financial_search_supplierD
Read-onlyIdempotent
Inspect

Read financial data in Feegow. Actions:

  • list_suppliers, search_supplier, list_categories, list_cost_centers, list_transfers, list_invoices, list_current_accounts, find_invoice_nfse, list_credit_card_brands, list_vouchers, list_sales, list_private_tables, get_dmed. All params are passed as JSON in the "data" field.

[Flattened action: search_supplier]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already mark the tool as read-only and idempotent. The description adds that parameters are passed as JSON in the 'data' field, which is helpful, but it misrepresents the tool's scope by listing multiple unrelated actions, reducing transparency.

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

Conciseness2/5

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

The description includes a long list of actions that are not relevant to this tool, making it cluttered. The key information ('Flattened action: search_supplier') is buried at the end. A concise description focused on the single action is needed.

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?

The description fails to explain what 'search_supplier' does, what it searches by, or what it returns. With no output schema and low parameter documentation, the tool is poorly defined.

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 coverage is 0%. The description explains that all params are passed as JSON in the 'data' field, adding meaning beyond the schema. However, it does not specify the structure of that JSON for 'search_supplier', and the 'account' parameter is not explained.

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

Purpose2/5

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

The description is broad ('Read financial data in Feegow') and then lists many actions, but the tool name and flattened action indicate it is specifically for 'search_supplier'. This creates confusion about the tool's actual purpose and does not clearly state that it searches for suppliers.

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

Usage Guidelines1/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 'feegow_financial_list_suppliers'. The description lacks context on scenarios or exclusion criteria.

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

feegow_financial_write_associate_accountCInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: associate_account]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations already indicate this is a write operation (readOnlyHint false). The description adds minimal extra context about what it does (associate account) but does not disclose side effects, permissions, or reversibility.

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

Conciseness2/5

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

The description is verbose, listing many irrelevant actions for this specific tool. The essential information (associate_account) is buried at the end. Each sentence should earn its place, but most are noise.

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?

No output schema and 0% schema coverage. The description fails to explain the format of 'data' and 'account', what 'association' means, or the result of the operation. Incomplete for safe 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 coverage is 0%, so description must compensate. It mentions parameters 'account' and 'association', but the schema only has 'data' and 'account'. This mismatch could confuse agents about the required inputs.

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 tool name and last line specify associate_account, and the description states 'associate financial account to patient'. However, the description is a generic list of many write actions, diluting focus. Sibling differentiation is weak; the agent may confuse this with other financial write tools.

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 tells the agent to use feegow_financial_delete for destructive removals, providing a clear exclusion. But no guidance on when to use this specific associate_account tool versus other financial write tools like feegow_financial_write_pay_invoice.

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

feegow_financial_write_create_invoiceDInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: create_invoice]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations are minimal (non-read-only, non-destructive). Description mentions 'write financial operations' but does not disclose specifics like authentication requirements, side effects of each action, or rate limits. For a tool with many actions, the lack of detail reduces transparency.

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

Conciseness2/5

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

Description is a bullet list of actions but repeats information from the tool name and siblings. It is not concise for a single-purpose tool; it wastes space listing actions that have their own tools. The flattening note is confusing.

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

Completeness1/5

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

With 0% schema description coverage and no output schema, the description should provide complete guidance. It does not explain return values, how to invoke a specific action, or what the 'data' parameter expects. The tool is incomplete for effective use.

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 has 0% description coverage. Parameters 'data' and 'account' are not explained. Description lists actions but does not link them to parameters or specify required format or structure of 'data'. This fails to add meaning beyond the bare schema.

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

Purpose2/5

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

Description lists multiple actions (associate_account, update_nfse, etc.) rather than focusing on create_invoice as the tool name implies. The '[Flattened action: create_invoice]' note suggests it is supposed to be for create_invoice, but the description is overbroad and contradicts the intended purpose.

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?

Only provides guidance to use feegow_financial_delete for destructive removals. Does not explain when to use this aggregate tool over the many dedicated sibling tools for individual actions (e.g., feegow_financial_write_create_invoice_by_appt, feegow_financial_write_pay_invoice).

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

feegow_financial_write_create_invoice_by_apptCInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: create_invoice_by_appt]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, but description provides no additional behavioral context (e.g., side effects, idempotency). It merely repeats the action name without details like required permissions or effect on appointments.

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

Conciseness2/5

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

The description is verbose, listing all actions from a parent tool. The flattened action note at the end is helpful, but the bulk is unnecessary and obscures the specific functionality.

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 of a write operation with two undocumented parameters, the description lacks details on input format, return values, or prerequisites. It provides only a minimal purpose statement.

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 has 2 parameters (data, account) with 0% coverage. Description does not explain what 'data' or 'account' mean, leaving the agent without guidance on how to structure inputs.

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 explicitly states 'create invoice from appointment' for the flattened action, which clearly defines the tool's purpose. However, the initial generic line 'Write financial operations in Feegow.' and the long list of actions add noise, slightly reducing clarity.

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 versus alternatives like feegow_financial_write_create_invoice. The list of actions implies differentiation by action name, but there is no direct comparison or condition for use.

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

feegow_financial_write_create_voucherCInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: create_voucher]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations indicate non-read-only and non-destructive, but the description adds no behavioral details like side effects, authorization, or error handling. The note about destructive removals references another tool, not this one.

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

Conciseness2/5

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

The description is overly long, listing all possible actions despite being flattened to create_voucher. The key information is buried at the end, not front-loaded.

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?

Incomplete for a write operation: no details on request payload, expected behavior, or response format. Without output schema or parameter descriptions, the agent cannot invoke it correctly.

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 coverage, the description fails to explain what the 'data' and 'account' parameters represent. It only mentions actions but not the parameter structure or required format for create_voucher.

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

Purpose2/5

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

The description lists multiple actions with a note 'Flattened action: create_voucher', creating ambiguity about the tool's exact purpose. It appears to be a generic write tool but is presented for a single action, confusing the agent.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus the many sibling write tools (e.g., feegow_financial_write_pay_invoice) or when not to use it. The only alternative mentioned is for destructive removals, which is unrelated.

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

feegow_financial_write_pay_bookingDInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: pay_booking]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations indicate not read-only and not destructive, which aligns with 'write financial operations'. But the description adds no additional behavioral details such as idempotency, side effects, or error conditions, relying solely on the annotations.

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

Conciseness2/5

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

The description is bloated with a list of unrelated actions that are not part of this tool's function, making it verbose and confusing. The single relevant action (pay_booking) is buried, violating conciseness.

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

Completeness1/5

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

Given the mismatch between described parameters (6) and schema (2), and no output schema, the description is severely incomplete. The agent cannot determine input format, return structure, or how to use the tool correctly.

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 two parameters (data and account) with 0% coverage, and the description lists six different parameters for pay_booking. There is no explanation of how the schema maps to these parameters, leaving the agent unable to correctly invoke the tool.

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

Purpose2/5

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

The description lists multiple actions but the tool name and final note suggest it's for pay_booking only. This ambiguity obscures the tool's specific purpose, making it unclear whether it handles all listed actions or just one.

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 an exclusion for destructive actions, directing to another tool. However, it fails to clarify when to use this tool versus other financial write tools (e.g., feegow_financial_write_create_invoice) and the listed actions create confusion about scope.

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

feegow_financial_write_pay_invoiceDInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: pay_invoice]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description adds little beyond listing actions. It does not disclose side effects, permissions, or the nature of the pay_invoice operation (e.g., whether it changes invoice status irreversibly).

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

Conciseness2/5

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

The description is unnecessarily long, listing multiple irrelevant actions. The key information (pay_invoice) is buried. The ending note is confusing. It could be condensed to a single sentence focusing on the flattened action.

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?

For a mutation tool with 2 unnamed parameters and no output schema, the description fails to explain how to use the parameters, the expected format, or the result. Agents lack necessary context to invoke correctly.

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?

Input schema has two parameters (data, account) with 0% description coverage. The description only mentions parameters for pay_booking, not for pay_invoice, and provides no context on what 'data' or 'account' should contain. No meaning added beyond the schema.

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

Purpose2/5

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

The description lists multiple actions (associate_account, update_nfse, pay_invoice, etc.) under a tool named for paying an invoice, causing confusion. The final note '[Flattened action: pay_invoice]' suggests it should be specific, but the description does not clearly state the tool's sole purpose of paying an invoice.

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 only gives negative guidance ('For destructive removals use feegow_financial_delete'), but lacks explicit when-to-use or alternatives among the many sibling write tools. No context on triggers or prerequisites for using this tool over others.

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

feegow_financial_write_update_nfseDInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: update_nfse]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

While the description mentions specific parameters for pay_booking, it does not explain how the 'data' parameter encodes actions or what the expected behavior for each action is. The input schema contradicts the described parameters, undermining trust.

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 structured as a list of actions with brief details, which is clear for the actions themselves. However, the '[Flattened action: update_nfse]' note is extraneous and adds noise.

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 the lack of output schema and the complexity of actions, the description is severely incomplete. It does not explain how to specify actions via the 'data' parameter, handle errors, or interpret results. The proliferation of sibling tools suggests this composite is redundant.

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 zero description coverage, and the description's parameter hints (e.g., 'association' for associate_account) do not match the schema's parameters (only 'data' and 'account'). This mismatch creates confusion rather than clarity.

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

Purpose2/5

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

The description lists multiple actions under 'Write financial operations', but the tool name and the '[Flattened action: update_nfse]' note create confusion about its primary purpose. It fails to distinguish from sibling tools that cover the same individual actions, such as feegow_financial_write_create_invoice.

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

Usage Guidelines1/5

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

The description only provides exclusion for destructive removals, but does not clarify when to use this composite tool versus the existing specialized write tools. The presence of sibling tools with identical action names makes the guidance misleading.

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

feegow_financial_write_update_voucherDInspect

Write financial operations in Feegow. Actions:

  • associate_account: associate financial account to patient (account, association).

  • update_nfse: update NFS-e number on invoice (invoice_id, nfse_numero).

  • pay_invoice: pay an invoice.

  • create_invoice: create a new invoice.

  • create_invoice_by_appt: create invoice from appointment.

  • create_voucher: create a voucher.

  • update_voucher: update a voucher.

  • pay_booking: pay a booking (bookingId, amount, associationId, accountId, paymentMethod, paymentDate YYYY-MM-DD).

For destructive removals (remove_invoice, remove_payment, cancel_voucher) use feegow_financial_delete.

[Flattened action: update_voucher]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations provide minimal info (readOnlyHint false, destructiveHint false). The description does not add behavioral details like idempotency, side effects, or return behavior.

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

Conciseness2/5

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

The description is a list of actions with a confusing final line '[Flattened action: update_voucher]'. It is not concise and lacks clear structure for a single tool.

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

Completeness1/5

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

The description fails to explain how to select an action or provide required fields for each. With no output schema and low parameter coverage, the agent lacks essential information.

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?

Both parameters (data, account) have 0% schema description coverage. The description does not explain their meaning, format, or how they map to the listed actions.

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

Purpose2/5

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

The description lists multiple actions (associate_account, update_nfse, etc.) but the tool name and final line indicate it is for 'update_voucher'. The purpose is ambiguous and conflicts with sibling tools like feegow_financial_write_create_voucher.

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 vs. sibling write tools. Only a mention to use feegow_financial_delete for destructive removals, but no context for selecting among the listed actions.

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

feegow_insuranceB
Read-onlyIdempotent
Inspect

List all accepted insurance plans (convênios) and their sub-plans in Feegow. Optional filter by unidade_id.

Bulk support: accepts unidade_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
accountNo
unidade_idNo
unidade_idsNo
Behavior4/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds value by specifying that it lists all accepted plans, including sub-plans, and highlights batch execution via unidade_ids. No contradiction.

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 information. Front-loaded with purpose and action, then adds batch detail. Every sentence 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?

No output schema exists, and the description does not describe the response format (e.g., fields like plan name, sub-plans, ID). Also lacks error conditions or prerequisites. For a read tool with no schema guidance, this is insufficient.

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 schema description coverage at 0%, the description should explain all parameters. It covers unidade_id and unidade_ids but does not mention the 'account' parameter. This omission limits the agent's ability to use the tool correctly.

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 accepted insurance plans and sub-plans, using a specific verb-resource combination. It distinguishes from sibling tools like feegow_professional_insurance (professional-level) and feegow_procedure_insurance_list (procedure-level) by focusing on plans.

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 mentions optional filter by unidade_id and bulk support, but does not explicitly state when to use this tool over alternatives, nor provide any exclusion criteria. Usage is implied but not fully guided.

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

feegow_list_accountsB
Read-onlyIdempotent
Inspect

List Feegow API connections (clinics) linked to this install — id, label, name.

ParametersJSON Schema
NameRequiredDescriptionDefault
accountNo
Behavior3/5

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

Annotations already indicate readOnlyHint and idempotentHint; description adds return fields but doesn't disclose parameter filtering behavior or pagination.

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?

Single, short sentence with key information front-loaded; no wasted words.

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?

Adequate for a simple listing tool but missing parameter semantics and return structure (e.g., array or object). Not fully complete given no output schema.

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 sole optional parameter 'account' has no description in schema, and the description provides no explanation of its purpose or effect. Schema coverage is 0%, and 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?

Clearly states 'List Feegow API connections (clinics) linked to this install' with specific fields id, label, name. Distinguishes from sibling tools that operate on patients, appointments, etc.

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?

Implied usage context (listing accounts before using other feegow tools) but no explicit when-to-use or when-not-to-use guidance or alternatives.

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

feegow_lockB
Read-onlyIdempotent
Inspect

List schedule locks/blocks in Feegow. Filter by bloqueio_id, date_start, date_end (DD-MM-YYYY), profissional_id, unidade_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description adds limited behavioral context. It does provide a date format hint (DD-MM-YYYY), but no details on pagination, rate limits, or return format.

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?

Single, concise sentence that efficiently conveys the tool's action and key filter options. No unnecessary words.

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 complexity, the description is incomplete due to the mismatch between listed filters and actual schema. No output schema exists, and the return structure is unmentioned.

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 description lists filter parameters (bloqueio_id, date_start, etc.) that are not present in the input schema (which has 'data' and 'account'). It fails to explain the actual schema parameters and creates confusion with the mismatch.

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 clearly states the tool lists schedule locks/blocks in Feegow and lists intended filter parameters. However, the input schema does not contain those parameters, which could confuse an agent. Purpose is specific and distinct from sibling tools.

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

Usage 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 prerequisites or exclusions. The description only states what it does without context.

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

feegow_medical_report_get_fileC
Read-onlyIdempotent
Inspect

Read medical/lab reports (laudos) in Feegow. Actions:

  • list: list reports by date range. Requires start_date, end_date (YYYY-MM-DD), patient_id.

  • get_file: get download URL for report file (valid 20 min). Requires lab_report_id.

  • search: find report by agendamento_id. Optional: procedimento_id. For creating a report use feegow_medical_report_write.

[Flattened action: get_file]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior4/5

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

Annotations (readOnlyHint, idempotentHint, destructiveHint) indicate safe read-only operation. Description adds that the download URL is valid for 20 minutes, which is useful behavioral context beyond annotations.

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

Conciseness2/5

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

The description is not concise; it lists three actions (list, get_file, search) and a cross-reference for creation, when only get_file is relevant. The flattened action note is helpful but the extra information distracts and makes the description longer than necessary.

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 having annotations, the description lacks sufficient detail about parameters and return values. No output schema exists, so the description should explain what the tool returns, but it only mentions a download URL with expiry. Missing parameter semantics reduce completeness.

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 coverage, the description must explain parameters. It mentions 'lab_report_id' for get_file, but the schema has only undocumented 'data' and 'account' parameters. The description does not clarify what these parameters represent or how to use them.

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 is for reading medical/lab reports and specifies the get_file action (get download URL). However, it also includes unrelated actions (list, search) for the same tool, causing ambiguity about the tool's exact purpose.

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 versus siblings like feegow_medical_report_list or feegow_medical_report_search. The description mentions 'For creating a report use feegow_medical_report_write', but does not differentiate between get_file and the other read actions.

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

feegow_medical_report_listB
Read-onlyIdempotent
Inspect

Read medical/lab reports (laudos) in Feegow. Actions:

  • list: list reports by date range. Requires start_date, end_date (YYYY-MM-DD), patient_id.

  • get_file: get download URL for report file (valid 20 min). Requires lab_report_id.

  • search: find report by agendamento_id. Optional: procedimento_id. For creating a report use feegow_medical_report_write.

[Flattened action: list]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds that it is a read operation and mentions the 20-minute validity for get_file, but that pertains to a different action. For the actual list action, no additional behavioral details (e.g., pagination, limits) are given.

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 moderately sized but includes redundant action descriptions and a note about flattening. It front-loads the purpose but could be streamlined to focus only on the list action, as indicated by 'Flattened action: list'.

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

Completeness2/5

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

The tool has a minimal input schema (2 unannotated parameters) and no output schema. The description fails to explain the actual parameters (data, account) and does not cover return values or behavior. It describes actions that are not fully supported, leaving the tool's usage unclear.

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 two unspecified parameters (data, account) with 0% schema description coverage. The description lists parameters for the actions (start_date, end_date, patient_id for list) that do not match the actual schema. Thus, the description provides no meaningful information about the tool's parameters.

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

Purpose4/5

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

The description states 'Read medical/lab reports (laudos) in Feegow' providing a clear verb and resource. It distinguishes from the creation tool by referencing feegow_medical_report_write. However, listing multiple actions (list, get_file, search) with a note 'Flattened action: list' creates ambiguity about the tool's actual scope.

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?

Explicitly states 'For creating a report use feegow_medical_report_write', indicating when not to use this tool. Also implies that get_file and search have dedicated sibling tools (feegow_medical_report_get_file, feegow_medical_report_search), providing clear alternatives.

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

feegow_medical_report_writeCInspect

Register a new medical/lab report in Feegow. Requires agendamento_id, laudo_base64. Optional: profissional_laudador, procedimento_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations show destructiveHint=false and readOnlyHint=false. The description only says 'register' without disclosing side effects, permission requirements, or behavior such as whether it overwrites existing reports or requires specific authentication. No contradictions with annotations, but minimal added context.

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 short (one sentence plus parameter list) and front-loaded with the action. It is efficient but could benefit from a clearer structure separating required from optional, and it omits crucial details.

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 tool has no output schema, 0% schema coverage, and no nested objects, the description is insufficient. It does not explain what the 'data' parameter should look like, what the output is, or any behavioral context (e.g., idempotency, error cases). The provided parameter hints do not cover all schema parameters.

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 two parameters (data, account) with 0% description coverage. The description mentions fields (agendamento_id, laudo_base64) that presumably go inside the 'data' string, but does not explain the format or the 'account' parameter. This adds some meaning but is incomplete and potentially confusing as the described fields are not schema parameters.

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

Purpose4/5

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

The description states 'Register a new medical/lab report in Feegow' which clearly indicates the action (register) and resource (report). It distinguishes from sibling tools like feegow_medical_report_list (listing) and feegow_medical_report_search (searching). However, the mismatch between described parameters (agendamento_id, laudo_base64) and schema parameters (data, account) slightly reduces clarity.

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 lists required and optional parameters but provides no guidance on when to use this tool versus alternatives, nor any exclusions or context like prerequisites or post-conditions. There is no mention of 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.

feegow_patient_getA
Read-onlyIdempotent
Inspect

Read patients in Feegow Clinic. Actions:

  • list: paginated patient list (offset/limit). Filter by telefone, cpf, origem_id, alterado_em, data_aniversario.

  • get: full detail by paciente_id (includes address, insurance, documents).

  • search_cpf: find patient by CPF (11 digits, numbers only). Returns name, birth date, gender, address, phones, emails, documents, insurance info.

[Flattened action: get]

Bulk support: accepts paciente_ids, origem_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
cpfNo
limitNo
photoNo
offsetNo
accountNo
telefoneNo
origem_idNo
origem_idsNo
alterado_emNo
paciente_idNo
paciente_idsNo
programa_saudeNo
data_aniversarioNo
Behavior4/5

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

Annotations indicate readOnlyHint=true and destructiveHint=false, and the description aligns by stating 'Read patients'. It adds behavioral detail on return fields and bulk support, though no contradictions.

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 well-organized with a bullet-like list of actions. It is somewhat verbose due to the 'Flattened action: get' note, but remains readable and front-loaded with key details.

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

Completeness4/5

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

Given 13 parameters and no output schema, the description covers main use cases and return information, but falls short on explaining all parameters. It is largely complete for an agent to use effectively.

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?

With 0% schema coverage, the description explains 10 of 13 parameters (offset, limit, telefone, cpf, origem_id, alterado_em, data_aniversario, paciente_id, paciente_ids, origem_ids) but misses photo, account, and programa_saude. This partial coverage earns a 3.

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 'Read patients' and lists three distinct actions (list, get, search_cpf) with specific behaviors. It differentiates from sibling tools like feegow_patient_list and feegow_patient_search_cpf by bundling them into one tool.

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

Usage Guidelines3/5

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

The description provides sub-action guidance but does not explicitly contrast with siblings like feegow_patient_write_create or feegow_patient_list. It lacks when-not-to-use examples, leaving the agent to infer from context.

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

feegow_patient_listB
Read-onlyIdempotent
Inspect

Read patients in Feegow Clinic. Actions:

  • list: paginated patient list (offset/limit). Filter by telefone, cpf, origem_id, alterado_em, data_aniversario.

  • get: full detail by paciente_id (includes address, insurance, documents).

  • search_cpf: find patient by CPF (11 digits, numbers only). Returns name, birth date, gender, address, phones, emails, documents, insurance info.

[Flattened action: list]

Bulk support: accepts paciente_ids, origem_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
cpfNo
limitNo
photoNo
offsetNo
accountNo
telefoneNo
origem_idNo
origem_idsNo
alterado_emNo
paciente_idNo
paciente_idsNo
programa_saudeNo
data_aniversarioNo
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds that it reads patients, supports bulk arrays, and returns specific fields. Does not contradict annotations, but adds only moderate value beyond them.

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?

Structured with bullet points for actions, but includes redundant mention of return fields twice. Some extra verbiage like '[Flattened action: list]' may confuse. Could be trimmed without losing meaning.

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?

No output schema, 13 params, no param descriptions in schema. Description explains the three modes and bulk, but lacks guidance on parameter conflicts (e.g., using paciente_id and cpf together) and error behavior. Adequate but not thorough.

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 coverage 0%, so description must compensate. It explains some parameters: offset/limit for pagination, filter fields (telefone, cpf, etc.), CPF format, bulk arrays. However, it omits photo, account, programa_saude. Partially covers the 13 parameters, enough to guide basic usage.

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?

Describes multiple read actions (list, get, search_cpf) clearly with specific verb and resource. However, does not differentiate from sibling tools like feegow_patient_get and feegow_patient_search_cpf, which likely serve the same single operations. Sibling differentiation is missing.

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?

Implied usage: use list for paginated queries, get for full detail, search_cpf for CPF lookup. But no explicit guidelines on when to use this combined tool versus separate sibling tools. No exclusions or alternatives mentioned.

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

feegow_patient_search_cpfC
Read-onlyIdempotent
Inspect

Read patients in Feegow Clinic. Actions:

  • list: paginated patient list (offset/limit). Filter by telefone, cpf, origem_id, alterado_em, data_aniversario.

  • get: full detail by paciente_id (includes address, insurance, documents).

  • search_cpf: find patient by CPF (11 digits, numbers only). Returns name, birth date, gender, address, phones, emails, documents, insurance info.

[Flattened action: search_cpf]

Bulk support: accepts paciente_ids, origem_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
cpfNo
limitNo
photoNo
offsetNo
accountNo
telefoneNo
origem_idNo
origem_idsNo
alterado_emNo
paciente_idNo
paciente_idsNo
programa_saudeNo
data_aniversarioNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is clear. The description adds context about actions (list, get, search_cpf), return fields, and bulk support, which provides functional behavior beyond annotations.

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 moderately concise but lacks clear structure. It starts with a general statement, lists actions, return fields, a 'Flattened action' note, and then bulk support. Some redundancy and lack of hierarchical organization.

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 13 parameters and no output schema, the description is adequate but not complete. It lists return fields and conditions for search_cpf (11 digits, numbers only), but does not explain behavior of pagination (offset/limit), parameter combinations, or error scenarios.

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 must compensate, but it only partially covers the 13 parameters. It mentions filters like telefone, cpf, origem_id, etc., but omits limit, offset, photo, account, and programa_saude. The meaning of parameters is not fully explained.

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 'Read patients in Feegow Clinic' and lists actions (list, get, search_cpf), but the tool name emphasizes search_cpf. It does not clearly distinguish from sibling tools like feegow_patient_get and feegow_patient_list, and the purpose is muddled by including multiple actions under one tool.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives (e.g., feegow_patient_get, feegow_patient_list). The description implies usage for patient reads but does not specify criteria or exclusions.

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

feegow_patient_support_exam_requestsC
Read-onlyIdempotent
Inspect

Supporting patient data reads in Feegow. Actions:

  • list_sources: list all patient origins (origem).

  • list_dependents: list dependents for a patient (requires paciente_id).

  • list_privates: list private pricing tables.

  • health_programs: list health programs (filter by program_id, nome_programa, convenio_id, status, tipo_programa_id, data_start, data_end).

  • exam_requests: list exam requests (requires paciente_id, data_inicio, data_fim, tipo_pedido: 1=Standard, 2=SADT).

For uploading a file to a patient record use feegow_patient_support_write.

[Flattened action: exam_requests]

Bulk support: accepts paciente_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
paciente_idNo
paciente_idsNo
Behavior3/5

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

The description aligns with annotations (readOnlyHint, idempotentHint, destructiveHint) by stating 'reads'. It adds context about batch execution with paciente_ids. However, the behavior of multiple actions within one tool is not fully explained, nor how they are invoked.

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

Conciseness2/5

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

The description is verbose, listing multiple actions in a bullet format without clear prioritization. The critical information about bulk support and flattened action is buried at the end. It could be significantly condensed.

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

Completeness1/5

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

With no output schema and low coverage, the description should compensate, but it doesn't. It omits return value details, parameter explanations, and how the tool differentiates from siblings like feegow_patient_list. The multi-action nature is poorly handled.

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 coverage is 0% – the description does not explain any of the actual parameters (data, account, paciente_id, paciente_ids). Worse, it mentions parameters not in the schema (data_inicio, data_fim, tipo_pedido) without linking them to schema fields. This is misleading and fails to add value.

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

Purpose2/5

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

The tool name suggests exam requests, but the description lists multiple other actions (list_sources, list_dependents, etc.). The primary purpose is diluted, and the 'flattened action' concept adds confusion. The description starts with 'Supporting patient data reads' which is too vague.

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?

Only one alternative is mentioned ('For uploading a file... use feegow_patient_support_write'). No guidance on when to use this tool vs other patient list/search tools, or how to choose among the multiple sub-actions listed.

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

feegow_patient_support_health_programsC
Read-onlyIdempotent
Inspect

Supporting patient data reads in Feegow. Actions:

  • list_sources: list all patient origins (origem).

  • list_dependents: list dependents for a patient (requires paciente_id).

  • list_privates: list private pricing tables.

  • health_programs: list health programs (filter by program_id, nome_programa, convenio_id, status, tipo_programa_id, data_start, data_end).

  • exam_requests: list exam requests (requires paciente_id, data_inicio, data_fim, tipo_pedido: 1=Standard, 2=SADT).

For uploading a file to a patient record use feegow_patient_support_write.

[Flattened action: health_programs]

Bulk support: accepts paciente_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
paciente_idNo
paciente_idsNo
Behavior4/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds 'Bulk support: accepts paciente_ids for batched execution' and implies the tool is for reads. However, the multi-action listing conflicts with the tool's actual behavior (likely only health_programs). Despite that, the additional context is helpful.

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

Conciseness2/5

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

The description is verbose and attempts to enumerate multiple sub-actions, making it longer than needed. The structure is messy with a list of actions and a flat declaration. It could be much shorter and clearer by focusing solely on the health_programs action.

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 with 0% schema coverage, no output schema, and a complex usage pattern, the description is severely incomplete. It fails to explain the actual input parameters or return values. The mention of non-existent filter parameters adds to the incompleteness.

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%, so the description must explain parameters. It describes filter parameters for health_programs (program_id, nome_programa, etc.) but these do not match the schema, which only has 'data', 'account', 'paciente_id', and 'paciente_ids'. This mismatch confuses meaning. The bulk support mention is the only alignment.

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

Purpose2/5

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

The description starts with 'Supporting patient data reads in Feegow' and lists multiple actions (list_sources, list_dependents, list_privates, health_programs, exam_requests), but then states '[Flattened action: health_programs]' and the tool name specifically mentions health_programs. This creates confusion about whether the tool performs all those actions or just health_programs. The purpose is vague and not clearly defined.

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?

Only one alternative is mentioned: 'For uploading a file to a patient record use feegow_patient_support_write.' There is no guidance on when to use this tool versus its immediate siblings like feegow_patient_support_list_sources, which the description misleadingly includes as part of this tool. No explicit when-to-use or when-not-to-use criteria.

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

feegow_patient_support_list_dependentsC
Read-onlyIdempotent
Inspect

Supporting patient data reads in Feegow. Actions:

  • list_sources: list all patient origins (origem).

  • list_dependents: list dependents for a patient (requires paciente_id).

  • list_privates: list private pricing tables.

  • health_programs: list health programs (filter by program_id, nome_programa, convenio_id, status, tipo_programa_id, data_start, data_end).

  • exam_requests: list exam requests (requires paciente_id, data_inicio, data_fim, tipo_pedido: 1=Standard, 2=SADT).

For uploading a file to a patient record use feegow_patient_support_write.

[Flattened action: list_dependents]

Bulk support: accepts paciente_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
paciente_idNo
paciente_idsNo
Behavior3/5

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

Annotations already indicate readOnlyHint and idempotentHint. The description adds bulk support via paciente_ids, but no further behavioral traits. Consistent with annotations.

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

Conciseness2/5

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

The description is overly long due to listing multiple actions, many of which are irrelevant to this tool. It does not front-load the core purpose or structure information efficiently.

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 (multiple actions flattened) and no output schema, the description should clarify which action is active. It fails to do so and lacks full parameter documentation, leaving gaps in understanding.

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 parameter coverage is 0%. The description explains paciente_id and paciente_ids succinctly but does not address the 'data' and 'account' parameters. It also contradicts the schema by stating paciente_id is required when the schema lists no required parameters.

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 'list dependents for a patient' but is buried among a list of other actions, making the primary purpose unclear. The flattened action label helps, but the clutter reduces clarity.

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?

It mentions an alternative tool for file uploads (feegow_patient_support_write) and notes that paciente_id is required for list_dependents. However, it does not differentiate from sibling tools that also list patient-related data.

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

feegow_patient_support_list_privatesC
Read-onlyIdempotent
Inspect

Supporting patient data reads in Feegow. Actions:

  • list_sources: list all patient origins (origem).

  • list_dependents: list dependents for a patient (requires paciente_id).

  • list_privates: list private pricing tables.

  • health_programs: list health programs (filter by program_id, nome_programa, convenio_id, status, tipo_programa_id, data_start, data_end).

  • exam_requests: list exam requests (requires paciente_id, data_inicio, data_fim, tipo_pedido: 1=Standard, 2=SADT).

For uploading a file to a patient record use feegow_patient_support_write.

[Flattened action: list_privates]

Bulk support: accepts paciente_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
paciente_idNo
paciente_idsNo
Behavior2/5

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

Annotations already provide readOnlyHint and idempotentHint. The description adds bulk execution support (paciente_ids), but the listing of multiple actions contradicts the flattened action, reducing transparency. No mention of authentication or rate limits.

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

Conciseness2/5

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

The description is verbose and includes irrelevant actions. A concise version would focus solely on listing private pricing tables and bulk execution. The structure is cluttered.

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 4 parameters, no output schema, and 0% schema coverage, the description is incomplete. It adds bulk execution context but fails to explain all parameters or return values, leaving the agent underinformed.

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 paciente_ids for bulk support, leaving data, account, and paciente_id undocumented. The parameter purpose is unclear, especially since list_privates likely doesn't require paciente_id.

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 'list_privates: list private pricing tables,' which is clear. However, the inclusion of other actions (list_sources, list_dependents, etc.) muddles the purpose and may confuse an AI agent about which action this tool performs.

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 versus siblings like feegow_financial_list_private_tables or other patient support list tools. The only alternative mentioned is feegow_patient_support_write for file uploads, which is not directly comparable.

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

feegow_patient_support_list_sourcesC
Read-onlyIdempotent
Inspect

Supporting patient data reads in Feegow. Actions:

  • list_sources: list all patient origins (origem).

  • list_dependents: list dependents for a patient (requires paciente_id).

  • list_privates: list private pricing tables.

  • health_programs: list health programs (filter by program_id, nome_programa, convenio_id, status, tipo_programa_id, data_start, data_end).

  • exam_requests: list exam requests (requires paciente_id, data_inicio, data_fim, tipo_pedido: 1=Standard, 2=SADT).

For uploading a file to a patient record use feegow_patient_support_write.

[Flattened action: list_sources]

Bulk support: accepts paciente_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
paciente_idNo
paciente_idsNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, establishing a safe, read-only profile. The description adds that the tool supports batch execution via paciente_ids, providing extra behavioral context. However, the multi-action listing may mislead about the tool's actual behavior.

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

Conciseness2/5

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

The description is verbose and includes a list of actions that appear to belong to sibling tools, leading to confusion. The 'Flattened action' note suggests the tool is only for list_sources, but the extraneous list is unnecessary and wastes space.

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 having annotations and no output schema, the description fails to provide a complete picture. It does not clearly define the tool's scope, does not describe all parameters, and includes irrelevant sub-actions that mislead about the tool's functionality.

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?

Input schema has 4 parameters (data, account, paciente_id, paciente_ids) with 0% schema description coverage. The description indirectly mentions paciente_id and paciente_ids in sub-action descriptions but does not explain data or account. This leaves critical parameters undocumented.

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

Purpose2/5

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

The description lists multiple distinct actions (list_sources, list_dependents, list_privates, etc.) without clarifying that the tool is actually only for list_sources (as per 'Flattened action: list_sources'). This conflates functionalities, obscuring the tool's core purpose. The name 'list_sources' suggests listing patient origins, but the description dilutes that.

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 mentions an alternative tool (feegow_patient_support_write) for uploading, but it does not differentiate this tool from other sibling list tools like feegow_patient_support_list_dependents, which are listed as sub-actions. This creates confusion about when to use this tool versus the dedicated sibling tools.

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

feegow_patient_support_writeBInspect

Upload a base64 file to a patient record in Feegow. Requires data JSON with paciente_id or cpf+nascimento, base64_file, arquivo_descricao.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, implying a non-destructive write operation. The description adds that this is a file upload, but lacks details on side effects (e.g., overwrite behavior), authentication needs, or rate limits. The transparency is adequate but minimal beyond annotations.

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 covering action and input requirement. It is front-loaded with the primary purpose. No extraneous information.

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 0% schema coverage and no output schema, the description lacks detail on the account parameter, expected response, or error handling. An agent needs more context to reliably invoke this tool, especially since the input schema is generic and the description does not cover all parameters.

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 partially does by specifying that 'data' must be a JSON containing 'paciente_id or cpf+nascimento, base64_file, arquivo_descricao'. However, it omits any explanation of the 'account' parameter, leaving ambiguity. The description adds value but is incomplete.

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: 'Upload a base64 file to a patient record in Feegow.' The verb 'upload' combined with 'file to a patient record' distinguishes it from other patient support tools that list or manage dependents, health programs, etc. Despite the null title, the purpose is unambiguous.

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 like feegow_patient_write_create or other patient support tools. It only states the required input format without any context about prerequisites, scenarios, or exclusions.

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

feegow_patient_write_createCInspect

Create or edit patients in Feegow Clinic. Actions:

  • create: requires nome_completo and cpf (11 digits). Optional: data_nascimento (YYYY-MM-DD), genero (M/F), origem_id, celular, telefone, email, endereco, cidade, estado, cep, observacao, convenio_id, plano_id, matricula, titular, validade, tabela_id, nome_social, peso, altura.

  • edit: requires paciente_id. All other fields optional — only pass what you want to change.

[Flattened action: create]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations (readOnlyHint=false, destructiveHint=false) indicate mutation but not destructive. Description adds field details but does not disclose side effects like duplicate handling, concurrency behavior, or specific auth requirements beyond the tool name itself.

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?

Description is structured with bullet points for create and edit actions, but the '[Flattened action: create]' note adds clutter. Could be more concise by removing redundancies and focusing on the JSON structure of data.

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 (two actions, many fields) and lack of output schema, description is incomplete. It does not explain what the tool returns, error scenarios, or how to handle the data parameter format. Significant gaps for an agent to use 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?

Input schema has only two string parameters (data, account), but description lists many fields (nome_completo, cpf, etc.) without indicating that data should be a JSON string containing those fields. With 0% schema coverage, description fails to explain the actual parameter structure, causing risk of misuse.

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 clearly states 'Create or edit patients' and specifies required fields for each action. Distinguishes from patient read tools like feegow_patient_get, feegow_patient_list, and feegow_patient_search_cpf. However, the note '[Flattened action: create]' introduces ambiguity about whether it also edits.

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 vs alternatives like feegow_patient_write_edit. Does not specify whether to prefer this for both create and edit or only create. Lacks explicit when-to-use or when-not-to-use conditions.

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

feegow_patient_write_editCInspect

Create or edit patients in Feegow Clinic. Actions:

  • create: requires nome_completo and cpf (11 digits). Optional: data_nascimento (YYYY-MM-DD), genero (M/F), origem_id, celular, telefone, email, endereco, cidade, estado, cep, observacao, convenio_id, plano_id, matricula, titular, validade, tabela_id, nome_social, peso, altura.

  • edit: requires paciente_id. All other fields optional — only pass what you want to change.

[Flattened action: edit]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations confirm it's a write operation, but the description adds minimal behavioral context. It fails to clarify that the input schema does not match the described fields, and it does not disclose success/error behavior, idempotency, or side effects. The misleading note at the end undermines transparency.

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 relatively concise with a list format, but the final line '[Flattened action: edit]' is unnecessary and confusing. It could be restructured to clearly separate create and edit actions without redundancy.

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

Completeness2/5

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

Given the complexity of patient creation/editing and the lack of output schema, the description is incomplete. It does not explain how the 'data' parameter should be structured (e.g., as a JSON object), nor does it cover return values or error conditions. The separate feegow_patient_write_create tool suggests this tool is redundant or specialized, but no context is provided.

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 2 parameters (data, account) with 0% description coverage. The description completely ignores these parameters and instead describes client fields that are not present in the schema. This misaligns the description with the actual tool interface, providing no useful semantic meaning to the parameters.

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 'Create or edit patients' which is a clear verb+resource, but it does not differentiate from the sibling feegow_patient_write_create, creating confusion. The note '[Flattened action: edit]' contradicts the initial statement, reducing clarity.

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 instead of feegow_patient_write_create or other patient tools. The description lists required fields for create and edit but does not provide context on when each action is appropriate or when to avoid this tool.

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

feegow_procedure_bundlesC
Read-onlyIdempotent
Inspect

Read procedures in Feegow. Values in centavos. Actions:

  • list: list procedures + values. Filter by tipo_procedimento, procedimento_id, unidade_id, paciente_id, especialidade_id, profissional_id, tabela_id, nome_procedimento.

  • types: list procedure types (Cirurgia, Consulta, Exame, Procedimento, Retorno).

  • insurance_list: list insurance plans that accept a procedure (by procedimentoID or nomeProcedimento).

  • franchise: list imported franchise procedures (requires unidade_id).

  • bundles: list procedure bundles/packages (optional procedimento_id, pacote_id).

  • groups: list procedure groups (optional grupo_id).

[Flattened action: bundles]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the tool is clearly a read-only operation. The description adds that values are in centavos and lists the available actions, which provides some behavioral context. However, it does not explain the 'flattened action: bundles' concept or any side effects beyond what annotations cover.

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

Conciseness2/5

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

The description is long and includes a bullet list of actions, each with different filter parameters. It is not concise, and the ending '[Flattened action: bundles]' adds confusion. The structure could be improved by focusing on the bundle action and noting that other actions are available via sibling tools.

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 that the tool has 2 parameters with 0% schema coverage and no output schema, the description should compensate by clearly explaining how to invoke the desired action and what each parameter does. It fails to do so, leaving the agent with insufficient information to correctly invoke the tool.

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 input schema has two parameters (data, account) with 0% schema description coverage. The description lists many filter fields for the list action (e.g., tipo_procedimento, procedimento_id) but does not map them to the schema parameters. It is unclear how these filters are specified (likely via the 'data' parameter as a JSON string), but the description fails to explain this.

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

Purpose2/5

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

The description states 'Read procedures in Feegow.' but then lists multiple actions (list, types, insurance_list, franchise, bundles, groups) with no clear primary purpose. The tool name 'feegow_procedure_bundles' suggests it is about bundles, yet the description includes actions that correspond to sibling tools (e.g., feegow_procedure_types, feegow_procedure_list), causing confusion and lack of focus.

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. the many sibling tools that cover specific actions (like feegow_procedure_list, feegow_procedure_types). The description does not mention that the other tools should be used for individual actions, nor does it provide context for selecting the appropriate action within this tool.

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

feegow_procedure_franchiseC
Read-onlyIdempotent
Inspect

Read procedures in Feegow. Values in centavos. Actions:

  • list: list procedures + values. Filter by tipo_procedimento, procedimento_id, unidade_id, paciente_id, especialidade_id, profissional_id, tabela_id, nome_procedimento.

  • types: list procedure types (Cirurgia, Consulta, Exame, Procedimento, Retorno).

  • insurance_list: list insurance plans that accept a procedure (by procedimentoID or nomeProcedimento).

  • franchise: list imported franchise procedures (requires unidade_id).

  • bundles: list procedure bundles/packages (optional procedimento_id, pacote_id).

  • groups: list procedure groups (optional grupo_id).

[Flattened action: franchise]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already indicate read-only, idempotent, not destructive. The description adds 'Read procedures' and mentions the franchise action requires unidade_id, which is useful. However, the description's listing of other actions that are not available introduces potential confusion.

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

Conciseness2/5

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

The description is overly long and includes multiple action descriptions that are not relevant to this tool. The key information about the franchise action is buried, and the '[Flattened action: franchise]' note is helpful but not enough to justify the length.

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?

There is no output schema, and the description does not explain what the tool returns or the format of the response. The parameter semantics are missing, and the context for using this tool versus siblings is insufficient.

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 two parameters (data, account) with 0% schema description coverage, and the description provides no explanation of what these parameters mean or how to use them. The mention of 'unidade_id' does not correspond to any defined parameter.

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 mentions 'list imported franchise procedures' which clarifies the main purpose, but it also lists several other actions that belong to sibling tools, creating confusion. The flattened action note helps, but overall the purpose is muddled.

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 states 'franchise: list imported franchise procedures (requires unidade_id)' which gives some usage context, but it does not explicitly differentiate from sibling tools like feegow_procedure_list or provide when-not-to-use guidance.

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

feegow_procedure_groupsB
Read-onlyIdempotent
Inspect

Read procedures in Feegow. Values in centavos. Actions:

  • list: list procedures + values. Filter by tipo_procedimento, procedimento_id, unidade_id, paciente_id, especialidade_id, profissional_id, tabela_id, nome_procedimento.

  • types: list procedure types (Cirurgia, Consulta, Exame, Procedimento, Retorno).

  • insurance_list: list insurance plans that accept a procedure (by procedimentoID or nomeProcedimento).

  • franchise: list imported franchise procedures (requires unidade_id).

  • bundles: list procedure bundles/packages (optional procedimento_id, pacote_id).

  • groups: list procedure groups (optional grupo_id).

[Flattened action: groups]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds 'Read procedures in Feegow. Values in centavos.' but no further behavioral traits. Adequate but relies heavily on annotations.

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

Conciseness2/5

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

The description is verbose, listing actions that belong to other tools (e.g., types, insurance_list, franchise) despite the flattened action note indicating it's only for groups. This wastes space and could confuse the agent.

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

Completeness2/5

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

For a tool with 0% schema coverage and no output schema, the description does not explain the input parameters or return format. It omits critical details about how to use the tool effectively.

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%, and the description does not explain the two schema parameters ('data' and 'account'). Instead, it lists filter parameters not in the schema, which is misleading. The description fails to add meaning to the actual 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 'list procedure groups (optional grupo_id)' and the flattened action note confirms the tool is specifically for groups. It distinguishes from sibling tools like feegow_procedure_list and feegow_procedure_types.

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

Usage Guidelines4/5

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

The description provides context for when to use the 'groups' action and lists filter parameters. However, it does not explicitly exclude when not to use it versus alternatives like feegow_procedure_bundles.

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

feegow_procedure_insurance_listC
Read-onlyIdempotent
Inspect

Read procedures in Feegow. Values in centavos. Actions:

  • list: list procedures + values. Filter by tipo_procedimento, procedimento_id, unidade_id, paciente_id, especialidade_id, profissional_id, tabela_id, nome_procedimento.

  • types: list procedure types (Cirurgia, Consulta, Exame, Procedimento, Retorno).

  • insurance_list: list insurance plans that accept a procedure (by procedimentoID or nomeProcedimento).

  • franchise: list imported franchise procedures (requires unidade_id).

  • bundles: list procedure bundles/packages (optional procedimento_id, pacote_id).

  • groups: list procedure groups (optional grupo_id).

[Flattened action: insurance_list]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already indicate readOnly and non-destructive behavior. The description adds the detail 'Values in centavos,' which is useful but does not go beyond what annotations imply.

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

Conciseness2/5

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

The description is verbose, listing many actions irrelevant to this specific tool. The '[Flattened action: insurance_list]' note is helpful but the rest should be omitted for 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 no output schema and undocumented parameters, the description fails to explain how to provide input (filters) or what the output contains beyond listing insurance plans. Essential context is missing.

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

Parameters1/5

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

The input schema has 0% description coverage and the description does not mention the two parameters (data, account). Filter options like procedimentoID are mentioned but not mapped to schema, leaving parameter meaning entirely unclear.

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 explicitly states 'insurance_list: list insurance plans that accept a procedure' and the tool name matches, clearly indicating the purpose. However, the description is cluttered with other unrelated actions, slightly reducing clarity.

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 the other listed actions or sibling tools. The description does not differentiate usage context or exclusion criteria.

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

feegow_procedure_listC
Read-onlyIdempotent
Inspect

Read procedures in Feegow. Values in centavos. Actions:

  • list: list procedures + values. Filter by tipo_procedimento, procedimento_id, unidade_id, paciente_id, especialidade_id, profissional_id, tabela_id, nome_procedimento.

  • types: list procedure types (Cirurgia, Consulta, Exame, Procedimento, Retorno).

  • insurance_list: list insurance plans that accept a procedure (by procedimentoID or nomeProcedimento).

  • franchise: list imported franchise procedures (requires unidade_id).

  • bundles: list procedure bundles/packages (optional procedimento_id, pacote_id).

  • groups: list procedure groups (optional grupo_id).

[Flattened action: list]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations declare readOnlyHint=true, destructiveHint=false, which align with the 'Read' in the description. However, the description adds no behavioral details beyond that. It does not explain what the 'data' and 'account' parameters do, nor the behavior of the different actions (e.g., whether they are all read-only). The mention of multiple actions is misleading given 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.

Conciseness2/5

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

The description is not concise. It lists multiple actions, but the tool seems to only support one action ('Flattened action: list'). The inclusion of other actions is redundant and likely confusing. Important information about parameters and usage is missing. The structure could be streamlined to focus on the actual functionality.

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 (multiple actions implied) and the lack of output schema and parameter descriptions, the description is incomplete. It fails to provide enough context for an agent to correctly invoke the tool, especially regarding which action to use and how to pass filters. The presence of sibling tools adds confusion rather than clarity.

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?

Input schema has two parameters (data, account) with no descriptions (0% coverage). The description does not explain these parameters or how they relate to the listed actions. For example, it mentions filters like 'tipo_procedimento' but these are not shown as parameters. The description adds no value beyond the schema, failing to clarify parameter usage.

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 'Read procedures in Feegow' which gives a general purpose. However, it then lists multiple actions (list, types, insurance_list, franchise, bundles, groups) that are not reflected in the input schema, and there are separate sibling tools for some of these actions. The 'Flattened action: list' note suggests only the list action is available, but this is not clear from the description. The purpose is vaguely clear but confusing due to the mismatch.

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 versus siblings such as feegow_procedure_types or feegow_procedure_bundles. The description lists actions but does not indicate that alternative siblings exist for those actions, nor does it provide criteria for choosing this tool over them.

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

feegow_procedure_typesC
Read-onlyIdempotent
Inspect

Read procedures in Feegow. Values in centavos. Actions:

  • list: list procedures + values. Filter by tipo_procedimento, procedimento_id, unidade_id, paciente_id, especialidade_id, profissional_id, tabela_id, nome_procedimento.

  • types: list procedure types (Cirurgia, Consulta, Exame, Procedimento, Retorno).

  • insurance_list: list insurance plans that accept a procedure (by procedimentoID or nomeProcedimento).

  • franchise: list imported franchise procedures (requires unidade_id).

  • bundles: list procedure bundles/packages (optional procedimento_id, pacote_id).

  • groups: list procedure groups (optional grupo_id).

[Flattened action: types]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds 'Read procedures' and 'Values in centavos,' which are consistent but do not provide significant additional behavioral context beyond the annotations.

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

Conciseness2/5

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

The description is verbose and includes a long list of actions with detailed filters, but the purpose is unclear due to duplication with sibling tools. The '[Flattened action: types]' note is confusing and adds clutter. The description could be much more concise if it focused solely on the 'types' action as suggested.

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 the minimal input schema (no descriptions) and no output schema, the description fails to explain how to use the tool, including how to specify which action to invoke. The filter details for the 'list' action are irrelevant without schema support, and the actual parameters 'data' and 'account' remain undocumented. The tool is not usable as described.

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 two string parameters ('data' and 'account') with zero coverage, meaning no description in the schema. The tool's description lists many filter parameters (e.g., tipo_procedimento) for the 'list' action, but these are not reflected in the schema. The actual parameters remain unexplained, making it impossible to use the tool correctly based on the description.

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

Purpose2/5

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

The description states 'Read procedures in Feegow' and lists multiple actions (list, types, insurance_list, etc.), but the tool name 'feegow_procedure_types' suggests it is specifically for procedure types. There are sibling tools like feegow_procedure_list, feegow_procedure_bundles, etc., which duplicate these actions, causing confusion about the tool's actual scope.

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 the dedicated sibling tools (e.g., feegow_procedure_list). The description lists actions but does not clarify that this tool likely should be used only for the 'types' action (as hinted by '[Flattened action: types]').

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

feegow_professional_getA
Read-onlyIdempotent
Inspect

Read professionals (doctors, specialists) in Feegow. Actions:

  • list: list professionals. Requires ativo (0=inactive, 1=active). Optional: unidade_id, especialidade_id.

  • get: full detail + specialties for a professional (requires profissional_id).

  • insurance: list insurance plans accepted by a professional (requires profissional_id).

[Flattened action: get]

Bulk support: accepts profissional_ids, unidade_ids, especialidade_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
ativoNo
accountNo
unidade_idNo
unidade_idsNo
profissional_idNo
especialidade_idNo
profissional_idsNo
especialidade_idsNo
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint. The description adds bulk support and action-specific parameter requirements, but does not mention pagination, error handling, or return format. It provides moderate behavioral context beyond annotations.

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 a clear heading, bulleted actions, and a note on bulk support. The line '[Flattened action: get]' is jargon and slightly confusing, detracting from overall clarity.

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?

No output schema exists, and the description only hints at return values (e.g., 'list professionals', 'full detail + specialties'). It lacks information on error conditions, pagination, or rate limits, leaving gaps for an agent to fully understand the tool's behavior.

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?

Despite 0% schema coverage, the description explains most parameters (ativo, unidade_id, especialidade_id, profissional_id) and bulk variants. However, the 'account' parameter is undocumented, and the relationship between singular and plural parameters is unclear.

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

Purpose4/5

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

The description states it reads professionals and lists three actions (list, get, insurance) with parameter hints. However, it does not explicitly differentiate from sibling tools like 'feegow_professional_list' and 'feegow_professional_insurance', which could cause confusion.

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 when to use each action via required parameters (e.g., list requires ativo, get requires profissional_id). However, it lacks explicit guidance on when to use this tool versus sibling tools or when to use bulk vs singular parameters.

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

feegow_professional_insuranceC
Read-onlyIdempotent
Inspect

Read professionals (doctors, specialists) in Feegow. Actions:

  • list: list professionals. Requires ativo (0=inactive, 1=active). Optional: unidade_id, especialidade_id.

  • get: full detail + specialties for a professional (requires profissional_id).

  • insurance: list insurance plans accepted by a professional (requires profissional_id).

[Flattened action: insurance]

Bulk support: accepts profissional_ids, unidade_ids, especialidade_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
ativoNo
accountNo
unidade_idNo
unidade_idsNo
profissional_idNo
especialidade_idNo
profissional_idsNo
especialidade_idsNo
Behavior3/5

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

Annotations already indicate readOnly and idempotent, so the description does not contradict. It adds some useful context (bulk support) but also includes actions that may not be part of this tool (list, get), potentially misleading about the tool's actual behavior. No significant new behavioral disclosure beyond annotations.

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

Conciseness2/5

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

The description is overly long for a simple read tool, includes a bullet-list of actions that mix tool scope, and ends with a cryptic note ('[Flattened action: insurance]'). It lacks a clean, front-loaded structure. Several sentences are redundant or confusing.

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 moderate annotation coverage, the description should clarify what each action returns and how to use bulk parameters. It fails to describe return values or example usage, and the action list suggests more capabilities than the tool likely has. The agent would need to infer much from 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 coverage is 0%, so the description must carry full parameter explanation. It mentions some parameters (ativo, unidade_id, especialidade_id, profissional_id, bulk arrays) but omits others like 'account'. Additionally, conditions like 'requires ativo (0=inactive, 1=active)' are tied to a specific action, not the tool overall. Incomplete and inconsistently described.

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

Purpose2/5

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

The description states it reads professionals but also lists three actions (list, get, insurance) and the tool name suggests it's about insurance. This is confusing, especially since sibling tools exist for professional list/get. The purpose is vague and does not clearly differentiate from siblings.

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

Usage Guidelines2/5

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

No explicit when-to-use guidance is provided. The description lists actions but does not clarify when to use this tool versus sibling tools like feegow_professional_list, feegow_professional_get, or feegow_insurance. The agent is left guessing which action to invoke.

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

feegow_professional_listB
Read-onlyIdempotent
Inspect

Read professionals (doctors, specialists) in Feegow. Actions:

  • list: list professionals. Requires ativo (0=inactive, 1=active). Optional: unidade_id, especialidade_id.

  • get: full detail + specialties for a professional (requires profissional_id).

  • insurance: list insurance plans accepted by a professional (requires profissional_id).

[Flattened action: list]

Bulk support: accepts profissional_ids, unidade_ids, especialidade_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
ativoNo
accountNo
unidade_idNo
unidade_idsNo
profissional_idNo
especialidade_idNo
profissional_idsNo
especialidade_idsNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds value by mentioning bulk support behavior, but otherwise does not disclose additional behavioral traits beyond what annotations provide.

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 structured with actions and bulk support, but is somewhat verbose and includes technical notes like '[Flattened action: list]' that may confuse agents. It could be more concise without losing clarity.

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 8 parameters, zero output schema, and multiple sub-modes, the description lacks completeness. It doesn't explain return values, mutual exclusivity of parameters, or the purpose of the 'account' parameter. The bulk support description is vague.

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?

With 0% schema description coverage, the description compensates well by explaining parameters per action (e.g., 'list requires ativo (0=inactive, 1=active)', 'get requires profissional_id', etc.) and describing bulk parameters. However, not all parameters (e.g., account) are explicitly documented.

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 'Read professionals (doctors, specialists)' and lists three specific actions (list, get, insurance) with parameter requirements. It distinguishes from sibling tools like feegow_professional_get and feegow_professional_insurance by bundling multiple functionalities, but still provides clear purpose.

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 does not explicitly guide when to use this tool versus its sibling tools (e.g., feegow_professional_get for single professional detail). It mentions 'Flattened action: list' and 'Bulk support' but lacks clear context on when to choose list, get, or insurance, and when to use bulk parameters.

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

feegow_proposal_get_urlC
Read-onlyIdempotent
Inspect

Read proposals (treatment plans with pricing) in Feegow. Values in R$. Actions:

  • list: list proposals for patient. Optional: paciente_id, data_inicio (DD-MM-YYYY), data_fim (DD-MM-YYYY), tipo_data (A=last update, I=creation).

  • list_by_date: list proposals by date (data_proposta, data_alteracao YYYY-MM-DD, PacienteID).

  • get_url: get proposal URL (proposta_id). For creating / changing status use feegow_proposal_write.

[Flattened action: get_url]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, indicating a safe read operation. The description's mention of 'Read proposals' aligns, but it adds no additional behavioral context beyond what annotations provide.

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

Conciseness2/5

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

The description is lengthy and includes irrelevant details about other actions (list, list_by_date). The relevant part for get_url is a single line. It lacks conciseness and structure, burying key information.

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 undocumented parameters, the description is insufficient for an agent to correctly invoke the tool. It omits how to specify the proposal ID and fails to cover parameter semantics.

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 two parameters ('data', 'account') with no description in the schema (0% coverage). The description mentions 'proposta_id' but does not explain how it maps to the parameters. Parameters are effectively undocumented.

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 'get proposal URL (proposta_id)' which identifies the core action, but it is buried among unrelated actions (list, list_by_date), causing confusion about the tool's main purpose. The tool name is clear, but the description is cluttered.

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 tells users to use feegow_proposal_write for creating/changing status, providing some guidance on alternatives. However, it lacks explicit instructions on when to use get_url vs other proposal list tools (feegow_proposal_list, feegow_proposal_list_by_date).

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

feegow_proposal_listC
Read-onlyIdempotent
Inspect

Read proposals (treatment plans with pricing) in Feegow. Values in R$. Actions:

  • list: list proposals for patient. Optional: paciente_id, data_inicio (DD-MM-YYYY), data_fim (DD-MM-YYYY), tipo_data (A=last update, I=creation).

  • list_by_date: list proposals by date (data_proposta, data_alteracao YYYY-MM-DD, PacienteID).

  • get_url: get proposal URL (proposta_id). For creating / changing status use feegow_proposal_write.

[Flattened action: list]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive. Description adds context on data type and date formats, but the multi-action claim contradicts the likely single-action tool, reducing transparency.

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 relatively concise but includes extraneous action details and a flattened action note. Could be more structured.

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?

Lacks return value description, and parameter mapping is inconsistent with schema. Incomplete for an effective tool 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?

Schema has only 'data' and 'account' with no description, 0% coverage. Description mentions parameters like paciente_id, data_inicio, etc., but these do not match the schema, causing confusion.

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 it reads proposals, but includes multiple actions (list, list_by_date, get_url) that are actually separate sibling tools, creating confusion. The flattened action note suggests it only does 'list', but the description misleads.

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?

Only explicitly says not to use for create/change status (directs to feegow_proposal_write). No differentiation from similar read tools feegow_proposal_list_by_date and feegow_proposal_get_url, which are implied as actions.

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

feegow_proposal_list_by_dateB
Read-onlyIdempotent
Inspect

Read proposals (treatment plans with pricing) in Feegow. Values in R$. Actions:

  • list: list proposals for patient. Optional: paciente_id, data_inicio (DD-MM-YYYY), data_fim (DD-MM-YYYY), tipo_data (A=last update, I=creation).

  • list_by_date: list proposals by date (data_proposta, data_alteracao YYYY-MM-DD, PacienteID).

  • get_url: get proposal URL (proposta_id). For creating / changing status use feegow_proposal_write.

[Flattened action: list_by_date]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering core safety. The description adds that it lists proposals, but no extra details on behavior (e.g., pagination, error handling, or what happens with empty results). It does not contradict annotations.

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

Conciseness2/5

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

The description is verbose, including details of multiple actions (list, get_url) that are not part of this tool. The '[Flattened action: list_by_date]' hint attempts to clarify, but the extra information makes it harder to parse. Every sentence should focus on this specific 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?

Given no output schema and minimal parameter documentation, the description fails to fully explain how to use the tool. The two parameters ('data' and 'account') are not described in the schema or adequately in the text. The tool is simple, but the description does not enable correct invocation without guessing.

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%, so the description must compensate. It mentions parameters like 'data_proposta, data_alteracao YYYY-MM-DD, PacienteID' but the actual schema only has 'data' and 'account' strings with no format. This mismatch leaves the agent guessing the mapping between the described fields and the schema parameters.

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

Purpose4/5

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

The description states the tool reads proposals (treatment plans with pricing) and the name indicates listing by date. It distinguishes from sibling tools like feegow_proposal_list and feegow_proposal_write. However, the description also includes other actions (list, get_url), causing some ambiguity about this specific tool's focus.

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

Usage Guidelines4/5

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

The description explicitly mentions alternatives: 'For creating / changing status use feegow_proposal_write.' It also implies this tool is for reading, not writing. However, it does not clearly differentiate from feegow_proposal_list or when to prefer this date-based variant.

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

feegow_proposal_write_change_statusCInspect

Create / update proposals in Feegow. Actions:

  • create: create proposal. Requires proposer_id (sys_user), paciente_id, status_id (1-5), proposal_date (DD-MM-YYYY), procedimentos array. Status: 1=Awaiting client, 2=Approved, 3=Rejected, 4=Awaiting financing, 5=Executed.

  • change_status: update proposal status (proposal_id, status_id).

[Flattened action: change_status]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations indicate mutation (readOnlyHint=false) but no destructive hint. The description adds that it creates/updates proposals, but does not disclose side effects, authorization requirements, or the response format. The parameter details for create are not tied to the actual schema, leaving behavior opaque.

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 of moderate length but includes extraneous details for 'create' action while the tool is for 'change_status'. It could be more focused and succinct.

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 tool's implied dual-action purpose, the description is incomplete. It fails to explain how to specify the action, what the response looks like, and lacks output schema. For a mutation tool, critical context is missing.

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

Parameters1/5

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

The input schema has two parameters (data, account) with 0% description coverage. The description does not explain these parameters; instead it lists unrelated fields for the 'create' action. It adds no semantic meaning to the schema parameters.

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

Purpose2/5

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

The description states 'Create / update proposals' but the tool name is specifically 'change_status', creating ambiguity. The 'Flattened action: change_status' note attempts to clarify, but the inclusion of 'create' action details is misleading. The description fails to clearly state the tool's singular purpose.

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 versus alternatives like 'feegow_proposal_write_create'. The description implies two actions but does not differentiate their contexts or prerequisites. It lacks when-not-to-use instructions.

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

feegow_proposal_write_createCInspect

Create / update proposals in Feegow. Actions:

  • create: create proposal. Requires proposer_id (sys_user), paciente_id, status_id (1-5), proposal_date (DD-MM-YYYY), procedimentos array. Status: 1=Awaiting client, 2=Approved, 3=Rejected, 4=Awaiting financing, 5=Executed.

  • change_status: update proposal status (proposal_id, status_id).

[Flattened action: create]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior2/5

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

Annotations provide limited information (readOnlyHint=false). The description mentions create/update actions but does not disclose behavioral impacts, such as required permissions, idempotency, or side effects. For a mutable tool, this is insufficient.

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 somewhat redundant, repeating 'Create / update proposals' and including a mixed list of actions with a confusing flattening note. It could be more concise and structured.

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 tool's two actions and many siblings, the description lacks completeness. It does not explain the relationship with feegow_proposal_write_change_status, the format of the data parameter, or what the tool returns. No output schema makes it harder to assess completeness.

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 coverage is 0%, so the description must compensate. It lists fields for 'create' (proposer_id, paciente_id, etc.) and 'change_status' (proposal_id, status_id), adding some semantics. However, it does not specify that data is a JSON string or explain the account parameter, leaving gaps.

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

Purpose2/5

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

The description states 'Create / update proposals' but then lists actions 'create' and 'change_status', ending with '[Flattened action: create]', which is contradictory and unclear. It does not clearly distinguish from the sibling tool feegow_proposal_write_change_status.

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 vs. siblings or whether to use 'create' or 'change_status' actions. The description lacks explicit usage context or alternatives.

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

feegow_report_generateA
Read-onlyIdempotent
Inspect

List and generate system reports in Feegow. Actions:

  • list: list all available report types (returns id, Ct, Relatorio, Arquivo).

  • generate: generate a report. Requires report (the Arquivo field from list). Optional DATA_INICIO/DATA_FIM (DD/MM/YYYY) passed together; the interval must be UNDER 6 months. Large reports come back as a downloadable file (open sections with arquivo_ler), not inline. Report generation is a read-like operation (aggregates existing data — no state mutation).

[Flattened action: generate]

ParametersJSON Schema
NameRequiredDescriptionDefault
reportNo
accountNo
DATA_FIMNo
DATA_INICIONo
Behavior4/5

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

The description adds behavioral context beyond the annotations: it states that 'Report generation is a read-like operation (aggregates existing data — no state mutation)', which aligns with the readOnlyHint and idempotentHint annotations. It also discloses output behavior: 'Large reports come back as a downloadable file (open sections with arquivo_ler), not inline.' This is valuable additional information that the annotations do not provide.

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 structured with bullet points and a clear action list. Each sentence provides distinct information: report selection, date constraints, file output behavior, and read-only reassurance. It is slightly longer than necessary because it includes 'list' details despite the tool being flattened to 'generate', but the content is not wasteful.

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

Completeness4/5

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

Given no output schema, the description covers the essential operational aspects: how to choose the report, date limits, file download behavior, and the safe/read-only nature. It falls short on the 'account' parameter and does not describe potential error cases or the exact format of the returned data, but for a generate action it is fairly complete and actionable.

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

Parameters3/5

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

The schema has 0% description coverage, so the description must compensate. It explains 'report' (the Arquivo field from list) and DATA_INICIO/DATA_FIM (optional, passed together, DD/MM/YYYY, under 6 months). However, the 'account' parameter is not mentioned at all, leaving a gap. Also, the description says 'Requires report' while the schema lists no required fields, creating a minor inconsistency. Overall, it partially compensates but misses one parameter.

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's primary purpose: 'generate a report' in Feegow, with the specific action 'generate' highlighted via '[Flattened action: generate]'. It also explains how to identify the report using the 'Arquivo' field, which distinguishes this from the sibling feegow_report_list. However, the opening phrase 'List and generate system reports' is slightly ambiguous because the tool is specifically for generation, lowering the score.

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

Usage Guidelines4/5

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

The description gives concrete usage guidance: 'Requires report (the Arquivo field from list)' explicitly tells the agent to first list reports to get the necessary identifier. It also states a critical constraint: 'DATA_INICIO/DATA_FIM ... passed together; the interval must be UNDER 6 months.' It does not explicitly mention using feegow_report_list as an alternative for listing, but the referral to 'from list' implies that. This is clear context, though not a full when/when-not comparison.

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

feegow_report_listA
Read-onlyIdempotent
Inspect

List and generate system reports in Feegow. Actions:

  • list: list all available report types (returns id, Ct, Relatorio, Arquivo).

  • generate: generate a report. Requires report (the Arquivo field from list). Optional DATA_INICIO/DATA_FIM (DD/MM/YYYY) passed together; the interval must be UNDER 6 months. Large reports come back as a downloadable file (open sections with arquivo_ler), not inline. Report generation is a read-like operation (aggregates existing data — no state mutation).

[Flattened action: list]

ParametersJSON Schema
NameRequiredDescriptionDefault
reportNo
accountNo
DATA_FIMNo
DATA_INICIONo
Behavior5/5

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

The description says report generation is 'a read-like operation (aggregates existing data — no state mutation)', which aligns with and reinforces the readOnlyHint and idempotentHint annotations. It additionally discloses that large reports are not returned inline but as downloadable files opened via 'arquivo_ler', and that date intervals must be under 6 months. These are meaningful behavioral traits beyond the structured metadata.

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 well-structured with bullet points for each action, and the date and file-size caveats are valuable. The 'Flattened action: list' line is slightly cryptic but not redundant; overall no sentence is wasted.

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 the list action, return fields are specified. For generate, the required report parameter, date constraints, and large-report file handling are covered. Gaps remain: the account parameter is undocumented, the response format for non-large generated reports is unstated, and the reference to 'arquivo_ler' is not explained nor linked to an available sibling. Given no output schema, these omissions leave the tool incompletely described.

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

Parameters3/5

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

The description defines 'report' as the Arquivo field from list, and specifies that DATA_INICIO/DATA_FIM must be passed together in DD/MM/YYYY format with an interval under 6 months. However, the 'account' parameter is never mentioned or explained, leaving its purpose unclear. Since schema coverage is 0%, the description carries the full burden and misses one of four 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 opens with 'List and generate system reports in Feegow', a specific verb+resource combination. It enumerates two actions with clear outcomes (list returns id, Ct, Relatorio, Arquivo; generate produces a report). This distinguishes it within the sibling set by naming the exact resource and actions.

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 explains when to use generate (requires report from list, date interval under 6 months) and notes large reports are delivered as downloadable files. However, it does not explicitly differentiate this tool from the sibling feegow_report_generate, nor does it state when listing should be preferred over generating. The 'Flattened action: list' note hints at the primary use but is not elaborated.

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

feegow_specialtyA
Read-onlyIdempotent
Inspect

List all medical specialties available for scheduling in Feegow. Optional filter by unidade_id.

Bulk support: accepts unidade_ids for batched execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
accountNo
unidade_idNo
unidade_idsNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, indicating a safe, idempotent operation. The description adds valuable behavioral context: bulk execution via unidade_ids and optional filter by unidade_id, without contradicting annotations.

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, each adding distinct information: purpose and optional filter, then bulk support. No redundant or missing elements.

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 list tool with annotations present, the description explains purpose, filter, and batch support. However, it does not explain the 'account' parameter or return structure, but given the no output schema and simplicity, it is mostly 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?

With 0% schema description coverage, the description must explain parameters. It covers unidade_id (optional filter) and unidade_ids (batch support) but does not mention the 'account' parameter, leaving its purpose unclear.

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 medical specialties available for scheduling, with optional filtering by unidade_id. It distinguishes itself from sibling tools, none of which list specialties.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool (to list specialties, optionally filtered by unit, with batch support). No explicit alternatives are mentioned, but none exist among siblings.

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

feegow_stock_get_positionD
Read-onlyIdempotent
Inspect

Read stock/inventory data in Feegow. Actions:

  • list_products: list products (perPage, page, id, location, category, producer, type).

  • get_position: product position/levels (perPage, page, fabricante, produto, categoria, localizacao, dataInicio, dataFim).

  • list_locations: stock locations (empty body {} lists all; each item has id, NomeLocalizacao, UnidadeID).

[Flattened action: get_position]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds no behavioral context beyond listing actions, which are not tied to this tool's actual behavior. It does not disclose any side effects, dependencies, or output format.

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

Conciseness2/5

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

The description is short but poorly structured. It mixes multiple actions in a bullet list, making it unclear what this tool does. The inclusion of '[Flattened action: get_position]' adds ambiguity rather than clarity.

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

Completeness1/5

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

Given the minimal schema and no output schema, the description should elaborate on usage, return format, and pagination. It fails to provide any useful context beyond a vague action list.

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?

Input schema has two parameters (data, account) with 0% description coverage. The description does not explain these parameters. It mentions get_position-specific parameters (e.g., perPage, page) but those are not in the schema, causing confusion.

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

Purpose2/5

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

The description states 'Read stock/inventory data in Feegow' but then lists three actions (list_products, get_position, list_locations), making it unclear which action this tool performs. The tool name suggests get_position, but the description conflates with sibling tools. It does not provide a specific verb-resource pair for this tool.

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

Usage Guidelines1/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 vs alternatives. Sibling tools include feegow_stock_list_products and feegow_stock_list_locations, but the description doesn't differentiate or provide selection criteria.

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

feegow_stock_list_locationsD
Read-onlyIdempotent
Inspect

Read stock/inventory data in Feegow. Actions:

  • list_products: list products (perPage, page, id, location, category, producer, type).

  • get_position: product position/levels (perPage, page, fabricante, produto, categoria, localizacao, dataInicio, dataFim).

  • list_locations: stock locations (empty body {} lists all; each item has id, NomeLocalizacao, UnidadeID).

[Flattened action: list_locations]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior2/5

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

Annotations declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, indicating a safe read operation. The description mentions 'Read stock/inventory data' but includes actions from other tools, potentially misleading about the tool's actual behavior. It does not disclose that this tool only lists locations, or explain prerequisites 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.

Conciseness2/5

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

The description is verbose and includes irrelevant actions (list_products, get_position) that belong to other tools. The essential information about list_locations is buried at the end. It is not concise and poorly structured, with a lot of redundant text.

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

Completeness2/5

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

The tool is simple (list locations), but the description is complex and misleading. It partially mentions response fields for list_locations (id, NomeLocalizacao, UnidadeID), but omits explanation of parameters and does not clearly describe the tool's scope. Given the missing output schema and 0% schema coverage, the description is incomplete.

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 two parameters (data, account) with 0% schema description coverage. The description mentions 'empty body {} lists all' for list_locations, but does not explain what the 'data' and 'account' parameters represent. It fails to add any meaningful semantics beyond the schema, and even creates confusion by suggesting a body parameter that doesn't exist.

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

Purpose2/5

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

The description starts with a broad statement about reading stock/inventory data, then lists three actions (list_products, get_position, list_locations) which belong to sibling tools. The '[Flattened action: list_locations]' hint implies this tool only lists locations, but the description is misleading and does not clearly state the tool's specific function.

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

Usage Guidelines1/5

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

The description fails to guide when to use this tool vs alternatives like feegow_stock_list_products or feegow_stock_get_position. Instead, it lists those actions as if this tool performs them, creating confusion. No explicit when-to-use or when-not guidance is provided.

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

feegow_stock_list_productsC
Read-onlyIdempotent
Inspect

Read stock/inventory data in Feegow. Actions:

  • list_products: list products (perPage, page, id, location, category, producer, type).

  • get_position: product position/levels (perPage, page, fabricante, produto, categoria, localizacao, dataInicio, dataFim).

  • list_locations: stock locations (empty body {} lists all; each item has id, NomeLocalizacao, UnidadeID).

[Flattened action: list_products]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
accountNo
Behavior3/5

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

Annotations already indicate readOnlyHint=true, destructiveHint=false, consistent with 'Read stock/inventory data'. The description adds some context about available filters but also includes irrelevant actions, slightly detracting from transparency.

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

Conciseness2/5

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

The description is verbose and includes redundant details about multiple actions. The structure is messy, with a list of actions followed by a clarifying note. A concise statement about listing products would be more effective.

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

Completeness1/5

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

With no output schema and sparse annotations, the description fails to explain how to use the actual parameters (data, account) or what results to expect. It does not compensate for the low schema coverage, leaving the agent without essential 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 two strings (data, account) with 0% description coverage, and the description does not explain these parameters. Instead, it describes different parameters (perPage, page, etc.) that are not in the schema, causing severe mismatch and no added meaning.

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

Purpose2/5

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

The description starts with 'Read stock/inventory data in Feegow' but then lists three actions (list_products, get_position, list_locations), which conflicts with the tool name 'feegow_stock_list_products'. The phrase '[Flattened action: list_products]' suggests it only does list_products, but the preceding list implies multiple actions, causing confusion.

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 vs. sibling tools like feegow_stock_get_position or feegow_stock_list_locations. The description itself lists those as actions within this tool, which is misleading and provides no clarity on appropriate usage scenarios.

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

feegow_stock_write_entryCInspect

Write stock operations in Feegow. Numeric fields MUST be JSON numbers (integers), never strings — Feegow rejects "4" where 4 is expected. Actions:

  • insert: insert new product. PrecoCompra and PrecoVenda are REQUIRED integers (whole numbers, no decimals). Typical fields: NomeProduto (string), TipoProduto, CategoriaID, FabricanteID, ApresentacaoNome (string), ApresentacaoQuantidade, ApresentacaoUnidade, LocalizacaoID, EstoqueMinimo, EstoqueMaximo, DiasAvisoValidade (all integers).

  • entry: product entry into stock. Requires productId (integer), quantity (integer), date (string).

  • movement: product movement between locations.

  • exit: product exit from stock. Requires productId (integer), quantity (integer), date (string).

[Flattened action: entry]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, which are consistent with a write operation. The description adds important behavioral details like the requirement for numeric values to be integers, not strings. However, it does not disclose authorization needs, side effects on existing data, 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.

Conciseness2/5

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

The description is relatively long and includes detailed field lists for some actions, but it is poorly structured. Actions are listed without clear separation, and the 'Flattened action: entry' at the end is confusing. Key information could be presented more efficiently.

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 of four different stock operations and the poor schema (only generic data and account), the description is incomplete. It does not fully specify fields for all actions (e.g., movement is vague), ignores the account parameter, and lacks output schema or error handling details.

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

Parameters3/5

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

The input schema is vague (two string parameters: data and account) with 0% description coverage. The description compensates by explaining the expected JSON structure within data for various actions, which is critical. However, it does not explain the account parameter, and the mapping from description to schema is implicit.

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 'Write stock operations in Feegow' and lists actions (insert, entry, movement, exit), giving a general idea. However, it is unclear how this tool relates to sibling tools like feegow_stock_write_insert, which seems to be a separate tool. The mention 'Flattened action: entry' adds confusion.

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 formatting requirements (numeric fields must be integers) but fails to guide when to use this tool versus the dedicated sibling tools for insert, exit, and movement. It does not specify prerequisites or context for choosing this combined tool.

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

feegow_stock_write_exitDInspect

Write stock operations in Feegow. Numeric fields MUST be JSON numbers (integers), never strings — Feegow rejects "4" where 4 is expected. Actions:

  • insert: insert new product. PrecoCompra and PrecoVenda are REQUIRED integers (whole numbers, no decimals). Typical fields: NomeProduto (string), TipoProduto, CategoriaID, FabricanteID, ApresentacaoNome (string), ApresentacaoQuantidade, ApresentacaoUnidade, LocalizacaoID, EstoqueMinimo, EstoqueMaximo, DiasAvisoValidade (all integers).

  • entry: product entry into stock. Requires productId (integer), quantity (integer), date (string).

  • movement: product movement between locations.

  • exit: product exit from stock. Requires productId (integer), quantity (integer), date (string).

[Flattened action: exit]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

The description adds useful behavioral context such as requiring integer JSON numbers for numeric fields and listing required fields for each action. However, it does not disclose side effects (e.g., stock reduction on exit), idempotency, or error scenarios. Annotations provide minimal safety signals (destructiveHint=false) but the description doesn't elaborate.

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

Conciseness2/5

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

The description is verbose and includes details for multiple actions that are irrelevant to this tool's specific purpose. It redundantly lists fields per action and ends with an aside about flattened action. Much could be removed for clarity and conciseness.

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

Completeness1/5

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

Given the complexity of stock write operations (with multiple actions), minimal annotations, and no output schema, the description is highly incomplete. It fails to explain return values, error handling, or prerequisites, leaving an agent with insufficient information to invoke the tool correctly.

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 input schema has only two parameters (data and account) with 0% description coverage. The description focuses on inner action details (e.g., fields for insert) but does not explain the format or structure of the 'data' parameter, leaving significant ambiguity for parameter construction.

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

Purpose2/5

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

The description states 'Write stock operations in Feegow' and lists multiple actions (insert, entry, movement, exit) but the tool name is specifically 'feegow_stock_write_exit', implying only exit operations. The inclusion of other actions makes the purpose ambiguous and misleading for an agent attempting to select the correct tool.

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

Usage Guidelines1/5

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

The description does not provide any guidance on when to use this tool versus its siblings (e.g., feegow_stock_write_entry, feegow_stock_write_insert). It lists actions without differentiation, potentially causing an agent to misuse the tool for non-exit operations.

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

feegow_stock_write_insertCInspect

Write stock operations in Feegow. Numeric fields MUST be JSON numbers (integers), never strings — Feegow rejects "4" where 4 is expected. Actions:

  • insert: insert new product. PrecoCompra and PrecoVenda are REQUIRED integers (whole numbers, no decimals). Typical fields: NomeProduto (string), TipoProduto, CategoriaID, FabricanteID, ApresentacaoNome (string), ApresentacaoQuantidade, ApresentacaoUnidade, LocalizacaoID, EstoqueMinimo, EstoqueMaximo, DiasAvisoValidade (all integers).

  • entry: product entry into stock. Requires productId (integer), quantity (integer), date (string).

  • movement: product movement between locations.

  • exit: product exit from stock. Requires productId (integer), quantity (integer), date (string).

[Flattened action: insert]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations indicate non-readonly and non-destructive, but the description adds value by specifying numeric field requirements (integers, no strings) and required fields for insert. However, it does not disclose side effects, permissions, or error handling, leaving gaps.

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 moderately concise but front-loads multiple actions and examples, making it longer than necessary. It could be restructured to clearly separate the main purpose from action-specific details.

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 of multiple actions and absence of output schema, the description is incomplete. It fails to explain the exact format of the data string, the account parameter, or the 'Flattened action' concept, leaving significant gaps for agent 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?

Input schema has 2 parameters (data and account) with 0% description coverage. The description does not explain how to structure the 'data' or 'account' parameters; it only lists fields for actions without mapping to the schema. Users lack critical information on how to pass the operation details.

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 it handles stock operations like insert, entry, movement, exit, and mentions 'Flattened action: insert'. However, the tool name suggests a specific purpose for inserts only, while the description includes multiple actions, causing ambiguity. It does clearly differentiate from sibling tools with similar prefixes.

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 versus alternatives like feegow_stock_write_entry. The description lists actions but does not provide decision criteria or context for choosing one action over another.

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

feegow_stock_write_movementBInspect

Write stock operations in Feegow. Numeric fields MUST be JSON numbers (integers), never strings — Feegow rejects "4" where 4 is expected. Actions:

  • insert: insert new product. PrecoCompra and PrecoVenda are REQUIRED integers (whole numbers, no decimals). Typical fields: NomeProduto (string), TipoProduto, CategoriaID, FabricanteID, ApresentacaoNome (string), ApresentacaoQuantidade, ApresentacaoUnidade, LocalizacaoID, EstoqueMinimo, EstoqueMaximo, DiasAvisoValidade (all integers).

  • entry: product entry into stock. Requires productId (integer), quantity (integer), date (string).

  • movement: product movement between locations.

  • exit: product exit from stock. Requires productId (integer), quantity (integer), date (string).

[Flattened action: movement]

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
accountNo
Behavior3/5

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

Annotations already indicate destructiveHint=false and readOnlyHint=false. The description adds a useful constraint about numeric fields being JSON numbers, but lacks other behavioral info (e.g., authentication, side effects, reversibility). No contradiction with annotations.

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

Conciseness3/5

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

The description is relatively long but well-structured, starting with a critical warning. However, the final line 'Flattened action: movement' is confusing and adds clutter. Could be more concise without losing essential 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?

The description covers input structure well but omits return values (no output schema) and error handling. For a write operation, agents may need to know success indicators or response format. Adequate but incomplete.

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

Parameters5/5

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

Input schema has 0% description coverage with only two parameters (data and account). The description extensively compensates by detailing the structure within the 'data' JSON string, including required fields for each action (e.g., PrecoCompra, productId). This is critical for correct invocation.

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

Purpose4/5

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

The description states it writes stock operations and lists four specific actions (insert, entry, movement, exit). However, the note 'Flattened action: movement' at the end introduces ambiguity, and the relationship to sibling tools like feegow_stock_write_insert is unclear.

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 the specific sibling tools (feegow_stock_write_entry, feegow_stock_write_exit, etc.). An agent is left to infer usage without explicit context or alternatives.

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

marketplaceAInspect

The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/ link that opens without login.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNo
actionNosearch
mcp_idNo
messageNo
tool_idNo
argumentsNo{}
immediateNo
tier_slugNo
prompt_bodyNo
prompt_slugNo
prompt_toolNo
prompt_varsNo{}
conversationNo[]
prompt_titleNo
request_nameNo
cancel_reasonNo
cancel_commentNo
prompt_targetsNo
report_contextNo
prompt_categoryNo
request_detailsNo
prompt_descriptionNo
Behavior5/5

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

Adds significant behavioral context beyond the annotations (which only indicate non-read-only, non-destructive, open-world). Details like invoke working even when the MCP is not installed, returning connect/checkout links requiring user action then retry, requiring workspace owner/admin for writes, and the one-off install behind invoke are all disclosed, giving the agent a full picture of side effects and preconditions.

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 dense single paragraph but uses signposts like 'Core flow:', 'KEY:', and 'Use install only' to organize the content. It is long, but every sentence adds necessary context for a tool with 14 actions and 23 parameters; could be improved with bullet points but is appropriately sized for the complexity.

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

Completeness5/5

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

Given the absence of an output schema and the tool's complexity, the description is remarkably complete: it covers the search/describe/invoke workflow, install vs invoke semantics, auth/payment edge cases, prompt library, permissions, and billing actions. No obvious gaps remain for an agent to select and invoke the tool correctly.

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?

With 0% schema description coverage, the description compensates by explaining the action enum values (search, describe, install, invoke, list_tools, subscribe/cancel, report_bug, request_mcp, prompt actions) and key parameters like mcp_id, tool_id, arguments, and prompt_* fields. It does not describe all 23 parameters (e.g., limit, immediate, tier_slug, cancel_reason), but the most semantically important ones are covered.

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's purpose as 'the official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them.' It then explains the core action flow (search → describe → invoke), distinguishing it from sibling tools like the feegow_* set, which are domain-specific operations.

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?

Provides explicit when-to-use guidance: 'prefer invoke for a single/occasional use; use install only to make an MCP PERMANENT in the active toolkit,' and names alternatives like list_tools for currently callable tools and request_mcp when nothing fits. Also states permission requirements for writes, making it clear when the tool can be used.

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

report_bugA
Idempotent
Inspect

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNo
messageYes
conversationNo[]
Behavior3/5

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

The description does not add behavioral details beyond what annotations already provide (readOnlyHint=false, destructiveHint=false, idempotentHint=true). It does not mention side effects, persistence, or confirmation, so it adds minimal value.

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: purpose and guidance. No fluff, front-loaded, 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?

Given the tool's simplicity and no output schema, the description explains purpose and key parameter usage. Missing details about 'context' and expected formats, but overall sufficient.

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?

With 0% schema description coverage, the description partially compensates by explaining the 'conversation' parameter. However, 'context' and 'message' are not clarified, leaving gaps.

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 is for reporting bugs, missing features, or sending feedback, which is a specific verb+resource. It distinguishes itself from sibling tools that are focused on Feegow operations, authentication, etc.

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

Usage Guidelines4/5

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

The description provides clear context for usage (include conversation array for reproduction) but lacks explicit when-not-to-use or comparison to alternatives. Since no other feedback tool exists among siblings, this is adequate.

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

show_versionA
Read-onlyIdempotent
Inspect

Show the current MCP platform and adapter versions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, fully covering safety and idempotency. The description adds that it shows version info, which is consistent but adds little new behavioral context. A score of 3 is appropriate.

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

Conciseness5/5

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

The description is a single sentence with no extraneous words, clearly communicating the tool's purpose. It is perfectly concise.

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 tool with no parameters, annotations covering safety, and no output schema, the description is complete enough. It mentions both platform and adapter versions, which is sufficient. A score of 4 reflects it is well-rounded.

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 description coverage is 100% trivially. With no params, the description does not need to add param info, so a baseline of 4 is suitable.

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 shows current MCP platform and adapter versions, with a specific verb and resource. It is distinct from all sibling tools, which are mainly appointment, patient, financial, or other domain tools.

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?

No explicit guidance on when to use this tool vs alternatives is provided. However, given its unique purpose of showing version info, usage context is implied. A score of 3 indicates it is minimally adequate.

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

toolkit_infoA
Read-onlyIdempotent
Inspect

Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds valuable context by detailing exactly what information is returned (MCPs, connection status, accounts, catalog tool counts), which goes beyond the bare annotations. No contradictions found.

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

Conciseness5/5

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

The entire description is a single, front-loaded sentence that immediately names the action ('Returns the current toolkit state') and then enumerates the contents with a clear colon-separated list. There is no wasted wording or redundancy, and every phrase earns its place.

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

Completeness5/5

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

Given the tool is a simple zero-parameter read-only state inspector, the description is complete. It explicitly lists all four categories of returned information, making it fully self-contained despite the absence of an output schema. No further detail about return values is necessary to invoke it correctly.

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

Parameters4/5

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

The tool has zero parameters, and the rubric sets a baseline of 4 for parameterless tools. The description appropriately focuses on the output rather than input semantics, and there are no undocumented parameters to compensate for.

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 returns 'the current toolkit state' and enumerates the specific components: installed MCPs, connection status, connected accounts, and catalog tool counts. This distinguishes it from all siblings, which are operational tools (authenticate, connect, feegow_*) rather than state inspection.

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

Usage Guidelines4/5

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

The description clearly implies when to use it: when you need an overview of the toolkit's integrations and their status. It does not explicitly name alternatives or exclusions, but no sibling tool serves a similar purpose, so the context is unambiguous and sufficient for an agent to select it.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    C
    quality
    B
    maintenance
    Exposes the Feegow clinic management API as MCP tools for agents, enabling scheduling, patient management, and more via natural language.
    97
    MIT
  • F
    license
    -
    quality
    D
    maintenance
    Enables management of dental clinic appointments through full CRUD operations, including scheduling, status tracking, and patient information management. Supports local JSON storage and allows filtering by date range, appointment type, dentist, or patient name.
  • F
    license
    -
    quality
    D
    maintenance
    A comprehensive MCP server for integrating with the NINSAÚDE Clinic API, providing 45+ tools for healthcare management including patient records, appointments, medical records, billing, reporting, and patient surveys.
  • A
    license
    -
    quality
    D
    maintenance
    Enables interaction with a comprehensive healthcare management system through FastAPI, supporting operations for patients, doctors, appointments, medical records, telemedicine, lab orders, prescriptions, insurance claims, and more with JWT authentication.
    5
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.