get_canchi
Get Can Chi for a given solar date
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Solar (Gregorian) date in YYYY-MM-DD format (e.g. 2026-04-18) |
Get Can Chi for a given solar date
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Solar (Gregorian) date in YYYY-MM-DD format (e.g. 2026-04-18) |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It fails to state whether the operation is read-only, what the return format is, or how errors are handled. For a simple getter, the lack of explicit safety or side-effect information leaves a gap.
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, front-loaded sentence with no filler. Every word contributes meaning, making it highly concise and easy to 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?
The tool is simple with one fully described parameter and no output schema. The description sufficiently conveys the operation, though a brief mention of the expected return type would make it fully complete. Still, the low complexity makes the current description 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?
The input schema provides 100% coverage for the only parameter, including format and an example, so the description does not need to add more. The baseline of 3 is appropriate as the description adds no additional semantic value 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 the action ('Get') and the resource ('Can Chi') with a specific scope ('for a given solar date'). This distinguishes it from sibling tools which handle lunar-solar conversions and lunar calendar days, leaving no ambiguity about its 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 when a Can Chi value is needed for a solar date, but it does not explicitly state when to avoid this tool or mention alternatives. Sibling tools are available but not referenced. The usage context is inferred rather than directly stated.
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.
Each tool has a clearly distinct purpose: converting between lunar and solar dates, getting Can Chi, retrieving lunar days for a month, and obtaining vegetarian days. There is no overlap in functionality.
All tool names follow a consistent verb_noun pattern in snake_case, such as 'convert_date_lunar2solar' and 'get_canchi'. The naming is predictable and uniform.
With 5 tools, the server is well-scoped for its purpose of Vietnamese calendar conversions and queries. Each tool serves a necessary function without being excessive or insufficient.
The tool set covers core functionalities: bidirectional date conversion, Can Chi, lunar days per month, and vegetarian days. Minor omissions like holiday lookup or more detailed lunar year queries are acceptable for a focused server.