whenna_best_times
Ranked best meeting times for a plan: contiguous blocks where the most participants are free, with who is free in each block.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| top | No |
Ranked best meeting times for a plan: contiguous blocks where the most participants are free, with who is free in each block.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| top | No |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds useful behavioral detail: the result is ranked, blocks are contiguous, and it reports who is free. This goes beyond the annotation and does not contradict it.
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 clear sentence, front-loaded with the verb and resource, and contains no filler or 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 simple two-parameter read-only tool, the description adequately explains the core purpose and output concept. It could be more explicit about the return format and the meaning of 'top', but overall it is complete enough for an agent to understand the tool's role.
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 schema has no parameter descriptions (0% coverage), so the description needs to compensate. It implies 'id' refers to a plan, but the 'top' parameter is only vaguely tied to 'Ranked' without explicitly stating it controls the number of results.
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: 'Ranked best meeting times for a plan' and specifies the core output: 'contiguous blocks where the most participants are free, with who is free in each block.' This distinguishes it from siblings like whenna_get_plan or whenna_lock_time.
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?
Usage context is implied by 'for a plan' but there is no explicit guidance on when to use this tool versus alternatives like whenna_get_plan or whenna_plan_next. No exclusions or alternative references are provided.
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 targets a distinct action in the scheduling workflow: creating plans, fetching plans, marking availability, viewing best times, locking times, setting location, and creating the next plan. No overlap in purpose.
All tools follow the consistent 'whenna_verb_noun' pattern in snake_case, making it easy to predict the tool for a given action.
With 7 tools, the set covers the essential operations for meeting scheduling without being excessive. Each tool serves a clear and necessary role.
The core workflow (create, fetch, mark availability, compute best times, lock, set place, plan next) is well-covered. However, there is no tool to update plan details (e.g., title, window) after creation, which is a minor gap.