my-cool-proxy
My Cool Proxy
My Cool Proxy es una puerta de enlace de servidor Model Context Protocol (MCP) que intenta resolver muchos de los problemas percibidos con MCP tal como existe hoy. Sin ningún orden en particular, estos son:
Las descripciones de herramientas inflan la ventana de contexto: Este es un problema con la forma en que la mayoría de los agentes se integran con MCP. En lugar de implementar abstracciones que permitan cargar herramientas según sea necesario, la mayoría de las aplicaciones vuelcan todas las herramientas MCP en el contexto a la vez. Para mitigar esto, My Cool Proxy envuelve las herramientas en un intérprete de Lua y expone herramientas de nivel superior para descubrir herramientas de forma incremental. Consulta Divulgación progresiva para obtener más información.
Los resultados de las herramientas inflan la ventana de contexto, ¿por qué no usar Bash? En lugar de usar herramientas MCP, los agentes podrían simplemente ejecutar comandos de terminal y usar bash para filtrar sus resultados; sin embargo, esto implica permitir que el agente realice acciones de alto riesgo con más frecuencia. Por ejemplo, podrías permitir que un agente use la CLI
ghpara interactuar con GitHub, pero también puede usar la CLIghpara realizar operaciones de modificación o destructivas. Con el GitHub MCP Server, puedes limitar fácilmente el alcance a herramientas de solo lectura. MCP te permite controlar estrictamente a qué herramientas tienen acceso los agentes. Para ayudar con esto, My Cool Proxy te permite filtrar aún más las herramientas expuestas a los agentes.La mayoría de las características de MCP no son compatibles: Desafortunadamente, la mayoría de las aplicaciones solo exponen herramientas MCP a los agentes, ignorando las otras características de cliente y servidor que ofrece el protocolo. My Cool Proxy pretende ser una capa de abstracción común para la mayor cantidad posible de características del protocolo, lo que permite a los desarrolladores usar las capacidades completas de MCP en cualquier aplicación compatible con MCP. Esto es un trabajo en curso; consulta la tabla de soporte de características para más detalles.
Gestionar un archivo de configuración para múltiples agentes es un quebradero de cabeza: Si usas más de una aplicación compatible con MCP, rápidamente te encontrarás con dificultades para mantener sincronizada la configuración de tu servidor MCP entre ellas. My Cool Proxy resuelve esto actuando como un único punto de integración para cada servidor que uses, reduciendo el número de servidores que mantener sincronizados a solo uno.
Inicio rápido
0. Instalación
Instálalo globalmente para usarlo como herramienta CLI:
npm install -g @karashiiro/my-cool-proxyO ejecútalo directamente con npx:
npx @karashiiro/my-cool-proxy1. Configuración
La puerta de enlace crea automáticamente una configuración predeterminada en el primer inicio. Simplemente ejecútalo una vez para generar el archivo de configuración:
my-cool-proxy # Creates config and starts (with no servers)
# Find your config location
my-cool-proxy --config-pathLuego edita la configuración para añadir tus servidores MCP.
Estructura de configuración de ejemplo:
{
"port": 3000,
"host": "localhost",
"mcpClients": {
"my-server": {
"type": "http",
"url": "https://example.com/mcp"
}
}
}O copia la configuración de ejemplo para un punto de partida más completo.
2. Ejecución
# If installed globally
my-cool-proxy
# If running via npx
npx @karashiiro/my-cool-proxy3. Conexión
Añádelo a la configuración de tu cliente MCP, por ejemplo, en Claude Desktop:
{
"mcpServers": {
"my-cool-proxy": {
"url": "http://localhost:3000/mcp"
}
}
}4. Uso
Pide a tu agente que realice una tarea con la que tus servidores MCP configurados puedan ayudarte, ¡y observa cómo lo hace!
Divulgación progresiva
Este proxy actúa como una puerta de enlace entre los agentes y varios servidores MCP (Model Context Protocol). En lugar de conectarse a cada servidor MCP individualmente, los agentes se conectan a este único proxy y obtienen acceso a todos los servidores configurados a través de una interfaz unificada.
Los agentes comienzan con un conocimiento mínimo sobre qué servidores o herramientas están disponibles. Construyen el contexto de forma progresiva:
Consulta las instrucciones del servidor: My Cool Proxy precarga un pequeño mensaje con extractos breves de los servidores y herramientas configurados para preparar al agente para que los use.
Llama a
list-servers: el contexto del agente ahora incluye nombres y descripciones de todos los servidores MCP disponibles (p. ej., "github", "slack", "database")Llama a
list-server-tools(server_name): el contexto del agente se expande para incluir todos los nombres y descripciones de herramientas para ese servidor específico.Llama a
tool-details(server_name, tool_name): el contexto del agente ahora tiene esquemas de parámetros completos, tipos de retorno (si están disponibles) y ejemplos de uso para una herramienta específica.Llama a
execute(lua_script): con el contexto completo, el agente puede escribir scripts de Lua que llamen a las herramientas descubiertas
En lugar de cargar todas las herramientas y sus descripciones en el contexto de antemano, esto difiere la carga de herramientas hasta que el agente determina que son necesarias.
Encadenamiento de herramientas con Lua: Una vez que un agente sabe qué herramientas existen, puede componer flujos de trabajo complejos de varios pasos en una sola llamada a execute(), ahorrando la sobrecarga de contexto de cualquier resultado intermedio de herramientas. El entorno de ejecución de Lua proporciona acceso a todos los servidores descubiertos como variables globales, con herramientas invocables como funciones asíncronas.
Encadenamiento secuencial de herramientas:
local raw_data = api_server.fetch({ id = 123 }):await()
local processed = processor.transform({ input = raw_data }):await()
result(processed)Lógica condicional:
local status = checker.validate({}):await()
if status.ok then
result(processor.run({}):await())
else
result(error_handler.notify({ error = status.message }):await())
endIteración con bucles:
local results = {}
for i = 1, 5 do
results[i] = worker.process({ index = i }):await()
end
result({ total = #results, data = results })Gateway Skills
Gateway Skills son la implementación de Agent Skills por parte de My Cool Proxy: documentos de contexto reutilizables que los agentes pueden cargar como Recursos MCP. Cuando están habilitadas, los agentes pueden:
Descubrir habilidades a través de un mensaje inyectado automáticamente en las instrucciones del servidor de la puerta de enlace (o mediante la función integrada de Lua
_gateway.list_resources(); busca URIsgw-skill://)Leer el contenido de las habilidades mediante la función integrada de Lua
_gateway.read_resource()Ejecutar scripts de habilidades mediante la función integrada de Lua
_gateway.invoke_skill_script()
Si bien muchos agentes ya implementan sus propios sistemas de habilidades, estos sistemas están muy fragmentados y es difícil reutilizar las mismas habilidades en múltiples aplicaciones de agentes separadas. Mientras que algunos sistemas como skills.sh resuelven esto copiando habilidades entre aplicaciones explícitamente, My Cool Proxy lo resuelve centralizando todas las habilidades en su propio sistema de gestión de habilidades y exponiéndolas a través de MCP. Para distinguirlas de los sistemas de habilidades existentes, My Cool Proxy las denomina «Gateway Skills».
Las Gateway Skills están deshabilitadas por defecto, ya que pueden entrar en conflicto con los sistemas de habilidades existentes integrados en tu agente. Consulta la Guía de configuración para conocer las opciones de configuración.
Para una discusión de diseño más profunda sobre por qué las Gateway Skills se implementan de esta manera, consulta esta sección en la documentación de diseño.
Panel web
My Cool Proxy incluye un panel web opcional para supervisar la actividad de la puerta de enlace. Cuando está habilitado, se ejecuta en un puerto separado y proporciona:
Historial de ejecuciones — Examina todas las ejecuciones de scripts de Lua, con scripts y resultados con resaltado de sintaxis
Registro de llamadas a herramientas — Ve qué herramientas MCP se llamaron durante cada ejecución
Supervisión de sesiones — Consulta sesiones activas, servidores conectados y capacidades
Actualizaciones en tiempo real — Las nuevas ejecuciones se transmiten al panel a través de WebSocket
Actívalo añadiendo una sección dashboard a tu configuración:
{
"dashboard": {
"port": 3100,
"host": "localhost"
}
}Luego visita http://localhost:3100 en tu navegador. Consulta la Guía de configuración para más detalles.
Configuración
Consulta la Guía de configuración para la referencia completa de configuración.
Tabla de soporte de características de MCP
Funcionalidad | ¿Compatible? | Detalles |
✅ | My Cool Proxy espera que las herramientas sean compatibles como mínimo absoluto. Afortunadamente, todo lo que es compatible con MCP es compatible con las herramientas. | |
✅ | My Cool Proxy reenvía los prompts desde sus servidores MCP al cliente conectado y proporciona las funciones integradas de Lua | |
✅ | My Cool Proxy reenvía tanto los recursos desde sus servidores MCP al cliente conectado como proporciona las funciones integradas de Lua | |
Server Instructions | ✅ | My Cool Proxy carga extractos de las instrucciones de los servidores MCP conectados en sus propias instrucciones de servidor, y también envía copias completas a través de la herramienta |
Discovery Notifications | ✅ | My Cool Proxy escucha las notificaciones de cambio de herramientas/prompts/recursos de los servidores MCP conectados para actualizar automáticamente sus propios registros internos, lo que se refleja en llamadas de herramientas posteriores. |
✅ | Los completados de argumentos de prompts y variables de plantilla de recursos se reenvían desde los servidores upstream al cliente conectado. Los agentes también pueden llamar a | |
✅ | My Cool Proxy reenvía las notificaciones de registro al cliente conectado, y también las registra él mismo. | |
✅ | Las solicitudes | |
✅ | My Cool Proxy admite proporcionar un shim para el soporte de sampling a través de ACP, aunque esto está deshabilitado por defecto. Consulte la documentación de configuración para obtener más información. | |
⚠️ | Las solicitudes de elicitación (modo formulario y URL) se transmiten mediante proxy desde los servidores upstream al cliente conectado. No hay ningún shim (actualmente) disponible para clientes que no admiten elicitación de forma nativa (a diferencia del sampling, que se puede adaptar mediante un shim a través de ACP). | |
✅ | Las notificaciones de progreso de los servidores upstream se reenvían al cliente conectado. Cuando un script de Lua llama a múltiples herramientas de forma concurrente, su progreso se agrega (se suma) en un único flujo. | |
⚠️ | Se admite llamar a herramientas que admiten tareas, pero sin aprovechar las actualizaciones de estado para nada interesante. Las tareas de sampling/elicitación no se admiten actualmente. | |
OAuth 2.0 | ❌ | Los desafíos de autenticación OAuth 2.0 aún no son compatibles (pero lo serán) |
❌ | Las MCP Apps aún no son compatibles (pero lo serán). |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/karashiiro/my-cool-proxy'
If you have feedback or need assistance with the MCP directory API, please join our Discord server