getCancellationPolicyOptions
List valid values for a Stay's cancellation policy (cxPolicyId in updateStayOrganisationalData). Requires NOMADSTAYS_MCP_AGENT_TOKEN.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
List valid values for a Stay's cancellation policy (cxPolicyId in updateStayOrganisationalData). Requires NOMADSTAYS_MCP_AGENT_TOKEN.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds context the annotations do not: the required NOMADSTAYS_MCP_AGENT_TOKEN auth precondition. It says nothing about result size or ordering, which is a minor gap for a fixed enumeration list.
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 compact sentences, front-loaded with the purpose and followed by the cross-reference and auth note. No filler, no repetition of the title or annotations.
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, the description must convey what comes back, and 'List valid values' does so adequately for a simple enumeration endpoint. It also names the consuming field and the auth requirement, leaving only return formatting unspecified.
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?
There are zero input parameters, so the baseline is 4. The description still adds meaning by explaining what the returned values are for — they populate the cxPolicyId argument of another tool — linking output to a sibling's 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?
States a specific verb and resource ('List valid values for a Stay's cancellation policy') and disambiguates from the many other *Options siblings by naming the exact field it feeds (cxPolicyId in updateStayOrganisationalData). An agent can distinguish this from getRoomTypeOptions, getCurrencyOptions, etc. without opening any schema.
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 ties the tool to its consumer: it supplies valid values for cxPolicyId in updateStayOrganisationalData, which tells the agent exactly when to reach for it. It does not state any exclusions or prerequisites beyond that, so it stops short of a full when/when-not statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.