MCN MCP Server
Этот проект содержит MCP-сервер, построенный на базе библиотеки fastmcp, который реализует авторизацию по протоколу OpenID Connect (OIDC) для сервисов MCN. Сервер выполняет следующие задачи:
- Конфигурируется через переменные окружения (см.
mcn_mcp_server/config.py). - Осуществляет OAuth/OIDC-авторизацию с использованием PKCE и, при наличии,
клиентского секрета.
- Предоставляет асинхронный клиент
McnApiClient, готовый к вызовам API
магазина MCN после авторизации.
- Экспортирует MCP-приложение
app, которое может быть запущено с помощью
fastmcp и предоставляет OAuth-точки входа для ChatGPT.
Конфигурация
Необходимые переменные окружения с префиксом MCN_:
CLIENT_ID– идентификатор зарегистрированного OIDC-клиента.CLIENT_SECRET– секрет клиента (может быть опущен для публичных клиентов).REDIRECT_URI– разрешённый redirect URI клиента.SCOPE– список требуемых скоупов (по умолчаниюopenid profile offline_access).OIDC_ISSUER– URL издателя OIDC (по умолчаниюhttps://base.mcn.ru).TOKEN_AUDIENCE– необязательная аудитория для токена.
После настройки переменных окружения сервер можно запустить стандартным способом для fastmcp, например:
python -m fastmcp run mcn_mcp_server:appПосле успешной авторизации станет доступен инструмент get_profile, который возвращает профиль текущего пользователя из магазина MCN. Следующим шагом можно расширить клиент для получения каталога товаров и других данных.
