Cover image
Try Now
2025-03-18

Google Calendar MCP Server con soporte de autenticación automática

3 years

Works with Finder

1

Github Watches

1

Github Forks

1

Github Stars

Google Calendar AutoAuth MCP Server

A Model Context Protocol (MCP) server for Google Calendar integration in Claude Desktop with auto authentication support. This server enables AI assistants to manage Google Calendar through natural language interactions.

Features

  • Create calendar events with title, description, location, and attendees
  • Update existing calendar events
  • Delete calendar events
  • Retrieve event details
  • List events within a specified time range
  • Search for events by keyword
  • List all available calendars
  • Support for natural language date/time input (e.g., "tomorrow at 2pm", "next monday")
  • Full integration with Google Calendar API
  • Simple OAuth2 authentication flow with auto browser launch
  • Support for both Desktop and Web application credentials
  • Global credential storage for convenience

Installation & Authentication

Installing Manually

  1. Create a Google Cloud Project and obtain credentials:

    a. Create a Google Cloud Project:

    • Go to Google Cloud Console
    • Create a new project or select an existing one
    • Enable the Google Calendar API for your project

    b. Create OAuth 2.0 Credentials:

    • Go to "APIs & Services" > "Credentials"
    • Click "Create Credentials" > "OAuth client ID"
    • Choose either "Desktop app" or "Web application" as application type
    • Give it a name and click "Create"
    • For Web application, add http://localhost:3000/oauth2callback to the authorized redirect URIs
    • Download the JSON file of your client's OAuth keys
    • Rename the key file to gcp-oauth.keys.json
  2. Run Authentication:

    You can authenticate in two ways:

    a. Global Authentication (Recommended):

    # First time: Place gcp-oauth.keys.json in your home directory's .calendar-mcp folder
    mkdir -p ~/.calendar-mcp
    mv gcp-oauth.keys.json ~/.calendar-mcp/
    
    # Run authentication from anywhere
    npx @nchufa/calendar auth
    

    b. Local Authentication:

    # Place gcp-oauth.keys.json in your current directory
    # The file will be automatically copied to global config
    npx @nchufa/calendar auth
    

    The authentication process will:

    • Look for gcp-oauth.keys.json in the current directory or ~/.calendar-mcp/
    • If found in current directory, copy it to ~/.calendar-mcp/
    • Open your default browser for Google authentication
    • Save credentials as ~/.calendar-mcp/credentials.json

    Note:

    • After successful authentication, credentials are stored globally in ~/.calendar-mcp/ and can be used from any directory
    • Both Desktop app and Web application credentials are supported
    • For Web application credentials, make sure to add http://localhost:3000/oauth2callback to your authorized redirect URIs
  3. Configure in Claude Desktop:

Add the following to your Claude Desktop configuration file:

{
  "mcpServers": {
    "calendar": {
      "command": "npx",
      "args": [
        "@nchufa/calendar"
      ]
    }
  }
}

Available Tools

The server provides the following tools that can be used through Claude Desktop:

1. Create Event (create_event)

Creates a new calendar event.

{
  "summary": "Team Meeting",
  "description": "Weekly team sync to discuss project progress",
  "location": "Conference Room A",
  "start": "2025-04-01T14:00:00",
  "end": "2025-04-01T15:00:00",
  "attendees": ["colleague@example.com", "manager@example.com"],
  "reminders": {
    "useDefault": false,
    "overrides": [
      {
        "method": "email",
        "minutes": 30
      },
      {
        "method": "popup",
        "minutes": 10
      }
    ]
  }
}

Natural language date/time is also supported:

{
  "summary": "Coffee with John",
  "location": "Starbucks Downtown",
  "start": "tomorrow at 2:30pm",
  "end": "tomorrow at 3:30pm"
}

2. Get Event (get_event)

Retrieves details of a specific calendar event.

{
  "eventId": "abc123xyz456",
  "calendarId": "primary"
}

3. Update Event (update_event)

Updates an existing calendar event.

{
  "eventId": "abc123xyz456",
  "summary": "Updated Meeting Title",
  "location": "New Location",
  "start": "2025-04-01T15:00:00",
  "end": "2025-04-01T16:00:00"
}

