Remote MCP Server

by roboulos

Integrations

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

Servidor Snappy MCP con integración con Xano

Un servidor MCP remoto basado en Cloudflare Workers con integración de base de datos Xano para la gestión de herramientas, el seguimiento de sesiones y OAuth. Ahora con compatibilidad total con el protocolo de transporte HTTP Streamable más reciente (05/11/2024).

Desarrollar localmente

# 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

Deberías poder abrir http://localhost:8787/ en tu navegador

Conéctese a su servidor MCP

Uso del inspector MCP (heredado)

Para explorar su nueva API de MCP con el transporte SSE anterior, puede utilizar el Inspector de MCP .

  • Inícielo con npx @modelcontextprotocol/inspector
  • Dentro del inspector , cambie el Tipo de transporte a SSE e ingrese http://localhost:8787/sse como la URL del servidor MCP al que conectarse y haga clic en "Conectar".
  • Accederá a una pantalla de inicio de sesión (simulada) con usuario y contraseña. Ingrese su correo electrónico y contraseña para iniciar sesión.
  • Deberías ser redirigido nuevamente al Inspector MCP y ahora podrás enumerar y llamar a cualquier herramienta definida.

Uso de Workers AI Playground (HTTP con transmisión)

Para probar con el último protocolo de transporte HTTP Streamable:

  1. Visita el patio de juegos de IA de los trabajadores
  2. Cuando se le solicite conectarse a un servidor MCP, ingrese la URL de su punto final:
    https://remote-mcp-server.robertjboulos.workers.dev/mcp
    o para pruebas locales:
    http://localhost:8787/mcp
  3. Proporcione credenciales de autenticación cuando se le solicite:
    • auth_token : Su token de autenticación de Xano
    • user_id : Su ID de usuario de Xano
  4. El Playground gestionará la sesión automáticamente utilizando el nuevo protocolo

Conecte Claude Desktop a su servidor MCP local

Transporte SSE heredado

Para conectarse usando el transporte SSE más antiguo, siga el inicio rápido de Anthropic y dentro de Claude Desktop vaya a Configuración > Desarrollador > Editar configuración para encontrar su archivo de configuración.

Abra el archivo en su editor de texto y reemplácelo con esta configuración:

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

Esto ejecutará un proxy local y permitirá que Claude se comunique con su servidor MCP a través de HTTP.

Transporte HTTP transmisible (recomendado)

Para utilizar el transporte HTTP Streamable más nuevo y eficiente con Claude Desktop, actualice su configuración para utilizar el punto final /mcp en su lugar:

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

Reemplace YOUR_XANO_AUTH_TOKEN y YOUR_USER_ID con sus credenciales reales.

Al abrir Claude, debería abrirse una ventana del navegador que te permitirá iniciar sesión. Verás las herramientas disponibles en la esquina inferior derecha. Si se le da la indicación correcta, Claude debería solicitar que se ejecute la herramienta.

Integración de Xano

Este servidor MCP utiliza Xano como backend para:

  1. Gestión de herramientas : defina herramientas en la tabla ____mcp_tools de Xano y se registrarán automáticamente en el servidor MCP
  2. Seguimiento de sesiones : todas las sesiones de MCP se rastrean en la tabla ___mcp_sessions con identificadores de sesión únicos
  3. Autenticación OAuth : los tokens y estados de OAuth se almacenan en las tablas ___oauth_tokens y ___oauth_states de Xano
  4. Registro : todas las solicitudes de MCP se registran en la tabla ___mcp_logs

Implementación HTTP transmisible

Este servidor implementa el último protocolo de transporte HTTP transmisible de contexto de modelo (2024-11-05) con las siguientes características:

Métodos de autenticación

El servidor admite múltiples mecanismos de autenticación para lograr la máxima compatibilidad:

  1. Parámetros de URL : ?auth_token=xxx&user_id=yyy (método heredado)
  2. Encabezado de autorización : Authorization: Bearer xxx con encabezado x-user-id (método moderno)
  3. Cuerpo de la solicitud : Los parámetros de autenticación se pueden incluir en la carga útil de inicialización

