Remote MCP Server

by roboulos

Integrations

  • Hosts the MCP server infrastructure, allowing deployment and execution of the remote MCP server

Snappy MCP-Server mit Xano-Integration

Ein Remote-MCP-Server basierend auf Cloudflare Workers mit Xano-Datenbankintegration für Tool-Management, Sitzungsverfolgung und OAuth. Jetzt mit vollständiger Unterstützung für das neueste Streamable-HTTP-Transportprotokoll (05.11.2024).

Lokal entwickeln

# clone the repository git clone https://github.com/roboulos/remote-mcp-server.git # install dependencies cd remote-mcp-server npm install # Configure Xano API Key # Add your Xano API key to wrangler.jsonc in the XANO_API_KEY variable # run locally npm run dev

Sie sollten http://localhost:8787/ in Ihrem Browser öffnen können.

Stellen Sie eine Verbindung zu Ihrem MCP-Server her

Verwenden des MCP-Inspektors (veraltet)

Um Ihre neue MCP-API mit dem älteren SSE-Transport zu erkunden, können Sie den MCP Inspector verwenden.

  • Starten Sie es mit npx @modelcontextprotocol/inspector
  • Ändern Sie im Inspektor den Transporttyp in SSE und geben Sie http://localhost:8787/sse als URL des MCP-Servers ein, mit dem eine Verbindung hergestellt werden soll. Klicken Sie anschließend auf „Verbinden“.
  • Sie gelangen zu einem (simulierten) Anmeldebildschirm mit Benutzername und Passwort. Geben Sie zur Anmeldung eine beliebige E-Mail-Adresse und Ihr Passwort ein.
  • Sie sollten zurück zum MCP-Inspektor umgeleitet werden und können nun alle definierten Tools auflisten und aufrufen!

Verwenden des Workers AI Playground (Streamable HTTP)

So testen Sie mit dem neuesten Streamable-HTTP-Transportprotokoll:

  1. Besuchen Sie den Workers AI Playground
  2. Wenn Sie aufgefordert werden, eine Verbindung zu einem MCP-Server herzustellen, geben Sie Ihre Endpunkt-URL ein:
    https://remote-mcp-server.robertjboulos.workers.dev/mcp
    oder für lokale Tests:
    http://localhost:8787/mcp
  3. Geben Sie bei entsprechender Aufforderung Ihre Authentifizierungsdaten ein:
    • auth_token : Ihr Xano-Authentifizierungstoken
    • user_id : Ihre Xano-Benutzer-ID
  4. Der Playground übernimmt die Sitzungsverwaltung automatisch mithilfe des neuen Protokolls

Verbinden Sie Claude Desktop mit Ihrem lokalen MCP-Server

Legacy-SSE-Transport

Um eine Verbindung über den älteren SSE-Transport herzustellen, folgen Sie der Schnellstartanleitung von Anthropic und gehen Sie in Claude Desktop zu Einstellungen > Entwickler > Konfiguration bearbeiten, um Ihre Konfigurationsdatei zu finden.

Öffnen Sie die Datei in Ihrem Texteditor und ersetzen Sie sie durch diese Konfiguration:

{ "mcpServers": { "math": { "command": "npx", "args": [ "mcp-remote", "http://localhost:8787/sse" ] } } }

Dadurch wird ein lokaler Proxy ausgeführt und Claude kann über HTTP mit Ihrem MCP-Server kommunizieren.

Streambarer HTTP-Transport (empfohlen)

Um den neueren, effizienteren Streamable-HTTP-Transport mit Claude Desktop zu verwenden, aktualisieren Sie Ihre Konfiguration, um stattdessen den Endpunkt /mcp zu verwenden:

{ "mcpServers": { "xano": { "remoteUrl": "http://localhost:8787/mcp", "auth": { "type": "bearer", "token": "YOUR_XANO_AUTH_TOKEN" }, "headers": { "x-user-id": "YOUR_USER_ID" } } } }

Ersetzen Sie YOUR_XANO_AUTH_TOKEN und YOUR_USER_ID durch Ihre tatsächlichen Anmeldeinformationen.

Wenn Sie Claude öffnen, sollte sich ein Browserfenster öffnen, in dem Sie sich anmelden können. Unten rechts sollten Sie die verfügbaren Tools sehen. Bei entsprechender Eingabeaufforderung sollte Claude den Aufruf des Tools anfordern.

Xano-Integration

Dieser MCP-Server verwendet Xano als Backend für:

  1. Werkzeugverwaltung : Definieren Sie Werkzeuge in der ____mcp_tools Tabelle von Xano und sie werden automatisch im MCP-Server registriert
  2. Sitzungsverfolgung : Alle MCP-Sitzungen werden in der Tabelle ___mcp_sessions mit eindeutigen Sitzungs-IDs verfolgt
  3. OAuth-Authentifizierung : OAuth-Token und -Status werden in den Tabellen ___oauth_tokens und ___oauth_states von Xano gespeichert
  4. Protokollierung : Alle MCP-Anfragen werden in der Tabelle ___mcp_logs protokolliert

Streambare HTTP-Implementierung

Dieser Server implementiert den neuesten Model Context Protocol Streamable HTTP-Transport (05.11.2024) mit den folgenden Funktionen:

