
Security News
npm Adopts OIDC for Trusted Publishing in CI/CD Workflows
npm now supports Trusted Publishing with OIDC, enabling secure package publishing directly from CI/CD workflows without relying on long-lived tokens.
Google Calendar MCP is a Model Context Protocol (MCP) server implementation in Python with Service Account authentication.
This project implements the Google Calendar API as an MCP server in Python. It is a port from the original TypeScript version, with authentication changed from OAuth 2.0 to Service Account.
# Clone the repository
git clone https://github.com/youyo/google-calendar-mcp.git
cd google-calendar-mcp
# Install dependencies
uv pip install -r requirements.txt
GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON key file.export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
Optionally, you can set the default calendar ID via the environment variable:
export GOOGLE_CALENDAR_ID=your-calendar-id@example.com
If not specified in arguments, this value will be used as the default calendarId.
To use this server with an MCP client, add the following to your MCP configuration file.
Set both GOOGLE_APPLICATION_CREDENTIALS
and GOOGLE_CALENDAR_ID
in the env
section to specify authentication and the default calendar:
{
"mcpServers": {
"google-calendar-mcp": {
"command": "uvx",
"args": ["google-calendar-mcp@latest"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/path/to/service-account.json",
"GOOGLE_CALENDAR_ID": "your-calendar-id@example.com"
}
}
}
}
If calendarId
is not specified in tool arguments, the value of GOOGLE_CALENDAR_ID
will be used as the default.
# Start the server
uvx google-calendar-mcp
list-calendars
: List all available calendarslist-events
: List events from a calendarsearch-events
: Search for events in a calendar by text querylist-colors
: List available color IDs and their meanings for calendar eventscreate-event
: Create a new calendar eventupdate-event
: Update an existing calendar eventdelete-event
: Delete a calendar eventTool | Required Arguments | Optional Arguments / Notes |
---|---|---|
list-calendars | (none) | - |
list-events | calendarId | timeMin, timeMax, maxResults |
search-events | calendarId, query | timeMin, timeMax, maxResults |
list-colors | (none) | - |
create-event | calendarId, summary | start, end, timeZone, location, description, attendees, etc. |
update-event | calendarId, eventId | summary, start, end, timeZone (dateTime 時必須), location, etc. |
delete-event | calendarId, eventId | - |
calendarId
はほぼ全てのカレンダー操作で必須です。eventId
はイベント更新・削除時に必須です。summary
はイベント作成時に必須です。timeZone
は start/end が dateTime 形式の場合に必須です。MIT
FAQs
Google Calendar MCP Server with Service Account authentication
We found that google-calendar-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
npm now supports Trusted Publishing with OIDC, enabling secure package publishing directly from CI/CD workflows without relying on long-lived tokens.
Research
/Security News
A RubyGems malware campaign used 60 malicious packages posing as automation tools to steal credentials from social media and marketing tool users.
Security News
The CNA Scorecard ranks CVE issuers by data completeness, revealing major gaps in patch info and software identifiers across thousands of vulnerabilities.