En este artículo explicamos cómo exponer un servidor MCP alojado en Kubernetes usando ToolHive y ngrok, una solución práctica para pruebas, demostraciones o acceso temporal a servicios internos. En Q2BSTUDIO somos especialistas en desarrollo de software a medida, aplicaciones a medida, inteligencia artificial, ciberseguridad y servicios cloud y podemos ayudar a integrar este tipo de flujos en entornos productivos y seguros. Si buscas servicios de desarrollo a medida consulta nuestra página de desarrollo de aplicaciones a medida.
1. Despliega ToolHive y el servidor MCP. Sigue el quickstart del operador de ToolHive para instalar el operador y desplegar un MCP en el clúster. Por ejemplo ejecuta kubectl apply -f https://raw.githubusercontent.com/stacklok/toolhive/refs/heads/main/examples/operator/mcp-servers/mcpserver_fetch.yaml El operador convierte servidores MCP en recursos Kubernetes gestionables declarativamente. Verás Services de tipo ClusterIP que están disponibles solo en el clúster.
2. Haz un port-forward al host. Usa kubectl port-forward para mapear el Service a localhost y poder acceder desde tu máquina: kubectl -n toolhive-system port-forward svc/mcp-fetch-proxy 8080:8080 Con esto https://127.0.0.1:8080 actúa como portal hacia el servicio en el clúster sin tocar la red del clúster.
3. Añade una política de tráfico ngrok con Basic Auth. Antes de abrir un túnel público, protege el extremo con una Traffic Policy de ngrok que valide usuario y contraseña. Crea un archivo /tmp/policy.yaml con un bloque como on_http_request: - actions: - type: basic-auth config: credentials: - stacklok:p4ssw0rd ngrok validará la cabecera Authorization Basic y devolverá 200 si coincide o 401 en caso contrario. Para generar el valor de la cabecera localmente usa echo -n stacklok:p4ssw0rd | base64
4. Lanza el túnel con la proxy de ToolHive. Con el Service redirigido a 127.0.0.1:8080 inicia un túnel indicando ngrok y la política de tráfico. Ejecuta la orden thv proxy tunnel https://127.0.0.1:8080 test especificando --tunnel-provider ngrok y usando --provider-args con un JSON que incluya auth-token con tu NGROK_TOKEN y traffic-policy-file apuntando a /tmp/policy.yaml ToolHive levantará un endpoint HTTPS público de ngrok y mostrará la URL pública del MCP; envía las peticiones con la cabecera Authorization para pasar el Basic Auth.
Beneficios de este enfoque. Gestión nativa en Kubernetes: el operador de ToolHive gestiona servidores MCP como recursos Kubernetes, ideal para flujos multiusuario y entornos productivos. Puente local seguro: kubectl port-forward expone el Service al host sin cambiar la red del clúster. Borde público endurecido: la Traffic Policy de ngrok añade Basic Auth en el perímetro y evita exponer el servicio sin protección durante pruebas y demos.
Este patrón es perfecto para pruebas rápidas, demos o compartir un endpoint sin tocar producción. En Q2BSTUDIO podemos acompañarte en la integración con plataformas cloud, aseguramiento y automatización, incluyendo servicios cloud aws y azure, inteligencia de negocio y Power BI, IA para empresas, agentes IA y servicios de ciberseguridad. Si te interesa desplegar este tipo de soluciones seguras en la nube revisa nuestros servicios cloud en Servicios cloud AWS y Azure o contacta para diseñar software a medida, soluciones de inteligencia artificial y estrategias de ciberseguridad.