Authentifizierungsmethoden

Der Server unterstützt mehrere Authentifizierungsmechanismen für maximale Kompatibilität:

  1. URL-Parameter : ?auth_token=xxx&user_id=yyy (Legacy-Methode)
  2. Autorisierungsheader : Authorization: Bearer xxx mit x-user-id -Header (moderne Methode)
  3. Anforderungstext : Authentifizierungsparameter können in die Initialisierungsnutzlast aufgenommen werden

Sitzungsverwaltung

Der Server verarbeitet Sitzungs-IDs gemäß der neuesten Spezifikation:

  1. Sitzungserstellung : Der Server generiert eine eindeutige Sitzungs-ID für neue Verbindungen
  2. Sitzungsverfolgung : Clients speichern diese ID und fügen sie in zukünftige Anfragen als ?sessionId=xxx ein.
  3. Zustandspersistenz : Jede Sitzung behält ihren eigenen Zustand in Xano bei, der über alle Anfragen hinweg bestehen bleibt

Protokollkonformität

Die Implementierung umfasst die entsprechende Unterstützung für:

  1. Einheitlicher Nachrichtenendpunkt : Unterstützung für das Endpunktmuster /mcp/message
  2. Protokoll-Header : Alle Antworten enthalten entsprechende Header wie MCP-Available-Transports
  3. SSE-Streaming : Verbesserte SSE-Unterstützung für Streaming-Antworten
  4. Antwortformat : Standard-JSON-RPC 2.0-Format mit protokollspezifischen Erweiterungen

Einrichten von Xano

  1. Erstellen Sie ein Xano-Projekt mit den erforderlichen Tabellen (siehe Datenbankschema)
  2. Erstellen Sie API-Endpunkte für:
    • /api/tools – GET – Alle Tools auflisten
    • /api/tools/execute/{tool_name} – POST – Ein bestimmtes Tool ausführen
    • /api/sessions – POST – Eine neue Sitzung erstellen
    • /api/sessions/update-activity – PUT – Sitzungsaktivität aktualisieren
    • /api/oauth/tokens – POST – OAuth-Token speichern
    • /api/oauth/tokens/{user_id}/{provider} – GET – OAuth-Token abrufen
    • /api/oauth/states – POST – OAuth-Status speichern
    • /api/oauth/states/{state} – GET – OAuth-Status validieren
    • /api/logs – POST – MCP-Anfragen protokollieren

Bereitstellung auf Cloudflare

  1. npx wrangler kv namespace create OAUTH_KV
  2. Befolgen Sie die Anleitung, um die KV-Namespace-ID zu wrangler.jsonc hinzuzufügen
  3. Fügen Sie Ihren Xano-API-Schlüssel zur Variable XANO_API_KEY in wrangler.jsonc hinzu
  4. npm run deploy

Rufen Sie Ihren neu bereitgestellten Remote-MCP-Server von einem Remote-MCP-Client aus auf

Führen Sie den MCP-Inspektor aus, genau wie Sie es oben unter „Lokal entwickeln“ getan haben:

npx @modelcontextprotocol/inspector@latest

Geben Sie dann die workers.dev -URL (z. B. worker-name.account-name.workers.dev/sse ) Ihres Workers im Inspector als URL des MCP-Servers ein, mit dem eine Verbindung hergestellt werden soll, und klicken Sie auf „Verbinden“.

Sie haben jetzt von einem Remote-MCP-Client aus eine Verbindung zu Ihrem MCP-Server hergestellt.

Verbinden Sie Claude Desktop mit Ihrem Remote-MCP-Server

Aktualisieren Sie die Claude-Konfigurationsdatei, sodass sie auf Ihre workers.dev -URL verweist (z. B. worker-name.account-name.workers.dev/sse ), und starten Sie Claude neu.

{ "mcpServers": { "math": { "command": "npx", "args": [ "mcp-remote", "https://worker-name.account-name.workers.dev/sse" ] } } }

Debuggen

Sollte etwas schiefgehen, kann es hilfreich sein, Claude neu zu starten oder zu versuchen, mit dem folgenden Befehl über die Befehlszeile eine direkte Verbindung zu Ihrem MCP-Server herzustellen.

npx mcp-remote http://localhost:8787/sse

In einigen seltenen Fällen kann es hilfreich sein, die zu ~/.mcp-auth hinzugefügten Dateien zu löschen

rm -rf ~/.mcp-auth

Related MCP Servers

  • -
    security
    F
    license
    -
    quality
    A Cloudflare Workers-based implementation of the Model Context Protocol server with OAuth login, allowing Claude and other MCP clients to connect to remote tools.
    Last updated -
    TypeScript
  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server that runs on Cloudflare Workers with OAuth login, allowing AI assistants like Claude to execute tools remotely through HTTP connections.
    Last updated -
    TypeScript
  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server implementation that runs on Cloudflare Workers with OAuth login, allowing Claude and other AI models to access tools via the MCP standard.
    Last updated -
    TypeScript
  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server that runs on Cloudflare Workers, supporting OAuth login and enabling Claude AI to access remote tools and services via MCP.
    Last updated -
    TypeScript

View all related MCP servers

ID: vep91feta1