MCP server registry
CommunicationPublic source

Calendar MCP Server

The most complete multi-backend calendar MCP server. 12 tools across 2 backends — manage events on Google Calendar and Microsoft Outlook with OAuth auto-refresh, natural language quick-add, and enterprise governance.…

What it gives an agent

A purpose-built capability behind one MCP connection.

The server owns its domain logic and publishes a tool contract an MCP client can discover. ADK-Rust can load that contract into an agent, normalize each schema for the chosen model provider, and keep the connection lifecycle outside the agent’s business logic.

01

Multi-backend — Google Calendar API + Microsoft Graph, same tool interface

02

OAuth with auto-refresh — one-time browser auth, tokens refresh automatically

03

Full calendar lifecycle — list, create, update, delete, search, RSVP, quick-add

04

No credential exposure — tokens stay in env vars or ~/.mcp-calendar/, never reach LLM context

05

Single binary — no Node.js, no Python, no runtime dependencies

Architecture

How Calendar MCP Server fits into an agent system.

The model never needs the implementation details or credentials of the system behind the server. It sees reviewed tool definitions. The MCP client handles discovery and calls, while the server keeps ownership of validation, policy, and communication with its domain system.

01

ADK-Rust agent

Chooses a capability from the reviewed tool catalog.

02

MCP client

Discovers schemas, sends calls, and receives typed content.

03

Calendar MCP Server

Validates the request and owns 12 documented tool contracts.

04

Domain system

Keeps the API, data, credentials, and business rules behind the server.

Connection: stdio · Server framework: ADK MCP SDK + rmcp

From the project documentation

The server’s published architecture

Open the source diagram ↗
Calendar MCP Server architecture diagram from its official repository

Tool catalog

What can an agent ask Calendar MCP Server to do?

Each tool has a stable name, a human-readable purpose, and a JSON input contract discovered during MCP initialization. Risk classes come from the project’s registry manifest when one is available.

12 named tools

list_calendars

List available calendars

read only
list_events

List events from a calendar

read only
create_event

Create a calendar event

external write
update_event

Update a calendar event

external write
delete_event

Delete a calendar event

external write
find_free_time

Find free/busy time slots

read only
rsvp_event

RSVP to a calendar event

external write
get_event

Get a single event's full details

read only
search_events

Search events by text query

read only
list_attendees

List attendees of a calendar event

read only
quick_add

Quick-add an event using natural language (Google only)

external write
get_today

Get today's events from a calendar

read only

Governance

Understand the effect of every tool.

A server connection inherits the authority of its credentials and deployment environment. The declarations below come from this project’s README and MCP registry manifest; your application still decides which tools an agent receives and where approval is required.

7 read only5 external write
  • OAuth with auto-refresh — one-time browser auth, tokens refresh automatically

MCP surface

What the current documentation declares.

MCP can carry tools, resources, prompts, structured results, progress, cancellation, and long-running work. This record highlights the modern protocol features explicitly mentioned by this repository.

The current README concentrates on its tool surface. Check the source and release notes before relying on optional MCP capabilities beyond tool discovery and invocation.
ADK MCP SDKrmcpRegistry manifest

Install and connect

Follow the project’s documented starting point.

Install the server in the environment that owns its credentials and domain access. Add it to your MCP host, verify the discovered tools, and narrow the toolset before giving it to a production agent.

Install
cargo install mcp-calendar
ADK-Rust connection shape
let toolset = McpToolset::from_stdio(
    "mcp-calendar",
    ["mcp-calendar"],
).await?;

let agent = LlmAgentBuilder::new("agent")
    .tools(toolset.tools().await?)
    .build()?;

Commands and configuration are extracted from the public README. Confirm prerequisites, environment variables, and release-specific options in the official documentation before deployment.

Official documentation

Continue with the project maintainers’ source of truth.

This page provides an approachable map of the server. The repository remains authoritative for exact schemas, prerequisites, configuration, examples, tests, releases, and security updates.

Source record

Release and repository metadata for this catalog entry.

View public repository ↗
Version
1.1.0
License
Apache-2.0
Tools
12
Revision
dd049adbbe37
Updated
May 24, 2026
Transportsstdio