Gestión de sesiones

El servidor maneja los ID de sesión de acuerdo con la última especificación:

  1. Creación de sesión : el servidor genera un ID de sesión único para nuevas conexiones
  2. Seguimiento de sesión : los clientes almacenan este ID y lo incluyen en futuras solicitudes como ?sessionId=xxx
  3. Persistencia del estado : cada sesión mantiene su propio estado en Xano, que persiste en todas las solicitudes.

Cumplimiento del protocolo

La implementación incluye el soporte adecuado para:

  1. Punto final de mensaje unificado : compatibilidad con el patrón de punto final /mcp/message
  2. Encabezados de protocolo : todas las respuestas incluyen encabezados adecuados como MCP-Available-Transports
  3. Transmisión SSE : compatibilidad mejorada con SSE para respuestas en streaming
  4. Formato de respuesta : formato estándar JSON-RPC 2.0 con extensiones específicas del protocolo

Configuración de Xano

  1. Cree un proyecto Xano con las tablas necesarias (ver esquema de base de datos)
  2. Crear puntos finales de API para:
    • /api/tools - GET - Listar todas las herramientas
    • /api/tools/execute/{tool_name} - POST - Ejecutar una herramienta específica
    • /api/sessions - POST - Crear una nueva sesión
    • /api/sessions/update-activity - PUT - Actualizar la actividad de la sesión
    • /api/oauth/tokens - POST - Almacenar tokens OAuth
    • /api/oauth/tokens/{user_id}/{provider} - GET - Obtener tokens OAuth
    • /api/oauth/states - POST - Almacenar estados de OAuth
    • /api/oauth/states/{state} - GET - Validar estados de OAuth
    • /api/logs - POST - Registrar solicitudes de MCP

Implementar en Cloudflare

  1. npx wrangler kv namespace create OAUTH_KV
  2. Siga las instrucciones para agregar el ID del espacio de nombres kv a wrangler.jsonc
  3. Agregue su clave API de Xano a la variable XANO_API_KEY en wrangler.jsonc
  4. npm run deploy

Llame a su servidor MCP remoto recién implementado desde un cliente MCP remoto

Tal como lo hizo anteriormente en "Desarrollar localmente", ejecute el inspector MCP:

npx @modelcontextprotocol/inspector@latest

Luego ingrese la URL de workers.dev (ej: worker-name.account-name.workers.dev/sse ) de su Worker en el inspector como la URL del servidor MCP al cual conectarse y haga clic en "Conectar".

Ahora se ha conectado a su servidor MCP desde un cliente MCP remoto.

Conecte Claude Desktop a su servidor MCP remoto

Actualice el archivo de configuración de Claude para que apunte a la URL de workers.dev (por ejemplo: worker-name.account-name.workers.dev/sse ) y reinicie Claude

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

Depuración

Si algo sale mal, puede ser útil reiniciar Claude o intentar conectarse directamente a su servidor MCP en la línea de comando con el siguiente comando.

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

En algunos casos excepcionales puede ser útil borrar los archivos agregados a ~/.mcp-auth

rm -rf ~/.mcp-auth
-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Un servidor de protocolo de contexto de modelo para Cloudflare Workers que se integra con Claude AI, lo que permite el uso de herramientas a través del inicio de sesión OAuth y conexiones SSE.

  1. Desarrollar localmente
    1. Conéctese a su servidor MCP
      1. Uso del inspector MCP (heredado)
      2. Uso de Workers AI Playground (HTTP con transmisión)
    2. Conecte Claude Desktop a su servidor MCP local
      1. Transporte SSE heredado
      2. Transporte HTTP transmisible (recomendado)
    3. Integración de Xano
      1. Implementación HTTP transmisible
        1. Métodos de autenticación
        2. Gestión de sesiones
        3. Cumplimiento del protocolo
        4. Configuración de Xano
      2. Implementar en Cloudflare
        1. Llame a su servidor MCP remoto recién implementado desde un cliente MCP remoto
          1. Conecte Claude Desktop a su servidor MCP remoto
            1. Depuración

              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