Google Calendar MCP server
{
"mcpServers": {
"a1-x-tech-google-calendar": {
"command": "npx",
"args": [
"-y",
"@a1-x-tech/mcp-google-calendar@latest"
],
"env": {
"GOOGLE_CALENDAR_CLIENT_ID": "<google_calendar_client_id>",
"GOOGLE_CALENDAR_CLIENT_SECRET": "<google_calendar_client_secret>",
"GOOGLE_CALENDAR_REFRESH_TOKEN": "<google_calendar_refresh_token>",
"GOOGLE_CALENDAR_ACCESS_TOKEN": "<google_calendar_access_token>"
}
}
}
}{
"mcpServers": {
"a1-x-tech-google-calendar": {
"command": "npx",
"args": [
"-y",
"@a1-x-tech/mcp-google-calendar@latest"
],
"env": {
"GOOGLE_CALENDAR_CLIENT_ID": "<google_calendar_client_id>",
"GOOGLE_CALENDAR_CLIENT_SECRET": "<google_calendar_client_secret>",
"GOOGLE_CALENDAR_REFRESH_TOKEN": "<google_calendar_refresh_token>",
"GOOGLE_CALENDAR_ACCESS_TOKEN": "<google_calendar_access_token>"
}
}
}
}{
"mcpServers": {
"a1-x-tech-google-calendar": {
"command": "npx",
"args": [
"-y",
"@a1-x-tech/mcp-google-calendar@latest"
],
"env": {
"GOOGLE_CALENDAR_CLIENT_ID": "<google_calendar_client_id>",
"GOOGLE_CALENDAR_CLIENT_SECRET": "<google_calendar_client_secret>",
"GOOGLE_CALENDAR_REFRESH_TOKEN": "<google_calendar_refresh_token>",
"GOOGLE_CALENDAR_ACCESS_TOKEN": "<google_calendar_access_token>"
}
}
}
}{
"servers": {
"a1-x-tech-google-calendar": {
"command": "npx",
"args": [
"-y",
"@a1-x-tech/mcp-google-calendar@latest"
],
"env": {
"GOOGLE_CALENDAR_CLIENT_ID": "${input:google_calendar_client_id}",
"GOOGLE_CALENDAR_CLIENT_SECRET": "${input:google_calendar_client_secret}",
"GOOGLE_CALENDAR_REFRESH_TOKEN": "${input:google_calendar_refresh_token}",
"GOOGLE_CALENDAR_ACCESS_TOKEN": "${input:google_calendar_access_token}"
}
}
},
"inputs": [
{
"id": "google_calendar_client_id",
"type": "promptString",
"description": "Google calendar client id",
"password": true
},
{
"id": "google_calendar_client_secret",
"type": "promptString",
"description": "Google calendar client secret",
"password": true
},
{
"id": "google_calendar_refresh_token",
"type": "promptString",
"description": "Google calendar refresh token",
"password": true
},
{
"id": "google_calendar_access_token",
"type": "promptString",
"description": "Google calendar access token",
"password": true
}
]
}{
"mcpServers": {
"a1-x-tech-google-calendar": {
"command": "npx",
"args": [
"-y",
"@a1-x-tech/mcp-google-calendar@latest"
],
"env": {
"GOOGLE_CALENDAR_CLIENT_ID": "<google_calendar_client_id>",
"GOOGLE_CALENDAR_CLIENT_SECRET": "<google_calendar_client_secret>",
"GOOGLE_CALENDAR_REFRESH_TOKEN": "<google_calendar_refresh_token>",
"GOOGLE_CALENDAR_ACCESS_TOKEN": "<google_calendar_access_token>"
}
}
}
}file .mcp.json (in your project root)file claude_desktop_config.jsonfile ~/.cursor/mcp.jsonfile .vscode/mcp.jsonfile ~/.codeium/windsurf/mcp_config.jsoninstall npx -y @a1-x-tech/mcp-google-calendarversion 0.1.0
What it does
MCP server for Google Calendar that lets AI applications manage events, check availability, and handle calendar operations through the Google Calendar API. Designed for developers building AI assistants that need calendar access without sending unintended notifications.
- Check your calendar for the week and identify overlapping meetings
- Find free time slots between multiple people and create a meeting with a Google Meet link
- Reschedule or cancel existing events, with control over whether guests receive email notifications
Tools this server exposes
| Tool | Does |
|---|---|
| list_calendars | Get a list of your calendars |
| list_events | Retrieve events from a calendar within a time range |
| get_free_busy | Check free and busy time for specified calendars |
| create_event | Create a new calendar event with optional guests and Google Meet link |
| update_event | Modify an existing event's details |
| delete_event | Remove an event from the calendar |
| expand_recurrence | Expand a recurring event series into individual occurrences |
| send_updates | Send email notifications to guests about event changes or invitations |
Before you enable it
An MCP server runs with whatever access you give it. Start with a development account rather than production, and check which tools the server exposes before you let an agent call them unattended.