Skip to main content
Glama

Create a Focus Time block

create_focus_time

Block time on your primary Google Calendar for focused work, auto-decline conflicting invitations, and flip Google Chat to Do Not Disturb during the session.

Instructions

Creates a Focus Time event: blocks the slot, can auto-decline conflicting invitations (auto_decline + decline_message) and can flip Google Chat to Do Not Disturb (chat_status). ONLY works on the PRIMARY calendar of a Google Workspace account — consumer Gmail and secondary calendars get HTTP 400. Always timed (start/end date_time), never all-day. Manage it afterwards like any event: update_event / delete_event, and list_events with event_types=["focus_time"] to find existing blocks. Not retried after an ambiguous failure — check list_events before re-sending.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
summaryNoTitle (defaults to "Focus time").
time_zoneNoIANA time zone name, e.g. "Europe/Berlin" or "America/New_York".
calendar_idNoThe calendar id from list_calendars, or "primary" for the authenticated user's main calendar.primary
chat_statusNoGoogle Chat presence during the block.
auto_declineNoWhich conflicting meeting invitations Calendar auto-declines: none, all overlapping ones, or only new ones arriving after the block is created (existing meetings survive).
send_updatesNoWho receives an email about this change: all guests, only guests outside your organization, or nobody. Defaults to none — attendees are NOT notified unless you pass all.
end_date_timeYesBlock end, RFC3339.
decline_messageNoMessage sent with each auto-declined invitation.
start_date_timeYesBlock start, RFC3339 (these blocks are always timed, never all-day).
Behavior5/5

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

The annotations note readOnlyHint=false and destructiveHint=false, and the description adds rich behavioral context: the tool can auto-decline invitations, affect Chat presence, is always timed, rejects consumer Gmail, and is not retried after ambiguous failures. This goes well beyond the annotations and helps an agent anticipate side effects and error modes.

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?

The description is dense but every sentence earns its place: it covers creation behavior, hard constraints, lifecycle management, and failure handling. Key constraints like primary-calendar-only and always-timed are front-loaded, and there is no filler or repetition of schema boilerplate.

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

Completeness5/5

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

Despite having no output schema, the description tells the agent everything needed to call the tool correctly: what it does, where it works, what can be configured, how to manage/find the created blocks afterward, and how to handle ambiguous failures. This is complete for a tool of this complexity.

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%, so the baseline is 3. The description mentions auto_decline, decline_message, and chat_status in a behavioral context, but the schema already documents each parameter clearly. No substantial new parameter-level meaning is added beyond what the schema provides.

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

Purpose5/5

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

The description uses a specific verb and resource: "Creates a Focus Time event" and immediately distinguishes it from ordinary event creation by naming unique behaviors like auto-declining conflicting invitations and flipping Chat to Do Not Disturb. It clearly identifies the primary-calendar-only scope, making the tool's purpose unmistakable.

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

Usage Guidelines5/5

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

The description explicitly states when not to use the tool: it only works on the primary calendar of a Google Workspace account, and consumer Gmail or secondary calendars return HTTP 400. It also names the follow-up tools and pattern for verification: update_event, delete_event, and list_events with event_types=["focus_time"]. This gives an agent clear routing and alternative actions.

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

Install Server

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/A1-x-Tech/mcp-google-calendar'

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