Skip to main content
Glama
kharonx
by kharonx

list-calendars

list-calendars
Read-onlyIdempotent

List the signed-in user's calendars with pagination support. Use it to retrieve calendar IDs and metadata for Microsoft 365 automation.

Instructions

List the signed-in user's calendars.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cursorNoContinuation token (nextCursor of a previous truncated response). Continues that listing; other query inputs are ignored.
maxItemsNoMaximum items to return across pages (default 50, max 500). Pagination via @odata.nextLink is handled automatically; when the result is truncated, pass its nextCursor as cursor to continue.
Install Server

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered by structured data. The description adds the behavioral scope 'the signed-in user's calendars,' clarifying whose data is returned, which is beyond what annotations state. No additional behavioral detail (e.g., result freshness, defaults, or error behavior) is provided, but the lower bar for annotation-covered tools makes this adequate.

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

Conciseness5/5

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

A single sentence, 'List the signed-in user's calendars,' contains zero filler and front-loads the verb before the resource. The schema handles parameter documentation, so the description's brevity is appropriate rather than under-specified.

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

Completeness4/5

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

For a low-complexity read-only tool with zero required parameters and fully self-documenting schema, the description plus annotations cover everything needed to invoke it correctly. The absence of an output schema means the return shape of calendar objects is undocumented, and no tool-level mention of pagination exists (though it is well covered in the schema parameter descriptions), leaving minor gaps.

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

Parameters3/5

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

Schema description coverage is 100%: both cursor and maxItems have detailed descriptions in the input schema, including the continuation-token semantics and the pagination behavior via @odata.nextLink. The tool description itself adds no parameter information, but the baseline of 3 applies since the schema carries the full burden and does so well.

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

Purpose4/5

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

The description uses a specific verb ('List') and a specific resource ('the signed-in user's calendars'), making the core function immediately clear. The scope qualifier 'signed-in user's' distinguishes this from shared-mailbox or site-oriented tools, and 'calendars' (rather than events) separates it from list-calendar-events. However, it stops short of explicitly naming sibling tools it is not, so differentiation is implicit rather than stated.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus the many calendar-related siblings such as get-calendar, get-calendar-view, list-calendar-events, or get-calendar-event. No exclusions or alternative routing are given, leaving an agent to infer selection purely from the tool name. Given the high ambiguity among sibling calendar tools, this is a notable gap.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kharonx/mcp_gateway'

If you have feedback or need assistance with the MCP directory API, please join our Discord server