4. Delete Event (delete_event)

Deletes a calendar event.

{
  "eventId": "abc123xyz456",
  "calendarId": "primary"
}

5. List Events (list_events)

Lists calendar events within a specified time range.

{
  "calendarId": "primary",
  "timeMin": "2025-04-01T00:00:00",
  "timeMax": "2025-04-07T23:59:59",
  "maxResults": 10,
  "orderBy": "startTime"
}

6. Search Events (search_events)

Searches for events matching a query.

{
  "query": "meeting",
  "calendarId": "primary",
  "timeMin": "2025-04-01T00:00:00",
  "maxResults": 5
}

7. List Calendars (list_calendars)

Lists all available calendars.

{}

Natural Language Date/Time Support

The server supports various natural language formats for dates and times:

  • Specific dates: "2025-04-01T14:00:00" (ISO format)
  • Simple references: "today", "tomorrow", "now"
  • Relative times: "2 hours later", "3 days later"
  • Day references: "next monday", "next tuesday"
  • Combined formats: "tomorrow at 2pm", "monday at 15:30"

This makes it easy to create and update events using natural language instructions.

Security Notes

  • OAuth credentials are stored securely in your local environment (~/.calendar-mcp/)
  • The server uses offline access to maintain persistent authentication
  • Never share or commit your credentials to version control
  • Regularly review and revoke unused access in your Google Account settings

Troubleshooting

  1. OAuth Keys Not Found

    • Make sure gcp-oauth.keys.json is in either your current directory or ~/.calendar-mcp/
    • Check file permissions
  2. Invalid Credentials Format

    • Ensure your OAuth keys file contains either web or installed credentials
    • For web applications, verify the redirect URI is correctly configured
  3. Port Already in Use

    • If port 3000 is already in use, please free it up before running authentication
    • You can find and stop the process using that port

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT

Acknowledgments

Special thanks to GongRzhe and his Calendar-Autoauth-MCP-Server project which served as a foundation for this implementation.

Support

If you encounter any issues or have questions, please file an issue on the GitHub repository.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • INFOLAB OPERATIONS 2
  • A medical specialist offering assistance grounded in clinical guidelines. Disclaimer: This is intended for research and is NOT safe for clinical use!

  • Yasir Eryilmaz
  • AI scriptwriting assistant for short, engaging video content.

  • Daren White
  • A supportive coach for mastering all Spanish tenses.

  • J. DE HARO OLLE
  • Especialista en juegos de palabras en varios idiomas.

  • apappascs
  • Descubra la colección más completa y actualizada de servidores MCP en el mercado. Este repositorio sirve como un centro centralizado, que ofrece un extenso catálogo de servidores MCP de código abierto y propietarios, completos con características, enlaces de documentación y colaboradores.

  • ShrimpingIt
  • Manipulación basada en Micrypthon I2C del expansor GPIO de la serie MCP, derivada de AdaFruit_MCP230xx

  • OffchainLabs
  • Implementación de la prueba de estaca Ethereum

  • huahuayu
  • Una puerta de enlace de API unificada para integrar múltiples API de explorador de blockchain similar a Esterscan con soporte de protocolo de contexto modelo (MCP) para asistentes de IA.

  • deemkeen
  • Controle su MBOT2 con un combo de potencia: MQTT+MCP+LLM

  • zhaoyunxing92
  • 本项目是一个钉钉 MCP (Protocolo del conector de mensajes )服务 , 提供了与钉钉企业应用交互的 API 接口。项目基于 Go 语言开发 支持员工信息查询和消息发送等功能。 支持员工信息查询和消息发送等功能。

  • pontusab
  • La comunidad de cursor y windsurf, encontrar reglas y MCP

    Reviews

    2 (1)
    Avatar
    user_hw9eQ64Y
    2025-04-18

    I'm a loyal user of the calendar-mcp app, and it has completely revolutionized how I manage my schedule. The seamless integration and user-friendly interface make it a must-have tool for anyone looking to stay organized. Kudos to falgom4 for creating such an efficient product! Check it out here: https://github.com/falgom4/calendar-mcp