Hospedar el servidor MCP SSE en Google Cloud Run
Actualmente (03/04/2024), MCP aún está trabajando en la autenticación y autorización. Planean completar esto en el primer semestre de 2025. El problema es que quiero compartir mi servidor MCP con mi equipo AHORA. Así que aquí estamos. La única solución inmediata para usar un servidor MCP de SSE en Cursor, etc., por ahora es una solución basada en la capa de red (por ejemplo, un proxy). Autenticación básica, claves API, ¡olvídelo!
Al utilizar GCP Cloud Run y la autenticación IAM basada en el usuario, he creado una forma sencilla y segura de permitir que los clientes accedan a un servidor MCP personalizado a través de Internet.
Cómo funciona
El servidor MCP está alojado en Google Cloud Run. Mediante la autenticación IAM de Cloud Run, podemos conectarnos de forma segura al servidor desde internet mediante el SDK de Google Cloud para crear una conexión proxy.
LÉAME TLDR
Esto debería funcionar de inmediato con una configuración mínima si ya tiene Docker y la CLI de gcloud configurados localmente.
Paso 1: Actualice deploy.sh
con el ID de su proyecto, el correo electrónico de la cuenta de servicio, etc.
Paso 2: Si la implementación es exitosa, toma la URL de ejecución en la nube proporcionada y agrégala a mcp_proxy.ts
junto con el ID de tu proyecto.
Paso 3: Ejecute el proxy npx ts-node mcp_proxy.ts
Paso 3: Acceda a su servidor MCP usando http://localhost:3030 - Agréguelo al Cursor en Configuración > Características > Servidores MCP (asegúrese de seleccionar SSE, no comando)
LÉAME LARGO Y ABURRIDO
Pasos de implementación
- Clonar el repositorio
- Ejecute
npm install
para instalar las dependencias - Ejecute
npm run dev
para iniciar el servidor localmente
Implementación en Google Cloud Run
Para implementar su servidor MCP en Google Cloud Run:
- Asegúrate de tener instalado el SDK de Google Cloud
- Actualice el script
deploy.sh
con los detalles de su proyecto:PROJECT_ID
: Su ID de proyecto de Google CloudREGION
: Su región de GCP preferidaSERVICE_ACCOUNT_EMAIL
: El correo electrónico de la cuenta de servicio con los permisos adecuados
- Ejecute el script de implementación:
El script de implementación hará lo siguiente:
- Cree un contenedor Docker para su servidor MCP
- Enviarlo a Google Container Registry
- Implementarlo en Cloud Run con la autenticación habilitada
Conexión a su servidor MCP implementado
Para conectarse a su servidor MCP implementado:
- Ejecute el proxy MCP localmente:
- El apoderado se encargará de:
- Comprueba si estás autenticado con Google Cloud
- Obtener tokens de autenticación automáticamente
- Crear un servidor proxy local (predeterminado: http://localhost:3030 )
- Reenvíe solicitudes autenticadas a su servicio Cloud Run
- Configure su cliente MCP para conectarse a la URL del proxy local
Utilice el servidor MCP en Cursor
- Primero, ejecutemos nuestro proxy para establecer una conexión entre nuestra máquina local y el servidor MCP alojado en Google Cloud Run.
- Ahora agreguemos nuestro servidor proxy local al cursor dentro de la pestaña Configuración > Características en la sección del servidor MCP.
- ¡Listo! Inicia un nuevo Composer (asegúrate de estar en modo agente) y pregunta qué tiempo hace en una ubicación. La salida en tu terminal donde está conectado el proxy, junto con la salida de tu Composer, debería verse así:
Seguridad
Esta configuración proporciona varios beneficios de seguridad:
- Su servidor MCP no es accesible públicamente sin autenticación
- Todas las conexiones están protegidas con Google Cloud IAM
- Los miembros del equipo necesitan acceso al SDK de Google Cloud para conectarse
Problemas de conexión
- Verifique que la URL de Cloud Run en
mcp_proxy.ts
coincida con el servicio implementado - Verifique los registros de Cloud Run para detectar cualquier error del lado del servidor
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar incidencias o solicitudes de incorporación de cambios.
Licencia
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un servidor MCP (Protocolo de contexto de modelo) seguro alojado en Google Cloud Run que permite la colaboración en equipo al proporcionar acceso autenticado a través de Google Cloud IAM, lo que permite a los equipos compartir servidores MCP personalizados a través de Internet antes de que se implemente la autenticación oficial de MCP.
Related Resources
Related MCP Servers
- -securityAlicense-qualityMCP server to interact with Google produts.Last updated -270PythonMIT License
- -securityFlicense-qualityA specialized Model Context Protocol (MCP) server that integrates Google services (Gmail, Calendar, etc.) into your AI workflows. This server enables seamless access to Google services through MCP, allowing AI agents to interact with Gmail, Google Calendar, and other Google services.Last updated -103TypeScript
- -securityAlicense-qualityAn MCP server for interacting with Google's Chronicle Security Operations suite, enabling users to search security events, get alerts, look up entities, list security rules, and retrieve IoC matches.Last updated -5PythonApache 2.0
- -securityAlicense-qualityA Model Context Protocol server that provides seamless integration with Google Workspace, allowing operations with Google Drive, Docs, and Sheets through secure OAuth2 authentication.Last updated -PythonMIT License
Appeared in Searches
- Understanding Server-Sent Events (SSE)
- Information about SSE (possible meanings: Scottish and Southern Energy, Server-Sent Events, etc.)
- Finding MCP servers that support SSE or Streamable HTTP, excluding stdio transport
- How to Submit an Outpatient Medical Claim to AIA
- Information about Google Cloud Services