mcp-nextcloud-calendar

ISC License
35
2

Integrations

  • Includes support for Ko-fi donations through a button link in the README.

  • Provides tools for interacting with Nextcloud Calendar, enabling calendar management (listing, creating, updating, deleting calendars) and event management (listing, creating, retrieving, updating, deleting events), with ADHD-friendly organization features.

Календарь MCP Nextcloud

Сервер протокола контекста модели (MCP) для интеграции календаря Nextcloud.

Функции

  • Получить календари из Nextcloud
  • Особенности организации, благоприятные для людей с СДВГ
  • Поддержка протокола MCP (потоковый HTTP и устаревший HTTP+SSE)

Использование

Использование с npx

Самый простой способ использовать этот пакет — с помощью npx:

npx mcp-nextcloud-calendar

Установка

Для разработки или локальной установки:

# Install globally npm install -g mcp-nextcloud-calendar # Or install locally npm install mcp-nextcloud-calendar

Конфигурация клиента MCP

Для использования с клиентом MCP (например, Claude) добавьте эту конфигурацию в настройки клиента MCP:

{ "mcpServers": { "nextcloud-calendar": { "command": "npx", "args": ["-y", "mcp-nextcloud-calendar"], "env": { "NEXTCLOUD_BASE_URL": "https://your-nextcloud-server.com", "NEXTCLOUD_USERNAME": "your-username", "NEXTCLOUD_APP_TOKEN": "your-app-token" } } } }
Указание версии

Вы можете закрепить за определенной версией пакета:

{ "mcpServers": { "nextcloud-calendar": { "command": "npx", "args": ["-y", "mcp-nextcloud-calendar@0.1.0"], "env": { "NEXTCLOUD_BASE_URL": "https://your-nextcloud-server.com", "NEXTCLOUD_USERNAME": "your-username", "NEXTCLOUD_APP_TOKEN": "your-app-token" } } } }

Конфигурация

Переменные среды

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

ПеременнаяОписаниеПо умолчаниюНеобходимый
ПОРТПорт сервера3001Нет
ИМЯ_СЕРВЕРАИдентификатор сервера MCPnextcloud-календарь-серверНет
NODE_ENVОкружающая среда (разработка/производство)разработкаНет
NEXTCLOUD_BASE_URLURL вашего сервера Nextcloud-Да
NEXTCLOUD_USERNAMEВаше имя пользователя Nextcloud-Да
NEXTCLOUD_APP_TOKENВаш токен приложения Nextcloud-Да
KEEP_ALIVE_INTERVALИнтервал проверки активности (мс)30000Нет

Настройка разработки

Для местного развития:

  1. Клонировать репозиторий
  2. Установить зависимости:
npm install
  1. Создайте файл .env в корне проекта:
cp .env.example .env
  1. Отредактируйте файл .env , используя свои учетные данные Nextcloud.

Получение токена приложения Nextcloud

  1. Войдите в свой экземпляр Nextcloud
  2. Перейдите в Настройки → Безопасность → Пароли приложений.
  3. Создайте новый пароль приложения с именем, например «MCP Calendar»
  4. Скопируйте сгенерированный токен в ваш файл .env

Разработка

# Build the project npm run build # Run in development mode npm run dev # Run tests npm run test # Run linting npm run lint # Format code npm run format

Конечные точки API

  • /mcp — Первичная конечная точка MCP (потоковый HTTP-транспорт)
  • /sse и /messages — устаревшие конечные точки MCP (транспорт HTTP+SSE)
  • GET /health — конечная точка проверки работоспособности
  • GET /api/calendars — Список всех календарей

Инструменты МКП

Следующие инструменты MCP зарегистрированы и доступны клиентам:

Управление календарем

ИнструментОписаниеПараметры
listCalendarsИзвлекает все доступные календариНикто
createCalendarСоздает новый календарьdisplayName (обязательно), color (необязательно), category (необязательно), focusPriority (необязательно)
updateCalendarОбновляет существующий календарьid (обязательно), displayName (необязательно), color (необязательно), category (необязательно), focusPriority (необязательно)
deleteCalendarУдаляет календарьid (обязательно)

⚠️ Предупреждение о разрешениях : инструменты updateCalendar и deleteCalendar могут потребовать специальных разрешений в вашем экземпляре Nextcloud. Операции с календарем подчиняются системе разрешений Nextcloud.

Управление мероприятиями

ИнструментОписаниеПараметры
listEventsИзвлекает события для календаряcalendarId (обязательно), start (необязательно), end (необязательно)
getEventПолучает определенное событиеcalendarId (обязательно), eventId (обязательно)
createEventСоздает новое событиеcalendarId (обязательно), summary (обязательно), start (обязательно), end (обязательно), description (необязательно), location (необязательно)
updateEventОбновляет существующее событиеcalendarId (обязательно), eventId (обязательно), [плюс любые свойства события для обновления]
deleteEventУдаляет событиеcalendarId (обязательно), eventId (обязательно)

Известные проблемы и ограничения

Примечание : этот пакет в настоящее время находится на ранней стадии разработки (0.1.x). API и инструменты могут быть изменены без уведомления в будущих выпусках.

  • Для операций обновления и удаления календаря могут потребоваться особые разрешения в вашем экземпляре Nextcloud.
  • Обработка ошибок для определенных кодов ошибок Nextcloud все еще совершенствуется.
  • Большие календари с большим количеством событий могут вызывать проблемы с производительностью.

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

Лицензия

МСК

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Provides tools for interacting with Gmail and Calendar APIs. This server enables you to manage your emails and calendar events programmatically through the MCP interface.
    Last updated -
    8
    13
    JavaScript
    MIT License
  • -
    security
    F
    license
    -
    quality
    An MCP server that enables scheduling, updating, deleting, and listing calendar appointments through Cal.com's Calendar API.
    Last updated -
    JavaScript
  • -
    security
    F
    license
    -
    quality
    A Model Completion Prompt (MCP) plugin that allows users to create events in Google Calendar with customizable attributes like times, description, location, attendees, and timezone.
    Last updated -
    Python
    • Linux
    • Apple

View all related MCP servers

ID: dkbdpuhi9u