claude-codetutorialmcpproductivity

Google Calendar MCP for Claude Code: 5-minute setup

Add Google Calendar to Claude Code CLI in one command. Includes morning briefing, sprint planning, and conflict resolution patterns for terminal-based coding workflows.

Sarah Chen
Developer Relations, CalendarMCP ·

Claude Code is Anthropic's terminal-based coding agent. It supports MCP servers through a simple CLI command, and once a calendar MCP is connected, you can pull schedule context into your coding sessions without leaving the terminal. Setup takes five minutes.

Why this is useful in a coding workflow

Most developers do not think of their calendar as a coding tool. But the boundary between schedule and work is thinner than it seems:

  • Morning briefing: before the day starts, have the agent pull your calendar and flag any meetings that conflict with a planned deep-work block.
  • Sprint planning: ask the agent to create a set of calendar events mapping out your sprint milestones based on the current date.
  • Conflict resolution: if a code review needs to be scheduled, ask the agent to check your calendar and propose a time that does not overlap anything.
  • Deadline tracking: create a calendar event from a ticket due date without switching to a browser.

None of these require leaving the terminal session.

Step 1: Get a CalendarMCP API key

Go to calendarmcp.ai, connect your Google account, and copy the API key from the dashboard. The OAuth flow is handled by CalendarMCP, so there is nothing to set up in Google Cloud Console.

Step 2: Add CalendarMCP to Claude Code

Claude Code uses the claude mcp add command to register MCP servers. For an HTTP server with an auth header:

claude mcp add --transport http calendar https://calendarmcp.ai/api/mcp \
  --header "Authorization: Bearer cmcp_your_api_key_here"

This writes the server config to your Claude Code MCP settings. To confirm it registered:

claude mcp list

You should see calendar in the output.

Step 3: Try it

Start a Claude Code session and prompt it with something calendar-related:

claude

# In the session:
What do I have on my calendar today? Flag anything that overlaps my usual 9-12 focus block.

Claude Code calls list_eventswith today's date range and returns your schedule. It will highlight conflicts if you frame the prompt that way.

Morning briefing pattern

One useful pattern: a standing morning briefing prompt you run at the start of each work session.

claude --print "Check my calendar for today and tomorrow. 
List all events in order. Flag any gaps of 2+ hours that would work as deep-work blocks. 
Then check if there are any events in the next 3 days that need preparation (code reviews, 
demos, syncs with action items) and suggest a 30-minute prep window for each."

Run this from your shell at the start of the day. Claude Code calls list_events twice (today and tomorrow), analyzes the output, and returns a structured briefing in the terminal.

Sprint planning pattern

At the start of a sprint, you can ask Claude Code to block out calendar time for each milestone:

claude --print "Our sprint runs May 19 to May 30. Milestones:
- Auth system done by May 21
- API endpoints done by May 26
- QA complete by May 29

Create calendar events for each milestone deadline. Use 'Sprint: [milestone]' as the title. 
All-day events are fine. Check for existing events first and avoid double-booking."

Claude Code calls list_events to check the range, then create_event for each milestone.

Conflict resolution from the terminal

claude --print "I need to schedule a 45-minute code review with the backend team next week. 
Our team is generally free mornings. Check my calendar for Mon-Fri next week and suggest 
three 45-minute slots that are currently open."

This calls find_free_time with the right parameters and returns specific slot suggestions. You can then tell Claude Code to create the event in whichever slot you pick.

Scoping to a project (optional)

If you only want calendar access in specific projects, add the MCP server at the project level instead of globally:

# From your project root
claude mcp add --transport http --scope project calendar https://calendarmcp.ai/api/mcp \
  --header "Authorization: Bearer cmcp_your_api_key_here"

This writes to .claude/settings.json in your project directory rather than the global config. Other projects will not have calendar access.

Ready to try it? Get your API key at calendarmcp.ai and run the mcp add command. Your coding sessions and your schedule will finally be in the same context window.

Ready to get started?

Connect your Google Calendar to Claude and any MCP client in about two minutes.

Connect Google Calendar