DietBox
Server Details
Patient, prescription, anthropometry, scheduling, chat and food diary management for dietitians.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- mcp-dir/dietbox-mcp
- GitHub Stars
- 0
- Server Listing
- DietBox MCP
TDQS
Scored across 42 tools
The tools are largely distinct, with each resource having specific actions (list, get, write, delete). Some potential overlap exists between dietbox_get_profile and dietbox_get_nutritionist, but descriptions clarify their different scopes. Overall, an agent can usually pick the right tool without confusion.
Naming conventions are mixed: some tools follow a resource_action pattern (e.g., dietbox_agenda_list) while others use action_resource (e.g., dietbox_list_diario, dietbox_list_goals). Additionally, write tools are inconsistent: some use write_create/write_update and others just write. This reduces predictability.
With 42 tools, the count is far beyond the typical well-scoped range. Many tools are flattened actions from a single resource (e.g., five tools for anamnesis actions), inflating the list. This makes the tool surface heavy and harder to navigate efficiently.
The tool surface covers the main Dietbox resources (patients, anamnesis, anthropometry, prescriptions, agenda, chat, goals, finance). However, significant gaps exist: agenda has no update/delete, anthropometry lacks update, goals have no write capability, and prescriptions lack update/delete. Meal plans are intentionally read-only due to API limitations, which is documented but still a gap.
Available Tools
42 toolsauthenticateAIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| token | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavior beyond the annotations: config header yields a permanent connection, while passing a token yields a session-only login, and no args returns a link. It does not fully spell out side effects or success/failure return values, but annotations already cover idempotency and non-destructiveness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and front-loaded, with no fluff, but the long single sentence with parenthetical clauses and multiple alternatives could be structured into clearer separate instructions. Still, every part adds necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter auth tool with no output schema, it covers the no-arg return (the link), the token-paste path, and the persistent-config alternative. It doesn't state the response on a token success/failure, but the invocation guidance is sufficient for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, the description carries the full burden for the optional `token` parameter. It explains that token is a JWT/access token pasted by the user and how to pass it, compensating well for the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as MCP.AI authentication for IDE agents, with a concrete browser-login + access-token flow and two invocation paths (no args for a link, token for login). This specific verb+resource is unambiguous and easily distinguished from the unrelated calculo_* sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly differentiates the persistent config-header approach ('best... permanent, non-expiring') from the session-only paste/login path, and states exactly when to call with no args versus with { token }. This gives the agent clear selection criteria for both setup and invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connectARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this is read-only, idempotent, and non-destructive. The description adds useful behavioral detail beyond that by specifying the two main response states: authenticated:true with empty pending[] when all providers are connected, and connect_url plus per-install URLs when credentials are missing. This helps an agent predict what to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, front-loads the core purpose, and then adds only the essential conditional details. Every sentence contributes meaningful information, and there is no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only status tool with no output schema, the description is complete enough. It tells the agent what information will be returned, what the success condition looks like, and what happens when credentials are missing. The low complexity means no additional guidance is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description does not need to explain any input semantics. The baseline of 4 applies because there is no parameter burden at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: returning connection status and URLs. It distinguishes connect from its sibling authenticate by framing it as a status/read operation rather than an action, and the conditional output descriptions reinforce this.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear that this is the tool to call when checking connection state or getting URLs. It does not explicitly mention alternatives like authenticate, but the context strongly implies connect is for status checking rather than initiating authentication, so usage is clear without being fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_agenda_listARead-onlyIdempotentInspect
Read schedule/agenda in Dietbox. Actions: list (filter by date range/patient), summary (today's overview).
[Flattened action: list]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| start | No | ||
| account | No | ||
| timezone | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior, which the description correctly aligns with ('Read'). The description adds value by disclosing bulk support via 'patient_ids' and the ability to filter by date range, which are behavioral traits beyond what annotations provide. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences, front-loading the core purpose. It could be slightly tighter by removing the redundant '[Flattened action: list]' line, but overall it is efficient and avoids unnecessary detail. Every sentence contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of 6 optional parameters and no output schema, the description covers core functionality (listing with filters, bulk support) but misses details on return format, pagination, timezone handling, and the 'account' parameter. For a read-only tool with good annotations, it is adequate but leaves gaps in operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining that 'start' and 'end' relate to date range filtering, 'patient_id' filters by patient, and 'patient_ids' enables batch execution. However, the 'account' and 'timezone' parameters are not explained, and the format of date strings is omitted. The description adds meaning for 4 of 6 parameters but lacks completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Read schedule/agenda in Dietbox' and specifies filtering by date range/patient, making the tool's purpose specific and distinct from the sibling tool 'dietbox_agenda_summary' which handles summaries. The verb 'Read' plus resource 'agenda' and the explicit mention of filtering provide a clear, actionable purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing agenda items and mentions bulk support, but does not explicitly state when to use this tool versus the alternative 'dietbox_agenda_summary' or when not to use it. There is no guidance on prerequisites or conditions, so the guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_agenda_summaryCRead-onlyIdempotentInspect
Read schedule/agenda in Dietbox. Actions: list (filter by date range/patient), summary (today's overview).
[Flattened action: summary]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| start | No | ||
| account | No | ||
| timezone | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is clear. The description adds that it supports batched execution via patient_ids, which is useful but does not contradict or substantially extend 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the core purpose, and uses bullet-like structure to list actions and bulk support. It does not waste words, though the dual-action mention is slightly confusing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 6 parameters and no output schema, the description provides basic context (actions, bulk support) but lacks details such as what the summary includes, timezone handling, account specification, and how the tool differs from the sibling list tool. Adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It mentions 'filter by date range/patient' and 'accepts patient_ids for batched execution', providing meaning for start, end, patient_id, and patient_ids. However, account and timezone parameters are not explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Read schedule/agenda in Dietbox' but then confusingly mentions two actions: list and summary, with a note 'Flattened action: summary', implying the tool may only do summary. This ambiguity about whether it supports both modes or just summary reduces clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus sibling 'dietbox_agenda_list' or 'dietbox_agenda_write'. Although it mentions 'list' and 'summary', it does not clearly differentiate the use cases or recommend alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_agenda_writeAInspect
Create a new event/appointment in the Dietbox agenda. Requires Start and End as ISO datetime strings. Timezone defaults to America/Sao_Paulo (IANA format). Valid Tipo values: "consulta" (appointment), "retorno" (follow-up), "bloqueio" (block).
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| end | Yes | ||
| tipo | No | consulta | |
| start | Yes | ||
| titulo | No | ||
| account | No | ||
| timezone | No | America/Sao_Paulo | |
| todo_dia | No | ||
| descricao | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are present (readOnlyHint=false, destructiveHint=false), so the bar is lower. The description adds context about mutation ('create'), bulk support, and timezone default, but does not disclose permissions, rate limits, or other behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with no wasted words. It is front-loaded with the purpose and then provides key usage details in a structured manner.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with 10 parameters and no output schema, the description covers essential aspects but lacks information about return values, idempotency, and full parameter semantics. It is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains start/end format, timezone, valid Tipo values, and bulk support via patient_ids. However, many parameters (account, titulo, todo_dia, descricao, patient_id) are left unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new event/appointment in the Dietbox agenda.' It uses a specific verb and resource, and distinguishes itself from siblings like dietbox_agenda_list and dietbox_agenda_summary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions required parameters (Start, End as ISO datetime strings), valid Tipo values, and bulk support. However, it does not explicitly state when to use this tool versus alternatives, nor does it 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.
dietbox_anamnese_deleteADestructiveInspect
Remove uma anamnese do Dietbox. Ação irreversível.
Bulk support: accepts anamnesis_ids, patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anamnesis_id | Yes | ||
| anamnesis_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds 'irreversible' and bulk support beyond annotations (destructiveHint=true). Could mention impact on related data, but adequate for a delete tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with key action, no fluff. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers essential deletion behavior and bulk capability. However, lacks error handling, prerequisites, and detailed parameter interaction, especially given 5 parameters and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description only briefly mentions anamnesis_ids and patient_ids for batch execution. Does not explain how parameters interact, leaving ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it removes an anamnese from Dietbox, mentions irreversibility and bulk support. Distinguishes from sibling tools like dietbox_anamnese_get, list, write_create, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context for use (irreversible deletion, bulk support). Lacks explicit when-not-to-use or alternatives, but given sibling tools, it's clear this is the delete operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_anamnese_getCRead-onlyIdempotentInspect
Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated), get (by ID), get_latest (most recent for patient).
[Flattened action: get]
Bulk support: accepts patient_ids, anamnesis_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| search | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anamnesis_id | No | ||
| anamnesis_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds moderate value by mentioning bulk support and pagination, but does not disclose details like rate limits 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences, front-loading the purpose. The inclusion of '[Flattened action: get]' is slightly distracting but does not severely impact clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 undocumented parameters, no output schema, and no parameter enums, the description lacks essential details about pagination, bulk behavior, and return format, leaving significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only mentions bulk parameters generically without explaining each parameter's purpose, syntax, or constraints. This fails to compensate for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads anamnesis records and lists actions (list, get, get_latest), but it does not differentiate from sibling tools like dietbox_anamnese_list and dietbox_anamnese_get_latest, causing potential confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus its siblings (e.g., dietbox_anamnese_list, dietbox_anamnese_get_latest). The presence of overlapping sibling tools without explanation merits a low score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_anamnese_get_latestARead-onlyIdempotentInspect
Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated), get (by ID), get_latest (most recent for patient).
[Flattened action: get_latest]
Bulk support: accepts patient_ids, anamnesis_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| search | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anamnesis_id | No | ||
| anamnesis_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent. Description adds bulk support behavior (patient_ids, anamnesis_ids) which is not in annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is somewhat verbose with action list and flattened note, but not overly long. Could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters and no output schema, the description lacks details on return values, pagination, and parameter usage, leaving significant gaps for agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description only mentions bulk parameters without explaining individual fields like skip, take, search, account, or their defaults. Fails to compensate for missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads anamnesis records and specifies the action get_latest for the most recent record per patient. It distinguishes from sibling tools like list and get.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (for most recent anamnesis) but does not explicitly state when not to use or provide alternatives. No mention of excluding writing or deletion operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_anamnese_listCRead-onlyIdempotentInspect
Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated), get (by ID), get_latest (most recent for patient).
[Flattened action: list]
Bulk support: accepts patient_ids, anamnesis_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| search | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anamnesis_id | No | ||
| anamnesis_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so safety is covered. The description adds information about bulk support and pagination (skip/take) but also introduces confusing 'actions' that imply non-list operations. No contradictions. Additional context is moderate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is short but includes redundant listing of get/get_latest actions that are not relevant to this tool. The 'Flattened action: list' adds confusion. Could be more concise and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 0% schema coverage, no output schema, and 8 parameters, the description lacks essential details like return format, pagination behavior, and parameter semantics. Incomplete for a tool with this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so description must compensate. It only mentions patient_ids and anamnesis_ids for batched execution, leaving skip, take, search, account, patient_id, anamnesis_id unexplained. Insufficient explanation for 8 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it reads anamnesis records, but also lists get and get_latest as actions, which are separate sibling tools. This creates ambiguity about whether this tool handles only listing or also retrieval. The 'Flattened action: list' note attempts to clarify but is confusing. Purpose is somewhat clear but not distinct from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus dietbox_anamnese_get or dietbox_anamnese_get_latest. The description mentions bulk support and pagination but does not advise on selection criteria. Agent gets no help choosing among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_anamnese_write_createBInspect
Create or update an anamnesis (health history questionnaire) in Dietbox. Actions:
create: cria nova anamnese. Obrigatório: patient_id. Opcional: descricao, texto_livre (HTML), tipo (1=completa default, 2=simplificada), data (ISO), overrides (map com qualquer campo extra: fuma, diabetes, medicamentos, alergias, ...).
update: atualiza uma anamnese existente. Obrigatório: anamnesis_id. Demais campos sobrescrevem os atuais. Retorna { id } da anamnese criada/atualizada.
[Flattened action: create]
Bulk support: accepts patient_ids, anamnesis_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| tipo | No | ||
| account | No | ||
| descricao | No | ||
| overrides | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| texto_livre | No | ||
| anamnesis_id | No | ||
| anamnesis_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false and destructiveHint=false. The description adds that it returns { id } and supports bulk operations, but does not discuss auth, rate limits, or effects of overrides beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is reasonably structured with bullet points for actions and parameters. However, it includes a confusing technical note '[Flattened action: create]' and could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers essential aspects: actions, required/optional fields, bulk support, and return value. Lacks clarification on sibling tool differentiation and full parameter details, but adequate for a write tool with no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains several parameters (patient_id, descricao, texto_livre as HTML, tipo values, data as ISO, overrides as map) but omits the 'account' parameter and does not fully cover all schema properties, given 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates or updates an anamnesis and lists the two actions with their required fields. However, it does not distinguish this tool from the sibling 'dietbox_anamnese_write_update', which may cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance on when to use create vs update (required patient_id vs anamnesis_id) and mentions optional fields. Lacks context on when to choose this tool over the write_update sibling or any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_anamnese_write_updateAInspect
Create or update an anamnesis (health history questionnaire) in Dietbox. Actions:
create: cria nova anamnese. Obrigatório: patient_id. Opcional: descricao, texto_livre (HTML), tipo (1=completa default, 2=simplificada), data (ISO), overrides (map com qualquer campo extra: fuma, diabetes, medicamentos, alergias, ...).
update: atualiza uma anamnese existente. Obrigatório: anamnesis_id. Demais campos sobrescrevem os atuais. Retorna { id } da anamnese criada/atualizada.
[Flattened action: update]
Bulk support: accepts patient_ids, anamnesis_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| tipo | No | ||
| account | No | ||
| descricao | No | ||
| overrides | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| texto_livre | No | ||
| anamnesis_id | No | ||
| anamnesis_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it specifies the return structure ({id}), bulk support via patient_ids/anamnesis_ids, the nature of overrides as a map with example keys, and default values for tipo and data. It also indicates that update overwrites existing fields. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections for actions, required/optional fields, and bulk support. It is concise but covers all necessary details. The line '[Flattened action: update]' is somewhat confusing but does not severely impact readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (10 parameters, combined create/update actions, no output schema), the description covers key aspects: return value, parameter explanations, actions with required fields, and bulk. It could be more thorough on edge cases (e.g., what happens if both patient_id and anamnesis_id are provided), but overall it is quite complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates excellently. It explains the conditional requirements (patient_id vs anamnesis_id), the meaning of 'tipo' (1=completa, 2=simplificada), 'texto_livre' as HTML, 'data' as ISO, and 'overrides' as a map for extra fields with examples. This adds essential meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates or updates an anamnesis in Dietbox and details the two actions. However, it lacks explicit differentiation from the sibling 'dietbox_anamnese_write_create' tool, which likely only creates. The verb+resource combination is 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes required fields per action (patient_id for create, anamnesis_id for update) and optional fields. However, it does not provide guidance on when to use this combined tool versus the separate create tool, nor any context about prerequisites or alternatives. The usage guidance is functional but incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_antropometria_deleteADestructiveInspect
Delete an anthropometric evaluation from Dietbox. This is irreversible.
Bulk support: accepts anthropometry_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| anthropometry_id | Yes | ||
| anthropometry_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds 'irreversible' beyond the destructiveHint=true annotation, and mentions bulk execution support. Annotations already indicate destructiveness, so the description adds value by specifying irreversibility and batch capability.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and irreversibility. No unnecessary words—every sentence adds essential information (operation, irreversibility, bulk support).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output schema, so description should clarify return behavior or confirmation. It misses details on success response (e.g., deleted count or confirmation). The optional 'account' parameter is unexplained, leaving a gap for nested context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage, and the description partially compensates by explaining 'anthropometry_ids' for bulk, but does not describe 'anthropometry_id' or the optional 'account' parameter. The required parameter is left without semantic context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Delete an anthropometric evaluation from Dietbox' with a specific verb and resource. It distinguishes from sibling tools like dietbox_antropometria_get or dietbox_antropometria_list by indicating it is the deletion operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for deletion and notes irreversibility, but does not explicitly contrast with other anthropometry tools like write or get. It does include bulk support guidance via 'anthropometry_ids', which helps when to use the batched parameter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_antropometria_getBRead-onlyIdempotentInspect
Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo), get (by ID), get_latest (current measurements).
[Flattened action: get]
Bulk support: accepts patient_ids, anthropometry_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| tipo | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anthropometry_id | No | ||
| anthropometry_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true. Description adds useful context about flattened action 'get' and bulk support via arrays, which enhances the behavioral understanding 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise but includes a redundant bracketed note '[Flattened action: get]' and mixes actions with bulk support. Could be streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, no output schema, and no schema descriptions, the description is incomplete. It does not explain pagination parameters, tipo filtering, or return value format. The tool needs more details for safe agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. It explains patient_ids and anthropometry_ids for bulk, but fails to describe skip, take, tipo, account, patient_id, anthropometry_id. Most parameters remain undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Read anthropometric evaluations' and lists specific actions (list, get, get_latest) and bulk support. However, the tool name 'get' combined with multiple actions and the tag '[Flattened action: get]' may cause slight confusion with sibling tools like dietbox_antropometria_list and dietbox_antropometria_get_latest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this combined tool versus the separate sibling tools for listing and getting latest. No when-to-use or when-not-to-use advice is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_antropometria_get_latestBRead-onlyIdempotentInspect
Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo), get (by ID), get_latest (current measurements).
[Flattened action: get_latest]
Bulk support: accepts patient_ids, anthropometry_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| tipo | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anthropometry_id | No | ||
| anthropometry_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent. The description adds that it supports batched execution via patient_ids and anthropometry_ids, but does not discuss pagination behavior, error cases, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short but includes a redundant list of actions and a bracketed note. It could be more streamlined by focusing solely on the get_latest functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, no output schema, and no enums, the description is incomplete. It lacks explanation of pagination, tipo filtering for get_latest, and return format, relying on schema which has no descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. It mentions patient_ids and anthropometry_ids for bulk support, but does not explain skip, take, tipo, account, or patient_id individually, leaving many parameters semantically unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it reads anthropometric evaluations and specifically retrieves 'get_latest (current measurements)', which is clear. However, it also lists other actions (list, get) making it slightly ambiguous about the exact scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Actions: list, get, get_latest' and then specifies '[Flattened action: get_latest]', implying this tool is for latest measurements. It does not explicitly exclude sibling tools or provide clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_antropometria_listBRead-onlyIdempotentInspect
Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo), get (by ID), get_latest (current measurements).
[Flattened action: list]
Bulk support: accepts patient_ids, anthropometry_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| tipo | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| anthropometry_id | No | ||
| anthropometry_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description's 'Read' aligns. It adds value by detailing pagination (skip/take), filtering (tipo), and bulk execution support, which are not captured in annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (3 sentences) and front-loaded with the core action. However, listing multiple actions (list, get, get_latest) when only list is active adds minor redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, no output schema, and no enum hints, the description should provide more context on how parameters interact (e.g., difference between patient_id and patient_ids, or anthropometry_id vs. ids). The bulk support is noted, but overall completeness is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate but only briefly mentions 'paginated' and 'filter by tipo' and bulk support with patient_ids/anthropometry_ids. It does not explain each of the 8 parameters individually, leaving gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads anthropometric evaluations and mentions list with pagination and filtering. It distinguishes from sibling get and get_latest tools by including a 'Flattened action: list' note, though listing multiple actions 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.
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 alternatives like get or get_latest. It implies batch usage through bulk support but lacks direct guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_antropometria_writeAInspect
Create a new anthropometric evaluation in Dietbox. Required: patient_id, weight (kg, 0.1-1000), height (meters, 0.1-3.0). Type: 1=physical evaluation (default), 4=bioimpedance. All measurement fields (circumferences, skinfolds, bioimpedance) default to null.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| type | No | ||
| height | Yes | ||
| weight | Yes | ||
| account | No | ||
| patient_id | Yes | ||
| description | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false, consistent with the creation behavior. The description adds value by noting that all measurement fields default to null, providing clarity on initialization. No contradictions with annotations are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using three short sentences to convey purpose, required parameters, type options, and bulk support. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters and no output schema, the description covers the essential purpose, constraints, and bulk capability. However, it lacks explanation of optional parameters (date, description, account) and does not describe the return value, leaving some gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description carries full burden. It explains the required parameters (patient_id, weight, height) with units and ranges, and the type parameter with values. However, it does not cover optional parameters like date, description, and account, leaving some ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Create a new anthropometric evaluation in Dietbox', clearly identifying the verb (create) and resource (anthropometric evaluation). This distinguishes it from sibling tools like dietbox_antropometria_get, dietbox_antropometria_list, and dietbox_antropometria_delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies required parameters (patient_id, weight, height) with formats and ranges, and explains the 'type' field (1=physical evaluation, 4=bioimpedance). It also mentions bulk support via patient_ids. However, it does not explicitly state when not to use this tool or compare it with alternatives, though no direct alternative exists among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_chat_listBRead-onlyIdempotentInspect
Read chat conversations in Dietbox. Actions: list (conversations, filter by patient/unread), messages (message history for patient).
[Flattened action: list]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| take | No | ||
| unread | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and not destructive. The description adds valuable behavioral traits: bulk support via patient_ids and filtering by patient/unread. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes redundant terms like '[Flattened action: list]' and mixes actions (list/messages) which could be clearer. It front-loads the purpose but could be more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and 0% schema coverage, the description should explain return format and usage details. It mentions listing and messages but lacks output structure, pagination hints (take), and relationship to sibling chat tools. Incomplete for practical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. The description clarifies that 'patient_id' and 'unread' filter results, and 'patient_ids' enables batch execution, but 'take' and 'account' are unexplained. This leaves significant gaps for a 5-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Read chat conversations' and lists actions (list, messages), clearly indicating it retrieves chat data. The tool name and sibling 'dietbox_chat_messages' help distinguish listing from messages, though the inclusion of both actions in the description creates slight ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for listing conversations or message history but does not explicitly differentiate from sibling 'dietbox_chat_messages' or provide when-not guidance. No alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_chat_messagesBRead-onlyIdempotentInspect
Read chat conversations in Dietbox. Actions: list (conversations, filter by patient/unread), messages (message history for patient).
[Flattened action: messages]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| take | No | ||
| unread | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and destructiveHint, so description adds value by revealing two action types (list/messages) and bulk execution with patient_ids. This supplements the safety profile with operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is short but includes an unclear line '[Flattened action: messages]' that adds confusion. Information is front-loaded but could be more concise and jargon-free.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no output schema, and no enums, description covers overall purpose and main actions but lacks details on pagination, sorting, return format, and parameter specifics. The 'flattened action' remark is unhelpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and description only partially compensates by mentioning 'filter by patient/unread' and 'patient_ids' for bulk. Parameters take, account, and patient_id are not explained, leaving gaps in understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description specifies verb 'Read' and resource 'chat conversations', and lists two distinct actions (list conversations and get messages), making the purpose clear. However, it does not differentiate from the sibling tool dietbox_chat_list, which likely has overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool over alternatives like dietbox_chat_list or dietbox_chat_write. The description only states what it does, not when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_chat_writeCInspect
Send a chat message to a patient in Dietbox. Pass message data as a JSON string.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| account | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate it's not read-only (readOnlyHint=false) and not destructive. The description adds no extra behavioral context (e.g., whether confirmation is returned, authentication needs, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very concise (two sentences) and front-loaded with the key action. However, it could be slightly more structured to include parameter hints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 2 parameters, no output schema, and minimal annotations, the description is incomplete. It lacks details on the JSON structure, the account parameter, and the response (e.g., success/failure).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. It indicates 'data' should be a JSON string but doesn't specify its expected structure (e.g., message content, patient ID). The optional 'account' parameter is not mentioned at all.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (send), the resource (chat message to patient), and the input format (JSON string). It separates from sibling tools like dietbox_chat_list and dietbox_chat_messages, though could more explicitly link the account parameter to the patient.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., dietbox_chat_list for viewing messages). No prerequisites or context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_get_goal_progressARead-onlyIdempotentInspect
Get goal progress for a Dietbox patient: completion percentages, streaks, recent activity.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| timezone | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate safe, idempotent read operation. Description adds that it returns specific progress data and supports batch execution via patient_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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. First sentence states purpose and outputs, second adds batch support. Information is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Describes core outputs and batch capability, but omits details on timezone and account parameters. Lacks explanation of return structure since no output schema, but coverage is fair.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage and 4 parameters, description only explains patient_ids for batch. Account and timezone parameters are left unexplained, so meaning is insufficiently added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states action (Get), resource (goal progress for Dietbox patient), and outputs (completion percentages, streaks, recent activity). Also mentions bulk support, distinguishing it from sibling tools like dietbox_list_goals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives (e.g., dietbox_list_goals). Does not mention prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_get_nutritionistBRead-onlyIdempotentInspect
Get the nutritionist's professional profile in Dietbox: CRN, specialties, signature, subscription details.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No |
TDQS
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, idempotent read. The description adds value by specifying the returned data fields (CRN, specialties, etc.), which enhances transparency beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, single-sentence, and front-loaded with the verb and resource. Every word adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool and rich annotations, the description covers the return fields but fails to explain the 'account' parameter or any prerequisites. It is minimally adequate but not fully complete for an agent to use confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'account' has no description in the schema (0% coverage). The tool description does not mention or clarify the parameter's purpose, leaving the agent without guidance on what value to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the nutritionist's professional profile and lists specific fields (CRN, specialties, signature, subscription details), making the purpose unambiguous and distinguishing it from siblings like dietbox_get_profile.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., dietbox_get_profile for patient profile). The description only states what it does, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_get_profileBRead-onlyIdempotentInspect
Get the nutritionist's Dietbox profile (perfil): name, email, subscription plan, features.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint=true, destructiveHint=false) already indicate a safe read operation. The description adds specific return fields, but no mention of permissions, rate limits, or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently states purpose and return data. However, it omits parameter documentation, making it slightly under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one parameter, the description lacks parameter explanation and output schema. The agent may be unsure how to use the 'account' parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not explain the 'account' parameter (e.g., its format or purpose). This is a critical gap for a single optional parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Get' and specific resource 'nutritionist's Dietbox profile', listing fields (name, email, subscription plan, features). Distinct from sibling tools like dietbox_get_nutritionist or dietbox_list_accounts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., dietbox_get_nutritionist). The description only states what it does, no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_list_accountsARead-onlyIdempotentInspect
List all Dietbox accounts linked to this install.
Returns each account's id, email, label, and an "is_default" flag (true when only one is linked — no need to pass account in other tools). When multiple accounts are linked, every other dietbox_* tool accepts an optional account parameter; pass id, email, or label (full or partial).
| Name | Required | Description | Default |
|---|---|---|---|
| account | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral details beyond annotations: it specifies the returned fields, explains the is_default flag's significance, and describes how the account parameter works across tools. No contradiction with annotations (readOnlyHint=true, destructiveHint=false).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loads the main purpose. Every sentence adds value, efficiently conveying what the tool does and how it relates to the broader toolset.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (1 optional parameter, read-only) and no output schema, the description fully covers what the tool returns and the meaning of the is_default flag. It provides enough context for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has an optional 'account' parameter, but the description does not clarify its purpose for this specific tool. It only mentions the account parameter in the context of other tools. With 0% schema description coverage, the description fails to compensate by explaining the parameter's role here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all Dietbox accounts linked to the install and specifies the returned fields (id, email, label, is_default). It also distinguishes from siblings by explaining how the account parameter relates to other dietbox_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use the tool (to list accounts) and provides context for the is_default flag and the account parameter usage in other tools. However, it does not explicitly state when not to use it or mention alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_list_diarioARead-onlyIdempotentInspect
List food diary entries for a Dietbox patient on a specific date. Shows what the patient ate, meal photos, comments.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | ||
| skip | No | ||
| take | No | ||
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, covering safety. The description adds context on output content (meals, photos, comments) but does not detail behavior like pagination, rate limits, or ordering. This adds some value but does not go beyond annotations significantly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary purpose. No redundant or irrelevant information. Every word adds value, fitting the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description gives a high-level overview of return content but omits pagination details and parameter explanations for skip/take/account. For a 6-parameter tool with 0% schema coverage, this is moderately complete but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains patient_id, date, and patient_ids (bulk), but not skip, take, or account parameters, which are undocumented. This leaves the agent guessing about pagination and account filtering, a notable gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists food diary entries for a specific patient and date, and indicates the content (food, photos, comments). This verb+resource structure is specific and distinguishes it from sibling tools, none of which list diary entries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions bulk support via patient_ids, which is a usage hint. However, it does not explicitly state when to use this tool vs alternatives or exclude cases. Given no sibling conflicts, this is minor; most usage is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_list_finance_transactionsCRead-onlyIdempotentInspect
List financial transactions in Dietbox: payments, receivables, filtered by date and status.
| Name | Required | Description | Default |
|---|---|---|---|
| paid | No | ||
| account | No | ||
| category | No | ||
| end_date | No | ||
| start_date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the tool is clearly a safe read operation. The description adds that it filters by date and status, which matches parameters, but does not disclose other behavioral details such as pagination, ordering, or limits. With annotations covering safety, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the primary purpose. It avoids unnecessary words but could benefit from slight expansion to cover parameters without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 optional parameters and no output schema, yet the description is sparse. It does not explain return values, pagination, or constraints on date formats. Given the lack of schema descriptions, more detail is needed for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It mentions filters by 'date' and 'status,' but does not explain all parameters (account, category are omitted). 'Status' is ambiguously mapped to the 'paid' boolean. The description adds some meaning but leaves significant gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'financial transactions,' specifying scope as 'payments, receivables' and filters by date and status. It distinguishes from sibling tools, as no other dietbox tool lists transactions. However, 'status' is not explicitly defined; only a 'paid' boolean parameter is present, 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.
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. While there is no direct sibling competitor for listing transactions, it does not mention related tools like dietbox_list_accounts for account-level queries. Usage context is entirely inferred from the name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_list_goalsARead-onlyIdempotentInspect
List nutrition/health goals for a Dietbox patient: weight targets, habit goals, custom objectives.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds detail about bulk support, but does not explain pagination (skip/take) or the relationship between patient_id and patient_ids parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with two sentences, front-loading the main purpose and then adding the bulk capability. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters and no output schema, the description covers the main purpose and a key feature (bulk), but lacks details on pagination, return format, and error handling, leaving gaps in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only mentions patient_ids and bulk support at a high level, leaving skip, take, account, and patient_id not described individually.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists nutrition/health goals for a Dietbox patient, specifying types like weight targets, habit goals, and custom objectives. It also mentions bulk support via patient_ids, distinguishing it from siblings like dietbox_get_goal_progress.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for listing goals and bulk execution, but does not explicitly state when to use this tool over alternatives (e.g., dietbox_get_goal_progress) or when to prefer singular patient_id vs patient_ids array.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_meal_planARead-onlyIdempotentInspect
Get the active meal plan (plano alimentar) for a patient in Dietbox. Returns the full list of meals with foods, portions, schedule, and day-of-week assignments. Each meal has: title (e.g. "Café da manhã"), time, text (food items with portions), observacao, and weekday flags.
NOTE: This is different from "prescriptions" — prescriptions in Dietbox are supplement/herbal medicine prescriptions. Use this tool for food/meal plans.
READ-ONLY (UPSTREAM LIMITATION): A API v2 do Dietbox não expõe endpoint público de criação/edição de plano alimentar — a interface web usa rotas MVC internas (dietbox.me/PlanoAlimentar/...) que exigem cookies de sessão do browser, inacessíveis programaticamente. Por isso não existe dietbox_meal_plan_write. Para criar/editar planos, use a UI web do Dietbox, ou considere webdiet_prescription_write (WebDiet) quando for opção. Caso a Dietbox venha a expor esse endpoint na API, o adapter será atualizado.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description elaborates on the upstream limitation (API v2 not exposing write endpoints), reinforcing the read-only nature. It also mentions bulk support via patient_ids, adding 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, differentiation, limitation, bulk support). While it is longer than necessary, every sentence adds value, and front-loading is effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (3 params, no output schema, many sibling tools), the description covers the return structure (fields of each meal), usage context, limitations, and batch capability. It provides a complete picture for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description adds meaning to patient_id and patient_ids (bulk support) but does not describe the 'account' parameter. It partially compensates for the schema gap but not fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves the active meal plan for a patient in Dietbox, specifying it returns meals with detailed fields. It explicitly differentiates from 'prescriptions' for supplements, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit guidance: distinguishes from prescriptions, explains that there is no write counterpart due to API limitations, and suggests alternatives (web UI or WebDiet). This helps the agent decide when to use this tool vs others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_patient_deleteADestructiveInspect
Permanently delete a patient from Dietbox. Irreversible.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description reinforces annotations (destructiveHint=true) by stating 'Permanently delete' and 'Irreversible'. Additionally, it adds behavioral context beyond annotations by mentioning bulk support via patient_ids.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states purpose and irreversibility, second adds bulk feature. Extremely concise and front-loaded with critical information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers core operation, irreversibility, and bulk support. Lacks explanation of the 'account' parameter and return value, but for a simple delete tool, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. The description explains patient_ids for batch execution, adding meaning beyond the schema. However, it does not describe 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.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Permanently delete a patient from Dietbox' with a specific verb and resource. Distinguishes from sibling tools by focusing on deletion, while other patient tools handle get, list, create, and update.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Indicates irreversible action ('Irreversible') and mentions bulk support for batched execution, providing context for use. However, it does not explicitly state when not to use this tool or mention alternatives like update for reversible changes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_patient_getBRead-onlyIdempotentInspect
Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail).
[Flattened action: get]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| order | No | ||
| search | No | ||
| account | No | ||
| is_active | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. Description adds bulk support and pagination context, but lacks details on authentication needs, rate limits, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three sentences with no redundant words. Front-loaded with core purpose, then actions, then bulk support. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters and no output schema, the description is insufficient. It does not clarify the output format, how list vs get differ, or how to use pagination parameters. Less than minimal viable for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only two parameters are partially explained: 'search' (by name) and 'patient_ids' (bulk). The other six parameters (skip, take, order, account, is_active, patient_id) are not described, despite zero schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Read patients in Dietbox' and mentions two actions (list, get) and bulk support. However, it does not differentiate from sibling tool dietbox_patient_list, which likely serves a similar listing purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like dietbox_patient_list or dietbox_patient_get for specific tasks. Does not state prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_patient_listCRead-onlyIdempotentInspect
Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail).
[Flattened action: list]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| order | No | ||
| search | No | ||
| account | No | ||
| is_active | No | ||
| patient_id | No | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false, so the tool is safe. The description adds behavioral context for bulk support and pagination, but lacks details on authentication, rate limits, or response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but includes redundant metadata like '[Flattened action: list]'. It is front-loaded with the main action, but structure could be clearer.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 8 parameters and no output schema, the description fails to cover error handling, return format, or full behavior. Annotations help with safety but not completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must explain parameters. It hints at 'search' for name search, skip/take for pagination, and patient_ids for bulk, but ignores order, account, is_active, and patient_id. This is insufficient for 8 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool reads patients, but it ambiguously includes both list and get actions, which conflicts with the existence of a separate sibling tool 'dietbox_patient_get'. The verb 'Read' is clear, but the dual functionality muddles the specific purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus siblings like 'dietbox_patient_get'. The description does not specify when to choose list vs get, nor does it mention prerequisites or constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_patient_write_createAInspect
Create or update patients in Dietbox. Actions: create (Name required, uses POST), update (partial fields, uses PATCH — no need to send all fields). Gender: Masculino or Feminino (converted to boolean for the API). Observation field for notes. Endereço, dados civis e de acesso (Address, Number, Complement, Neighborhood, State, City, Cep, MaritalStatus, Occupancy, Expire) são suportados em create e update — use os mesmos nomes de campo retornados pelo dietbox_patient (get); o adapter mapeia internamente a divergência de nomes do endpoint de update.
Phone / MobilePhone são normalizados automaticamente para E.164 em create e update (o endpoint update/PATCH /patients rejeita HTTP 400 "'Body Mobile Phone Value' is not in format 'E.164'" quando recebe número sem prefixo internacional). Envie "67991234567", "(67) 99123-4567" ou "+5567991234567" indistintamente — o adapter ajusta para "+5567991234567" antes de chamar a API. Para números não-brasileiros, envie já com "+{código}".
For destructive removal use dietbox_patient_delete.
[Flattened action: create]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| Cep | No | ||
| Cpf | No | ||
| City | No | ||
| Name | No | ||
| No | |||
| Phone | No | ||
| State | No | ||
| Expire | No | ||
| Gender | No | ||
| Number | No | ||
| Address | No | ||
| account | No | ||
| Birthday | No | ||
| IsActive | No | ||
| Occupancy | No | ||
| Complement | No | ||
| patient_id | No | ||
| MobilePhone | No | ||
| Observation | No | ||
| patient_ids | No | ||
| Neighborhood | No | ||
| MaritalStatus | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds significant behavioral context beyond annotations: explains HTTP methods, gender conversion to boolean, automatic phone normalization to E.164, and address field mapping. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-organized: front-loaded with main action, then details per topic. Slightly verbose but efficient given the complexity. Every sentence provides value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 22 parameters and no output schema, description covers create/update distinctions, data transformations, and bulk support. References sibling tool for deletion. Lacks explanation for a few parameters, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, description compensates well by explaining most parameters (Gender, Name, Observation, Phone, MobilePhone, address fields, patient_id, patient_ids). However, a few parameters like Email and Birthday are not detailed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Create or update patients in Dietbox' and distinguishes between create (POST) and update (PATCH) actions. It is specific about the verb and resource, and differentiates from sibling deletion tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use create (with Name required) vs update (partial fields). Tells agent to use sibling dietbox_patient_delete for destructive removal. Provides guidance on phone number format and address field consistency.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_patient_write_updateAInspect
Create or update patients in Dietbox. Actions: create (Name required, uses POST), update (partial fields, uses PATCH — no need to send all fields). Gender: Masculino or Feminino (converted to boolean for the API). Observation field for notes. Endereço, dados civis e de acesso (Address, Number, Complement, Neighborhood, State, City, Cep, MaritalStatus, Occupancy, Expire) são suportados em create e update — use os mesmos nomes de campo retornados pelo dietbox_patient (get); o adapter mapeia internamente a divergência de nomes do endpoint de update.
Phone / MobilePhone são normalizados automaticamente para E.164 em create e update (o endpoint update/PATCH /patients rejeita HTTP 400 "'Body Mobile Phone Value' is not in format 'E.164'" quando recebe número sem prefixo internacional). Envie "67991234567", "(67) 99123-4567" ou "+5567991234567" indistintamente — o adapter ajusta para "+5567991234567" antes de chamar a API. Para números não-brasileiros, envie já com "+{código}".
For destructive removal use dietbox_patient_delete.
[Flattened action: update]
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| Cep | No | ||
| Cpf | No | ||
| City | No | ||
| Name | No | ||
| No | |||
| Phone | No | ||
| State | No | ||
| Expire | No | ||
| Gender | No | ||
| Number | No | ||
| Address | No | ||
| account | No | ||
| Birthday | No | ||
| IsActive | No | ||
| Occupancy | No | ||
| Complement | No | ||
| patient_id | No | ||
| MobilePhone | No | ||
| Observation | No | ||
| patient_ids | No | ||
| Neighborhood | No | ||
| MaritalStatus | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only show readOnlyHint=false, but description adds many behavioral details: HTTP methods (POST/PATCH), gender conversion to boolean, phone normalization to E.164 with warnings about 400 errors, address field mapping, and bulk support. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections for actions, gender, address fields, phone normalization, and bulk. It front-loads the main purpose. Slightly lengthy but each sentence adds value. Could be trimmed slightly for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 22 parameters, no output schema, and 0% schema coverage, the description covers many aspects: dual action, normalization, address mapping, bulk. It lacks description of return values or error handling beyond the phone normalization warning, but overall is quite complete for a complex write tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, the description compensates by explaining critical parameters: Name (required for create), Gender (enum mapping to boolean), Phone/MobilePhone (E.164 normalization), and address fields (use same names as get). Also mentions Observation. Though not all 22 params are detailed, the most important ones are well-documented, making the tool usable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates or updates patients in Dietbox, distinguishing between create (POST, Name required) and update (PATCH, partial fields). It differentiates from sibling tools like dietbox_patient_delete for destructive removal. Purpose is specific and well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use create vs update (Name required for create, partial fields for update) and mentions bulk support via patient_ids. It explicitly refers to dietbox_patient_delete for destructive actions. Lacks explicit 'when not to use' but provides adequate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_prescription_getARead-onlyIdempotentInspect
Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient), get (full detail by ID), list_models (reusable templates).
[Flattened action: get]
Bulk support: accepts patient_ids, prescription_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| search | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| prescription_id | No | ||
| prescription_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. The description adds context about bulk execution via patient_ids and prescription_ids, and clarifies the flattened action is 'get'. This is sufficient beyond annotations, though no output schema is mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (three lines), front-loaded with critical scope differentiation, and each sentence adds unique value. No redundant or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 8 parameters and no output schema, the description omits pagination parameters (skip, take), search, account scoping, and return value expectations. The bulk support detail is helpful, but the tool's overall invocation context is insufficiently covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should explain parameters. It only mentions patient_ids and prescription_ids for batched execution, leaving skip, take, search, account, patient_id, and prescription_id unexplained. Most parameters lack meaning beyond schema names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads supplement/herbal medicine prescriptions, not meal plans. It explicitly distinguishes from dietbox_meal_plan and lists the specific actions (list, get, list_models).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises using dietbox_meal_plan for food plans, differentiating from this tool. However, it does not clearly specify when to use this tool versus sibling tools like dietbox_prescription_list or dietbox_prescription_list_models, leading to potential confusion despite mentioning the actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_prescription_listCRead-onlyIdempotentInspect
Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient), get (full detail by ID), list_models (reusable templates).
[Flattened action: list]
Bulk support: accepts patient_ids, prescription_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| search | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| prescription_id | No | ||
| prescription_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey read-only, idempotent, non-destructive behavior. Description adds that the tool handles supplements/herbal medicines and bulk operations, but it contradicts the schema by claiming 'get' action while the tool is named 'list' and standalone 'get' tool exists. The 'flattened action: list' note is confusing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is relatively short and front-loaded with purpose. Each part (differentiation, actions, bulk support) is discernible, though the action listing and flattening note introduce redundancy and confusion.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 0% schema description coverage and no output schema, the description provides essential context but lacks clarity on exact functionality (list vs. get). It covers bulk operations but omits pagination, search details, and return value expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has zero parameter descriptions, so the description must compensate. It explains patient_id/prescription_id for individual and patient_ids/prescription_ids for bulk retrieval. However, it does not explain skip, take, search, or account parameters, leaving significant gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states it reads supplement/herbal medicine prescriptions, distinguishing from meal plans. However, it lists multiple actions (list, get, list_models) that overlap with sibling tools, and the 'flattened action: list' notation 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear exclusion for meal plans (use dietbox_meal_plan) but does not direct users to sibling tools like dietbox_prescription_get for single prescriptions. The described actions contradict the separate existence of get and list_models tools, offering no guidance on when to use this list tool vs. those.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_prescription_list_modelsBRead-onlyIdempotentInspect
Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient), get (full detail by ID), list_models (reusable templates).
[Flattened action: list_models]
Bulk support: accepts patient_ids, prescription_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| skip | No | ||
| take | No | ||
| search | No | ||
| account | No | ||
| patient_id | No | ||
| patient_ids | No | ||
| prescription_id | No | ||
| prescription_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive. The description adds that the tool reads prescriptions and lists models, and supports bulk operations. This provides mild behavioral context beyond annotations, but nothing deep like auth needs or side effects. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively short and includes the key action and exclusions early. However, it redundantly lists actions and then says '[Flattened action: list_models]', which could be streamlined. Still, it is not overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema and 8 undocumented parameters, the description fails to explain what the tool returns or how to use most parameters. It also does not describe the format of the list or templates. This is inadequate for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% so description must compensate. It only mentions patient_ids and prescription_ids for bulk, ignoring skip, take, search, account, patient_id, prescription_id. Most parameters are unexplained, making it hard for an agent to know how to use them correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it reads supplement/herbal medicine prescriptions and lists models, and explicitly distinguishes from meal plans. However, it lists multiple actions (list, get, list_models) which may confuse the tool's specific purpose given the name 'list_models'. That said, it is clear enough that the tool handles listing of template models.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear exclusion (not meal plans, use dietbox_meal_plan) and mentions bulk support for batched execution. However, it does not explicitly guide when to use this tool over the sibling tools dietbox_prescription_list or dietbox_prescription_get, which have overlapping purposes. Usage context is implied but not fully clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_prescription_writeAInspect
Create a new supplement/herbal medicine prescription in Dietbox. For meal plans, use dietbox_meal_plan (read-only — Dietbox não expõe escrita via API).
Required: title (nome da prescrição) and patient_id. Without title the API returns 400 "'Title' deve ser informado / 'Title' não pode ser nulo".
"data" is a JSON string with the remaining prescription payload (Items, Orientations etc.); title and patient_id são mesclados automaticamente antes do POST.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | {} | |
| title | Yes | ||
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by explaining that title and patient_id are merged automatically before POST, mentions bulk execution support, and warns about API error (400) if title is missing. No annotation contradictions; it adds valuable behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, well-structured with bullet points and clear separations. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers required fields, bulk support, and error behavior. It lacks explanation of return values or response format, but for a write tool with no output schema, this is acceptable and fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description explains the key parameters: title (required), patient_id (required), data (JSON string), and patient_ids (bulk). However, the 'account' parameter is not explained, slightly reducing completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates a new supplement/herbal medicine prescription in Dietbox. It distinguishes from meal plans by explicitly directing to dietbox_meal_plan, providing clear purpose and resource identification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates when to use this tool (for prescriptions) vs alternatives (meal plans use dietbox_meal_plan). It mentions required fields and bulk support via patient_ids, but does not explicitly state when not to use it or provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_prontuarioARead-onlyIdempotentInspect
Get the clinical record (prontuario) for a Dietbox patient: medical history, notes.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds value by disclosing bulk execution support, which is a behavioral trait not in annotations. No contradictions. The description does not elaborate on rate limits or authentication, but annotations suffice.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no wordiness. The first sentence states the core purpose, and the second adds the bulk feature—both are essential. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read tool with no output schema, the description partially covers what the tool returns (medical history, notes) and bulk capability. However, it does not specify the response format for multiple vs. single patients, or mention any pagination or limits. Given moderate complexity (3 params, bulk support), more detail would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains patient_ids (for bulk) but does not describe patient_id (main identifier) or account (optional context). The implication that patient_id identifies the patient is weak. Two of three parameters lack any explanation beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets the clinical record (prontuario) for a Dietbox patient, listing specific contents (medical history, notes). This distinguishes it from siblings like dietbox_patient_get (patient profile) and dietbox_anamnese_get (anamnesis). The verb 'Get' is specific and the resource 'clinical record' is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit context for bulk usage ('accepts patient_ids for batched execution'), which helps an agent decide when to use the batch parameter. However, it does not mention when not to use this tool versus alternatives (e.g., dietbox_anamnese_get for anamnesis only), limiting differentiation guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dietbox_prontuario_writeAInspect
Update the clinical record (prontuario) for a Dietbox patient. Pass the text content directly (HTML supported). Returns 204 on success.
Bulk support: accepts patient_ids for batched execution.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| account | No | ||
| patient_id | Yes | ||
| patient_ids | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate non-read-only and non-destructive behavior. The description adds support for HTML and batch updates but does not clarify whether the update replaces or appends, nor mention authentication or side effects. Partial value 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences covering purpose, return value, and bulk capability. No extraneous information. Could be slightly more structured, but overall efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains success response and bulk capability but omits parameter details, required fields, and error handling. Given no output schema, more context is needed for a tool with 4 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema coverage, the description should explain all parameters. It only mentions 'text' and 'patient_ids' (implicitly), leaving 'patient_id' and 'account' undocumented. No details on formats, constraints, or relationships between parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('update'), the resource ('clinical record/prontuario'), and adds supporting details (HTML support, bulk execution, success code 204). The tool name and sibling 'dietbox_prontuario' imply this is the write counterpart, making purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions bulk support but does not explicitly state when to use this tool versus its read counterpart (dietbox_prontuario) or other write tools. No guidance on prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| action | No | search | |
| mcp_id | No | ||
| message | No | ||
| tool_id | No | ||
| arguments | No | {} | |
| immediate | No | ||
| tier_slug | No | ||
| prompt_body | No | ||
| prompt_slug | No | ||
| prompt_tool | No | ||
| prompt_vars | No | {} | |
| conversation | No | [] | |
| prompt_title | No | ||
| request_name | No | ||
| cancel_reason | No | ||
| cancel_comment | No | ||
| prompt_targets | No | ||
| report_context | No | ||
| prompt_category | No | ||
| request_details | No | ||
| prompt_description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses important behaviors: invoke runs an MCP even when it is not installed, does a one-off run without adding the MCP to the toolkit, returns a connect link when credentials are needed, returns a checkout/top-up link when payment is needed, and requires workspace owner/admin for write operations. The description enriches the annotations and does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with identity and the core flow, and nearly every sentence carries useful guidance. However, it is one dense, wall-of-text paragraph with mixed language ("pontualmente") and heavy inline emphasis, which makes the many action alternatives hard to scan and parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex 23-parameter, 14-action facade with no output schema, the description is remarkably complete: it covers the core flow, one-off invoke semantics, auth/credential/payment behavior, permission requirements, installed flags, the prompt library, and most action outcomes. The main gaps are the resume action and return-shape details for a few actions, but the overall guidance is sufficient for correct invocation in most cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description does a lot of compensating work: it maps action values such as search, describe, invoke, install, list_tools, publish_prompt, and explains tool_id, arguments, and prompt-related intent. However, several parameters and enum actions remain unexplained, including resume, limit, immediate, tier_slug, cancel_reason, report_context, conversation, request_name, and request_details, leaving agents under-specified for those paths.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as the official mcp.ai marketplace: the in-platform catalog of MCPs/tools and the way to run them. It states the core discovery→describe→invoke flow, distinguishes the prompt-library subdomain from the MCP flow, and makes it clear this is a marketplace orchestrator rather than one of the sibling calculator/authenticate tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: use install only to make an MCP permanent, prefer invoke for one-off use, use list_tools to see what is callable now, use subscribe/cancel for billing, and use request_mcp when nothing fits. It also explains what to do when invoke returns a connect link or checkout link, including retry behavior.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_bugAIdempotentInspect
Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | ||
| message | Yes | ||
| conversation | No | [] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry the safety profile with idempotentHint=true and destructiveHint=false. The description adds that conversation data is needed for reproduction, which is useful context. However, it does not disclose what happens after submission, such as whether a ticket is created or whether the report is asynchronous, though the annotations lower the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two tight sentences: the first states the purpose, the second gives the key usage instruction. There is no filler, repetition, or irrelevant detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter reporting tool with annotations already covering idempotency and destructiveness, the description is mostly sufficient. The main gaps are the unexplained `context` parameter and the absence of any indication of what the response or outcome will be, though no output schema is expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It only clarifies the `conversation` parameter via 'conversation array with recent messages,' leaving the required `message` and optional `context` undefined. The agent must guess at their intended content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the verb 'Report' and explicitly enumerates three targets: 'bug, missing feature, or send feedback'. This makes the tool's purpose unmistakable and easily distinguishable from the sibling calculo_* and authentication tools, which serve entirely different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description establishes a clear context: use when a user reports a problem or wants to provide feedback. It also adds practical guidance to 'Include the conversation array with recent messages for reproduction.' It does not name alternatives, but none of the sibling tools overlap with bug reporting, so exclusions are unnecessary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_versionARead-onlyIdempotentInspect
Show the current MCP platform and adapter versions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows this is a safe, non-mutating call. The description adds little beyond that—it names the output as versions but doesn't specify the format (e.g., semver strings, JSON object) or whether the output is human-readable. Since the annotations carry the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 9 words, front-loading the action ('Show') and the object ('version'). There is zero waste, and it fully conveys the tool's purpose within its scope. This is a model of conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only, idempotent tool with no output schema, the description is nearly complete. An agent can confidently invoke it without additional context. The only minor gap is that the return format is unspecified, but since there is no output schema, a brief note on the output structure (e.g., 'returns a plain-text summary') would elevate completeness. Still, the description is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is 100% (no properties). The description doesn't need to explain parameters. The baseline for zero-parameter tools is 4, and the description is consistent with that—it correctly implies that no input is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Show the current MCP platform and adapter versions.' This is a specific verb-resource pair that distinguishes it from sibling tools, which are all calculation or authentication tools. It could be slightly more explicit about what 'show' returns (e.g., a text summary vs. structured data), but the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this tool is for checking version information, which makes sense in contexts where an agent needs to confirm platform/adapter versions before proceeding. However, it does not explicitly state when to use this tool versus alternatives, nor does it mention whether version information is needed for authentication or compatibility checks. Given the sibling tools are all calculations, the usage context is reasonably clear, but not explicitly delineated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
toolkit_infoARead-onlyIdempotentInspect
Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description does not need to restate safety. It adds value by detailing what kind of state is returned, including connection status and account bindings, which helps the agent understand the tool's informational scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tightly packed sentence with the main action front-loaded, followed by a colon-delimited list of return contents. Every phrase earns its place with no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only introspection tool, the description fully covers what the agent needs to know before calling: what information it will receive. No output schema exists, but the description essentially provides a light output contract by enumerating the returned components.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty with zero parameters, and schema description coverage is 100%, so the description has no parameter burden. Per calibration, zero-parameter tools receive a baseline of 4; the description's output-focused content is more than sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Returns') and resource ('current toolkit state'), then enumerates exactly what is included: installed MCPs, connection status, connected accounts, and catalog tool counts. This is specific enough to distinguish it from computational siblings like calculo_* and action tools like authenticate or connect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys that this is the tool to call when an agent needs an overview or snapshot of the toolkit's current state. It does not explicitly list exclusion criteria or name alternatives such as show_version, but the context is clear enough for routine selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Related MCP Connectors
Patient, meal plan, prescription, chart and anthropometry management for dietitians.
Practitioner-led nutrition specialist. Access patient care profiles, dietitian notes & logs.
Client, workout, body composition, retention and finance management for personal trainers.
Scheduling, availability, clients, billing and CRM for appointment-based services.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenance56 tools for nutritionists to manage patients, meal plans, prescriptions, clinical records, and anthropometry via MCP clients like Claude and Cursor.MIT
- FlicenseAqualityBmaintenanceEnables pediatric CKD nutrition assessment by calculating PRNT energy/protein targets, evaluating dietary intake against those targets, and screening for PEW risk, with support for dialysis, vegetarian diets, and edema corrections.5-
- FlicenseNot gradedqualityBmaintenanceEnables users to log meals, track daily and weekly calorie intake, and manage diet records. Supports both local and network modes for flexible meal logging across devices.-
- AlicenseNot gradedqualityCmaintenanceEnables nutrition tracking via AI, allowing users to read food logs with macros, goals, and profile, log meals by text or photo, and access diary, subscription, diabetes, and wearable/glucose data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.