Skip to main content
Glama
falgom4

Google Calendar AutoAuth MCP Server

Google Calendar AutoAuth MCP-сервер

значок кузнеца

Сервер Model Context Protocol (MCP) для интеграции Google Calendar в Claude Desktop с поддержкой автоматической аутентификации. Этот сервер позволяет помощникам ИИ управлять Google Calendar посредством взаимодействия на естественном языке.

Функции

  • Создавайте события календаря с названием, описанием, местом и участниками

  • Обновите существующие события календаря

  • Удалить события календаря

  • Получить сведения о событии

  • Список событий в указанном диапазоне времени

  • Поиск событий по ключевому слову

  • Список всех доступных календарей

  • Поддержка ввода даты/времени на естественном языке (например, «завтра в 14:00», «следующий понедельник»)

  • Полная интеграция с API Календаря Google

  • Простой процесс аутентификации OAuth2 с автоматическим запуском браузера

  • Поддержка учетных данных как настольных, так и веб-приложений

  • Глобальное хранилище учетных данных для удобства

Related MCP server: Google Calendar MCP Server

Установка и аутентификация

Установка через Smithery

Чтобы автоматически установить сервер интеграции Google Calendar для Claude Desktop через Smithery :

npx -y @smithery/cli install @falgom4/calendar-mcp --client claude

Установка вручную

  1. Создайте проект Google Cloud и получите учетные данные:

    а. Создайте проект Google Cloud:

    • Перейти в Google Cloud Console

    • Создайте новый проект или выберите существующий

    • Включите API Google Calendar для вашего проекта

    б) Создайте учетные данные OAuth 2.0:

    • Перейдите в раздел «API и службы» > «Учетные данные».

    • Нажмите «Создать учетные данные» > «Идентификатор клиента OAuth».

    • Выберите тип приложения: «Приложение для настольного компьютера» или «Веб-приложение».

    • Дайте ему имя и нажмите «Создать».

    • Для веб-приложения добавьте http://localhost:3000/oauth2callback к разрешенным URI перенаправления.

    • Загрузите JSON-файл ключей OAuth вашего клиента

    • Переименуйте файл ключа в gcp-oauth.keys.json

  2. Запустить аутентификацию:

    Аутентификацию можно пройти двумя способами:

    а. Глобальная аутентификация (рекомендуется):

    # 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

    б) Локальная аутентификация:

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

    Процесс аутентификации будет:

    • Найдите gcp-oauth.keys.json в текущем каталоге или ~/.calendar-mcp/

    • Если файл найден в текущем каталоге, скопируйте его в ~/.calendar-mcp/

    • Откройте браузер по умолчанию для аутентификации Google

    • Сохранить учетные данные как ~/.calendar-mcp/credentials.json

    Примечание :

    • После успешной аутентификации учетные данные сохраняются глобально в ~/.calendar-mcp/ и могут быть использованы из любого каталога.

    • Поддерживаются учетные данные как настольного приложения, так и веб-приложения.

    • Для учетных данных веб-приложения обязательно добавьте http://localhost:3000/oauth2callback к вашим авторизованным URI перенаправления.

  3. Настройте в Claude Desktop:

Добавьте следующее в файл конфигурации Claude Desktop:

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

Доступные инструменты

Сервер предоставляет следующие инструменты, которые можно использовать через Claude Desktop:

1. Создать событие ( create_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
      }
    ]
  }
}

Также поддерживается дата/время на естественном языке:

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

2. Получить событие ( get_event )

Извлекает сведения о конкретном событии календаря.

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

3. Обновление события ( update_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 )

Удаляет событие календаря.

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

5. Список событий ( list_events )

Перечисляет события календаря в указанном диапазоне времени.

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

6. Поиск событий ( search_events )

Поиск событий, соответствующих запросу.

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

7. Список календарей ( list_calendars )

Список всех доступных календарей.

{}

Поддержка даты/времени на естественном языке

Сервер поддерживает различные форматы естественного языка для дат и времени:

  • Конкретные даты: "2025-04-01T14:00:00" (формат ISO)

  • Простые ссылки: «сегодня», «завтра», «сейчас».

  • Относительное время: «через 2 часа», «через 3 дня».

  • Ссылки на дни: «следующий понедельник», «следующий вторник»

  • Комбинированные форматы: «завтра в 14:00», «понедельник в 15:30»

Это позволяет легко создавать и обновлять события с использованием инструкций на естественном языке.

Заметки о безопасности

  • Учетные данные OAuth надежно хранятся в вашей локальной среде ( ~/.calendar-mcp/ )

  • Сервер использует автономный доступ для поддержания постоянной аутентификации.

  • Никогда не передавайте и не передавайте свои учетные данные в систему контроля версий.

  • Регулярно проверяйте и отзывайте неиспользуемый доступ в настройках вашего аккаунта Google.

Поиск неисправностей

  1. Ключи OAuth не найдены

    • Убедитесь, что gcp-oauth.keys.json находится либо в вашем текущем каталоге, либо в ~/.calendar-mcp/

    • Проверьте права доступа к файлу

  2. Неверный формат учетных данных

    • Убедитесь, что ваш файл ключей OAuth содержит web или installed учетные данные.

    • Для веб-приложений проверьте правильность настройки URI перенаправления.

  3. Порт уже используется

    • Если порт 3000 уже используется, освободите его перед запуском аутентификации.

    • Вы можете найти и остановить процесс, используя этот порт.

Внося вклад

Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.

Лицензия

Массачусетский технологический институт

Благодарности

Особая благодарность GongRzhe и его проекту Calendar-Autoauth-MCP-Server , который послужил основой для этой реализации.

Поддерживать

Если у вас возникли какие-либо проблемы или есть вопросы, пожалуйста, сообщите о проблеме в репозитории GitHub.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/falgom4/calendar-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server