- Home
- MCP servers
- Google Cal
Google Cal
- javascript
0
GitHub Stars
javascript
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
This MCP server provides access to Google Calendar, enabling you to list, create, update, and manage calendar events through MCP clients. It acts as an OAuth proxy to Google, handling authorization and API calls so your MCP clients can perform calendar operations securely and efficiently.
How to use
To connect your MCP client to Google Calendar, run the server with your Google OAuth credentials and then register the MCP endpoint with your client. The server exposes an HTTP MCP endpoint that your client can call to perform calendar operations such as listing calendars, creating events with Meet links, RSVPing to invitations, and querying availability.
How to install
Prerequisites you should have installed on your machine before running the server:
- Node.js and npm (the server is started with npm)
- Git
Step by step setup and run flow based on the provided guidance:
1. Create Google OAuth credentials
Follow these steps to create credentials you will use to authorize with Google Calendar.
2. Run the server
GOOGLE_CLIENT_ID='your-client-id' \
GOOGLE_CLIENT_SECRET='your-client-secret' \
MCP_TRANSPORT=http \
npm start
The server runs on http://localhost:3000 by default. Change with PORT=3001 if needed.
## 3. Add to your MCP client
claude mcp add --transport http google_cal_mcp http://localhost:3000/mcp
## Server URL to MCPs
Your MCP client can reach the server at http://localhost:3000/mcp. If you change the port, adjust the URL accordingly.
## Available tools
### calendars\_list
List all calendars the user has access to
### calendarlist\_insert
Subscribe to a shared calendar
### calendarlist\_update
Update calendar settings (color, visibility, reminders)
### calendarlist\_delete
Unsubscribe from a calendar
### events\_list
List events in a time range with search/filter
### event\_get
Get details of a specific event
### event\_create
Create a new event with attendees and Meet link
### event\_update
Update an existing event
### event\_delete
Delete an event
### event\_respond
RSVP to an invitation (accept/decline/tentative)
### event\_move
Move event to a different calendar
### event\_instances
Get instances of a recurring event
### freebusy\_query
Find free/busy times for scheduling
### acl\_list
List who has access to a calendar
### colors\_get
Get available color palette for calendars/events