Skip to main content
Glama
codezerowork

mcp-oauth2-token-provider

by codezerowork

mcp-oauth2-token-provider

Ein generischer MCP-Server (Model Context Protocol), der als authentifizierter Proxy zwischen KI-IDs und entfernten MCP-Endpunkten fungiert. Übernimmt die OAuth2-Tokenerzeugung mit client_credentials intern und fügt transparent Bearer-Tokens in alle weitergeleiteten Anfragen ein.

Funktionen

  • Transparenter OAuth2-Proxy — erwirbt, speichert und aktualisiert Tokens automatisch

  • Dynamische Tool-Erkennung — keine fest codierten Tool-Schemas; erkennt Tools vom entfernten MCP-Endpunkt

  • Automatischer Wiederholungsversuch bei 401 — wenn ein Token während der Sitzung abläuft, wird es aktualisiert und einmal erneut versucht

  • Start-Gesundheitscheck — überprüft, ob der entfernte MCP erreichbar ist, bevor eine Verbindung hergestellt wird; schlägt schnell mit klaren Fehlermeldungen fehl

  • Token-Persistenz — speichert Tokens auf der Festplatte unter ~/.oauth2-token-provider/token.json, um Prozessneustarts zu überstehen

  • Null Konfiguration im Code — alle Einstellungen über Umgebungsvariablen

  • Unterstützt SSE- und JSON-Antworten — verarbeitet sowohl Streamable HTTP als auch einfaches JSON-RPC vom entfernten Endpunkt

Related MCP server: MCP OAuth Proxy

Installation

npx mcp-oauth2-token-provider

Oder global installieren:

npm install -g mcp-oauth2-token-provider

Verwendung mit Kiro / VS Code MCP

Fügen Sie zu Ihrer .kiro/settings/mcp.json (oder entsprechend) hinzu:

{
  "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"
      }
    }
  }
}

Umgebungsvariablen

Variable

Erforderlich

Beschreibung

REMOTE_MCP_URL

Ja

Die URL des entfernten MCP-Endpunkts, an den weitergeleitet werden soll

OAUTH2_TOKEN_URL

Ja

OAuth2-Token-Endpunkt (client_credentials-Grant)

OAUTH2_CLIENT_ID

Ja

OAuth2-Client-ID

OAUTH2_CLIENT_SECRET

Ja

OAuth2-Client-Geheimnis

OAUTH2_BASIC_USERNAME

Nein

Basic-Auth-Benutzername (für Dual-Credential-SSO)

OAUTH2_BASIC_PASSWORD

Nein

Basic-Auth-Passwort (für Dual-Credential-SSO)

So funktioniert es

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
  1. Beim Start wird überprüft, ob der entfernte MCP-Endpunkt erreichbar ist (sendet MCP initialize)

  2. Wenn der entfernte Endpunkt nicht erreichbar ist, wird mit Fehler beendet (IDE zeigt Status "Failed")

  3. Wenn gesund, verbindet sich über stdio mit der IDE und erkennt Tools vom entfernten Endpunkt

  4. Alle Tool-Aufrufe werden transparent mit dem Bearer-Token weitergeleitet

Token-Zwischenspeicherung

Tokens werden in zwei Ebenen zwischengespeichert:

  • Im Speicher — am schnellsten, geht bei Prozessneustart verloren

  • Auf der Festplatte~/.oauth2-token-provider/token.json, übersteht Neustarts

Das Token wird aktualisiert, wenn:

  • Es sich innerhalb von 60 Sekunden vor Ablauf befindet

  • Eine 401-Antwort vom entfernten Endpunkt empfangen wird

Dual-Credential-SSO (Optional)

Einige SSO-Anbieter erfordern beides:

  • Eine client_id + client_secret im Anforderungstext

  • Einen Basic-Auth-Header mit Dienstkonto-Anmeldeinformationen

Setzen Sie OAUTH2_BASIC_USERNAME und OAUTH2_BASIC_PASSWORD, um dieses Muster zu aktivieren.

Lizenz

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2

  • MCP server for verifying EUDI/Talao wallet data via OIDC4VP (pull) for AI agents.

  • MCP Hub: AI service discovery, per-user OAuth, and multi-service workflow orchestration

View all MCP Connectors

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/codezerowork/mcp-oauth2-token-provider'

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