Skip to main content
Glama

Мок-сервер бронирования переговорных комнат Dify 1.13 HTTP MCP

Это проект для проверки MCP бронирования переговорных комнат с помощью статического заголовка Authorization Dify 1.13 без сервера аутентификации.

Dify 1.13 ── Bearer <고정 JWT> ──> MCP 서버 ── 내부 API 키 ──> 회의실 API

В текущем объёме name=dify в JWT — это не реальное имя пользователя, а фиксированный идентификатор сервиса. В каждой среде нужно выпустить токен самостоятельно и зарегистрировать один и тот же токен в заголовке Dify и в MCP_STATIC_TOKEN сервера MCP.

Подробная процедура описана в руководстве по интеграции статического токена.

Предоставляемые функции

  • Просмотр списка переговорных комнат

  • Бронирование переговорных комнат и предотвращение пересечения по времени

  • Просмотр списка броней фиксированного сервиса

  • HTTP 401 при отсутствии токена, несовпадении, истечении срока или отсутствии name

  • При успешном бронировании возвращается dify님 예약이 완료되었습니다.

Related MCP server: Boma MCP

Быстрый запуск

Процесс установки Docker в этом документе не рассматривается.

cp .env.example .env

docker compose run --rm --no-deps mcp-server \
  python scripts/mint_dev_token.py

Зарегистрируйте выведенный JWT в .env.

MCP_STATIC_TOKEN=eyJ...

Запустите сервер.

docker compose up -d --build --force-recreate
docker compose ps

Адреса сервисов:

  • MCP: http://localhost:8001/mcp

  • Статус API переговорных комнат: http://localhost:8000/health

Если Dify находится на другом сервере, вместо localhost зарегистрируйте HTTPS URL, доступный из Dify, одинаково в MCP_PUBLIC_URL и в настройках MCP Dify.

Настройка Dify 1.13

Пункт

Значение

URL сервера

https://<공개주소>/mcp

Имя заголовка

Authorization

Значение заголовка

Bearer eyJ...

Настройка OAuth

не используется

Поскольку заголовок статический, JWT и name=dify не меняются при смене пользователя Dify.

Основные файлы

Файл

Роль

meeting_mock/auth.py

Сравнение фиксированного токена, проверка срока действия, sub и name

meeting_mock/mcp_server.py

Streamable HTTP MCP и 3 инструмента

meeting_mock/meeting_api.py

Хранилище переговорных комнат и броней в памяти

scripts/mint_dev_token.py

Выпуск мок-токена JWT для каждого пользователя

scripts/e2e_dify_legacy_client.py

E2E статического токена Dify 1.13

Тестирование

PYTHONPATH=. uv run --isolated --extra test pytest -q

Docker E2E:

docker compose up -d --build --force-recreate
docker compose exec -T mcp-server python scripts/e2e_dify_legacy_client.py

Ограничения мок-сервера

  • Подпись JWT не проверяется открытым ключом сервера аутентификации.

  • В .env сервера MCP допускается только одна фиксированная строка токена.

  • Невозможно различить пользователей по идентичности.

  • Данные бронирования сбрасываются при пересоздании контейнера.

  • При переходе в эксплуатацию потребуются сервер аутентификации, проверка подписи, короткий срок действия, ротация ключей и передача токенов для каждого пользователя.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A simple MCP server that enables meeting room booking through an AI assistant, supporting room availability checks and booking operations with React Agent pattern for tool calling.
    3
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to search for available desk space, submit room reservations, and let admins approve or reject booking requests through a scoped MCP API.
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables local employee onboarding, leave tracking, meeting coordination, and workplace requests through any MCP-compatible client, with optional SMTP notifications.
    2
    -