google-calendar-mcp
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool targets a distinct resource and action: calendars vs. events, list vs. get vs. search, and specific recurring-event tools are clearly separated from regular event tools. Descriptions further clarify any potential overlap, such as delete_recurring_instance versus delete_event.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern (list_, get_, search_, create_, update_, delete_), using snake_case throughout. Compound names like update_recurring_event and delete_recurring_instance are logical extensions of the pattern.
Tool Count5/512 tools is well within the ideal 3-15 range for a calendar server. Each tool addresses a meaningful aspect of calendar and event management without unnecessary redundancy or bloat.
Completeness4/5The set provides comprehensive event CRUD, recurring event handling, free/busy lookup, and color details. Minor gaps include no ability to create/delete calendars (only list and get), but the core calendar workflow is well covered.
Average 3.5/5 across 12 of 12 tools scored. Lowest: 2.8/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only states the basic functionality without disclosing any behavioral traits such as filtering semantics, results ordering, pagination, or authorization requirements. With no annotations provided, the description carries the full burden but fails to provide meaningful behavioral context beyond the purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no fluff. However, it is under-specified and lacks any structure or elaboration that would make it more useful, such as mentioning parameter combinations or return behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, no annotations, and no output schema, the description is too sparse. It does not explain how timeMin/timeMax, calendarId, or maxResults affect the search, nor what the response contains. The schema partially fills the gap, but the description itself provides minimal context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters have descriptions in the schema. The description text adds no extra meaning beyond the schema, but the baseline for high coverage is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches events by keyword, which is a specific verb+resource+method. It distinguishes from sibling list_events which likely lists events without keyword filtering, though it doesn't explicitly name an alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 alternatives. The description implies it is for keyword-based searching, but does not mention when to prefer it over list_events or get_event, or exclude 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.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must communicate behavioral traits. While 'delete' implies destructive action, it doesn't disclose whether the deletion is permanent, affects attendees (related to the 'sendUpdates' parameter), or how recurring events are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no wasted words. It effectively conveys the core action without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation, the description covers the primary purpose, but given the sibling 'delete_recurring_instance' and the 'sendUpdates' default, additional context would help. The lack of annotations and output schema leaves behavioral details undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for all three parameters, including the enum for 'sendUpdates'. The description itself adds no additional parameter semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb '削除' (delete) and resource 'カレンダーイベント' (calendar event), clearly identifying the operation. However, it doesn't distinguish between deleting a single event or a recurring series, and the sibling tool 'delete_recurring_instance' suggests a potential ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidelines are provided. The description doesn't explain when to use this tool versus 'update_recurring_event' or 'delete_recurring_instance', nor does it mention any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It only states 'updates' without disclosing permissions, error handling, partial update behavior, or return value. This is inadequate for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no wasted words. While brief, it is appropriately concise, though it forgoes structure for additional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (11 params, nested objects, no output schema, no annotations), the one-sentence description is insufficient. It lacks information on return values, required fields, and operational effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% parameter coverage, so the schema provides descriptions for all 11 parameters. The tool description adds no parameter semantics beyond the schema, warranting the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'updates an existing calendar event,' using a specific verb ('update') and resource ('existing calendar event'), distinguishing it from create/delete siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 vs alternatives like create_event or update_recurring_event. The description merely states the function without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only mentions the time period filter, but fails to disclose important behaviors like default sorting (startTime), max results, recurring event expansion (singleEvents), or default calendarId. This is insufficient for a complex listing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states the core purpose. It is concise, front-loaded, and contains no wasted words, even though it may be under-specified for other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 7 parameters, no annotations, and no output schema, this description is incomplete. It fails to mention usage context, default behaviors, or differentiation from search_events. While the schema covers parameters, the description does not help the agent decide when to invoke it or what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-level meaning beyond what the schema already provides; it only paraphrases the time range that is already described in timeMin/timeMax.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves a list of calendar events for a specified period, using a specific verb and resource. However, it does not distinguish this from the sibling tool 'search_events', which may also list events in a period.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need events within a date range ('指定した期間'), but it provides no explicit guidance on when to use this tool versus search_events or other sibling alternatives. No exclusions or alternative recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It simply states 'retrieve detailed information' without specifying read-only semantics, permission requirements, error behavior, or return format. The action 'get' is implied but not explicitly framed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence in Japanese that communicates purpose without redundancy. It is appropriately front-loaded with the verb and resource, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple get-by-ID tool with one parameter and no output schema. The description is minimally sufficient to understand the basic function but does not clarify what '詳細情報' includes or how errors are handled. Given low complexity, it meets the minimum viable threshold but lacks richer detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter 'calendarId' with a clear description and examples (e.g., 'primary' or email). The tool description adds no parameter-specific information, so it does not improve on the schema. Baseline 3 is appropriate given 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb '取得' (retrieve) with the resource '指定したカレンダー' (specified calendar), and specifies '詳細情報' (detailed information), clearly indicating a single calendar lookup rather than listing. This distinguishes it from sibling 'list_calendars'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for a specific calendar (指定した) but does not explicitly state when to use this tool versus alternatives like list_calendars or get_event. 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.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the key behavioral trait of deleting only a single occurrence rather than the entire recurring event, which is valuable. However, it does not mention any side effects (e.g., attendee notifications via sendUpdates), requirements, or whether the operation is reversible. The description adds some context beyond the schema but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately states the tool's core function. It is front-loaded with the action and scope, with no wasted words or redundancy. This is appropriately sized for the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 5 parameters including two alternative date/time identifiers (instanceDate and instanceDateTime), the description does not explain how to choose between them or what happens if both are provided. With no annotations and no output schema, the description leaves significant ambiguity about usage. It is not complete enough for an agent to reliably invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add any parameter-specific information; it does not clarify the relationship between instanceDate and instanceDateTime or explain when to use each. The schema already provides detailed parameter descriptions, but the tool description adds no extra semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: deleting only a specific instance of a recurring event. It uses a specific verb ('削除します') and resource ('定期イベントの特定のインスタンス'), and distinguishes itself from the sibling delete_event by emphasizing '1回分のみ' (only one occurrence).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for recurring events by mentioning '定期イベントの特定のインスタンス', but it does not explicitly state when to use this tool versus alternatives like delete_event for the whole series. There is no explicit when/when-not guidance or comparison with sibling tools, so the usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only states 'get detailed information', which largely repeats the tool name and provides no insight into error behavior, required permissions, or side effects. It does not add meaningful behavioral context beyond the obvious read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence in Japanese. It is front-loaded with the verb and resource, contains no fluff, and earns its place by clearly stating the primary function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with two clearly defined parameters, the one-line description is mostly sufficient. However, since there is no output schema, the description could optionally specify what 'detailed information' includes, but the simplicity of the tool and complete schema make the current description adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for eventId and calendarId. The tool description itself adds no parameter-level meaning, but the schema already fully documents both parameters, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb '取得' (retrieve) and resource '特定のイベント' (specific event), clearly distinguishing it from sibling tools like list_events or search_events. It unambiguously states the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving details of a specific event, but it does not explicitly contrast with alternative tools or mention when not to use it. No guidance on edge cases or prerequisites beyond the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full burden of behavior disclosure. It only states that it updates recurring events and supports three scopes; it does not mention side effects, permission requirements, how the scopes alter the recurrence series, or what happens to exceptions. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the primary purpose and followed by the key differentiator (three scopes). There is no redundant information; every sentence contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool's complexity (11 parameters, nested objects, no output schema), the description only provides a high-level overview. It does not explain how to use the scopes in practice, the relationship between scopes and instanceDate/instanceDateTime, or that certain parameters are required for specific scopes. The schema offers individual parameter descriptions, but the tool-level context is insufficient for an agent to invoke it correctly in varied scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-specific meaning beyond what the schema already provides (e.g., it mentions scopes but does not explain the instanceDate/instanceDateTime requirements). It neither enhances nor contradicts the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'updates a recurring event' (定期イベントを更新します) with a specific verb and resource. It further distinguishes itself from sibling tools like update_event by explicitly mentioning the three editing scopes ('this event only', 'all', 'this and following'), which is unique to recurring event handling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies the tool's use case (updating recurring events) and the supported scopes, providing clear context for when to use it. However, it does not explicitly mention alternatives or exclusions (e.g., 'use update_event for non-recurring events'), so it falls short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states it creates events and supports recurring events, but with no annotations provided, it does not disclose potential side effects such as sending invitations, required permissions, or how the created event is returned. The 'creates' verb indicates mutation, but richer behavioral context is absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the main purpose and then a key extension (recurring events). No fluff or redundancy; every word contributes value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema is rich and covers parameters, the description is thin given the tool's complexity (12 params, nested objects, no output schema). It does not mention return values, error behavior, or usage specifics like all-day vs timed events, leaving the agent without guidance except what the schema already provides.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 12 parameters are fully documented in the schema, including descriptions for each, so the schema covers parameter semantics. The description adds nothing beyond mentioning recurring events, which relates to the recurrence parameter but does not add new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('create') and resource ('calendar event'), and also highlights the capability to create recurring events. This distinguishes it from sibling tools like update_event and delete_event.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating new calendar events, including recurring ones, but does not explicitly state when to use this tool versus alternatives or provide any exclusions. Guidance is minimal but not misleading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It conveys that this is a read operation retrieving availability for a period and multiple calendars, but it does not disclose the response format, limitations, or that it returns busy/free markers rather than event details. This is a minimal but acceptable level of transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise, consisting of two sentences that front-load the primary purpose and add the multi-calendar detail. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the full schema coverage and the simple nature of a free/busy query, the description provides the essential context. However, since there is no output schema, it could have described the return structure more explicitly, but the mention of free and occupied time slots is mostly sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for all four parameters, so the baseline of 3 applies. The description adds no parameter-specific syntax or details beyond what the schema already offers, only loosely aligning 'specified period' with timeMin/timeMax and 'multiple calendars' with calendarIds.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the function: retrieving free/busy information for a specified period. It also mentions the ability to check time slots where multiple calendars are occupied, which clearly distinguishes it from sibling tools like list_events or search_events.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its use case (checking availability across calendars) but provides no explicit guidance on when to use it versus alternatives, nor any exclusions. It could be improved by contrasting with list_events or search_events.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full transparency burden. It states that the list includes only calendars the user can access, providing some scope context, but it does not disclose details about return structure, ordering, or any side effects (though 'list' implies read-only).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence in Japanese, front-loaded with the primary action. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter listing tool with no output schema, the description sufficiently captures the core functionality. It lacks explicit mention of return format, but the simple nature of listing calendars makes this acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so the description need not explain parameter usage. The baseline of 4 is appropriate; there is nothing to add.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves the list of calendars available to the user. It uses a specific verb ('取得します' – retrieves) and resource ('カレンダーの一覧' – list of calendars), and distinguishes itself from sibling 'get_calendar' by focusing on listing all accessible calendars rather than a single one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided about when to use this tool versus alternatives. The verb 'list' and the scope 'accessible' imply usage for enumerating calendars, but no direct comparison to 'get_calendar' or other tools is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It confirms a read operation but doesn't disclose return format, potential localization, or any side effects. Since it's a simple list operation, the absence of extra behavioral details is not critical, but some additional context would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately states the purpose. It front-loads the key action and resource, with no unnecessary filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, no parameters, and no output schema, the description is largely sufficient. It doesn't detail the return structure, but that is self-evident for a palette getter. The context of calendars and events is clear enough for the agent to select it appropriately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is empty with 100% coverage by definition. The baseline for 0 params is 4, and the description doesn't need to explain any parameter nuances. No improvement needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the color palette available for calendars and events, using the specific verb '取得します' (get) and a concrete resource. This distinguishes it from sibling tools, which focus on calendar/event CRUD and free/busy information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys the context of use: obtaining colors for calendars and events. It doesn't explicitly provide exclusions or alternative tool comparisons, but the scope is clear, and for a parameterless lookup tool, this is adequate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/CHIHI913/google-calendar-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server