mcp-oauth2-token-provider
mcp-oauth2-token-provider
Универсальный MCP-сервер (Model Context Protocol), который выступает в роли аутентифицированного прокси между AI IDE и удалёнными MCP-эндпоинтами. Обрабатывает генерацию токенов OAuth2 client_credentials внутри себя и прозрачно внедряет bearer-токены во все проксируемые запросы.
Возможности
Прозрачный OAuth2-прокси — получает, кэширует и автоматически обновляет токены
Динамическое обнаружение инструментов — без жёстко заданных схем инструментов; обнаруживает инструменты с удалённого MCP-эндпоинта
Автоповтор при 401 — если токен истёк в середине сессии, обновляет его и повторяет запрос один раз
Проверка работоспособности при запуске — проверяет доступность удалённого MCP до подключения; при сбое быстро завершает работу с понятным сообщением об ошибке
Персистентность токенов — сохраняет токены на диск в
~/.oauth2-token-provider/token.json, чтобы переживать перезапуски процессаНоль конфигурации в коде — все настройки через переменные окружения
Поддержка SSE и JSON-ответов — обрабатывает как Streamable HTTP, так и обычный JSON-RPC от удалённого сервера
Related MCP server: MCP OAuth Proxy
Установка
npx mcp-oauth2-token-providerИли установите глобально:
npm install -g mcp-oauth2-token-providerИспользование с Kiro / VS Code MCP
Добавьте в .kiro/settings/mcp.json (или аналогичный файл):
{
"mcpServers": {
"my-remote-server": {
"command": "npx",
"args": ["mcp-oauth2-token-provider"],
"env": {
"REMOTE_MCP_URL": "https://your-server.com/mcp",
"OAUTH2_TOKEN_URL": "https://your-sso.com/token.oauth2",
"OAUTH2_CLIENT_ID": "your-client-id",
"OAUTH2_CLIENT_SECRET": "your-client-secret"
}
}
}
}Переменные окружения
Переменная | Обязательно | Описание |
| Да | URL удалённого MCP-эндпоинта для проксирования |
| Да | Эндпоинт токена OAuth2 (грант |
| Да | Идентификатор клиента OAuth2 |
| Да | Секрет клиента OAuth2 |
| Нет | Имя пользователя для Basic-аутентификации (для SSO с двойными учётными данными) |
| Нет | Пароль для Basic-аутентификации (для SSO с двойными учётными данными) |
Как это работает
AI IDE ←stdio→ [mcp-oauth2-token-provider] ←HTTP+Bearer→ [Remote MCP Server]
│
├─ Acquires OAuth2 token (client_credentials)
├─ Caches in memory + ~/.oauth2-token-provider/token.json
├─ Injects Bearer header on every request
├─ Auto-refreshes on expiry (60s safety margin)
└─ Retries once on 401 with fresh tokenПри запуске проверяет доступность удалённого MCP-эндпоинта (отправляет MCP
initialize)Если удалённый сервер недоступен, завершает работу с ошибкой (IDE показывает статус «Сбой»)
Если всё в порядке, подключается к IDE через stdio и обнаруживает инструменты с удалённого сервера
Все вызовы инструментов прозрачно проксируются с bearer-токеном
Кэширование токенов
Токены кэшируются на двух уровнях:
В памяти — самый быстрый, теряется при перезапуске процесса
На диске —
~/.oauth2-token-provider/token.json, переживает перезапуски
Токен обновляется, когда:
До его истечения осталось менее 60 секунд
Получен ответ 401 от удалённого сервера
SSO с двойными учётными данными (необязательно)
Некоторые SSO-провайдеры требуют оба варианта:
client_id+client_secretв теле запросаЗаголовок Basic Auth с учётными данными сервисного аккаунта
Установите OAUTH2_BASIC_USERNAME и OAUTH2_BASIC_PASSWORD, чтобы включить этот режим.
Лицензия
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
Connect MCP clients to 2,000+ AI models without managing provider API keys.
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
Security & DLP proxy for MCP: tool-poisoning scans, PII redaction on tool args/results. Beta.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProxies MCP requests from Cursor IDE to a custom HTTP server, enabling custom tool integrations.8 npm1ISC
- AlicenseNot gradedqualityDmaintenanceActs as a secure OAuth 2.0/2.1 proxy gateway for MCP servers, enabling integration with Claude and ChatGPT platforms.20 npmMIT
- AlicenseNot gradedqualityDmaintenanceAuthenticating reverse proxy for MCP servers providing credential isolation, OAuth2 token management, and composite tool aggregation.BSD Zero Clause
- AlicenseNot gradedqualityBmaintenanceProvides a Streamable HTTP MCP proxy for VS Code Copilot and Claude Code, using JWT client assertion to securely access NetSuite APIs.MIT