Skip to main content
Glama
by dortegau

Sidecar proxy MCP

versión npm Licencia Publicar en NPM

Una bifurcación del servidor MCP de JetBrains que agrega capacidades de monitoreo de WebSocket, creado por @dortegau .

Este proyecto amplía la funcionalidad del servidor MCP original con soporte WebSocket manteniendo la compatibilidad con todas las características de la implementación original.

Arquitectura

graph LR A[MCP Client<br>e.g. Claude<br>Desktop App] B[MCP Proxy<br>Sidecar<br>with WebSocket] C[JetBrains IDE] D[WebSocket Clients<br>Monitoring] A <--MCP requests/responses--> B B <--IDE commands/responses--> C B --WebSocket notifications<br>port 27042--> D style A fill:#f5f5f5,stroke:#333,stroke-width:2px style B fill:#e1f5fe,stroke:#333,stroke-width:2px style C fill:#f5f5f5,stroke:#333,stroke-width:2px style D fill:#f5f5f5,stroke:#333,stroke-width:2px

El diagrama anterior ilustra la arquitectura del sistema y el flujo de datos:

  1. Los clientes MCP (como la aplicación de escritorio Claude) se comunican con Sidecar mediante el protocolo MCP

  2. El Sidecar traduce y reenvía comandos a JetBrains IDE

  3. Las respuestas del IDE se envían de vuelta a través del Sidecar

  4. Todas las llamadas a herramientas se transmiten a través de WebSocket para fines de monitoreo.

Related MCP server: Superset MCP Integration

Características

Esta bifurcación añade notificaciones de WebSocket que permiten supervisar todas las llamadas a herramientas MCP en tiempo real. Cada llamada a herramienta se transmite a través de WebSocket con información detallada sobre el endpoint y los argumentos.

Formato de mensaje de WebSocket

interface MCPNotification { type: 'mcp-notification'; payload: { endpoint: string; // Tool name that was called content: any; // Call arguments timestamp: string; // ISO timestamp } }

Configuración de WebSocket

El servidor WebSocket se ejecuta en el puerto 27042 de forma predeterminada. Puede personalizar este puerto mediante la variable de entorno WS_PORT en su configuración:

"env": { "WS_PORT": "<custom port number>" // Example: "8080" }

Uso

Instalar el complemento del servidor MCP

https://plugins.jetbrains.com/plugin/26071-mcp-server

Uso con Claude Desktop

Para usar esto con Claude Desktop, agregue lo siguiente a su claude_desktop_config.json . La ruta completa en macOS es: ~/Library/Application\ Support/Claude/claude_desktop_config.json ; en Windows, es: %APPDATA%/Claude/claude_desktop_config.json .

{ "mcpServers": { "ide": { "command": "npx", "args": ["-y", "mcp-proxy-sidecar"], "env": { "WS_PORT": "27042" // Optional: customize WebSocket port } } } }

Opciones de configuración

Las siguientes variables de entorno se pueden configurar en su claude_desktop_config.json :

Variable

Descripción

Por defecto

WS_PORT

Puerto para servidor WebSocket

27042

IDE_PORT

Puerto específico para conexión IDE

Escaneos automáticos 63342-63352

HOST

Dirección de host para la conexión IDE

127.0.0.1

LOG_ENABLED

Habilitar el registro de depuración

false

Ejemplo de configuración con todas las opciones:

{ "mcpServers": { "ide": { "command": "npx", "args": ["-y", "mcp-proxy-sidecar"], "env": { "WS_PORT": "27042", "IDE_PORT": "63342", "HOST": "127.0.0.1", "LOG_ENABLED": "true" } } } }

Nota: Si no se especifica IDE_PORT , el sidecar escaneará automáticamente los puertos 63342-63352 para encontrar el IDE.

Desarrollo

Requisitos

  • Node.js 20.x

  • pnpm (última versión)

Construir

  1. Instalar dependencias:

    pnpm install --frozen-lockfile
  2. Construir el proyecto:

    pnpm build

Contribuyendo

  1. Bifurcar el repositorio

  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )

  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )

  4. Empujar a la rama ( git push origin feature/amazing-feature )

  5. Abrir una solicitud de extracción

Publicación

Este paquete se publica en npm con:

  • Procedencia habilitada para la seguridad de la cadena de suministro

  • Lanzamientos automatizados a través de Acciones de GitHub al crear un nuevo lanzamiento

  • Acceso público al registro npm

Para publicar una nueva versión:

  1. Actualizar la versión en package.json

  2. Crea y envía una nueva etiqueta que coincida con la versión

  3. Crear un lanzamiento de GitHub desde la etiqueta

  4. El flujo de trabajo se creará y publicará automáticamente en npm

Registro de cambios

1.0.0

  • Bifurcación inicial de @jetbrains/mcp-proxy

  • Se agregó compatibilidad con WebSocket para la monitorización de llamadas a herramientas en tiempo real

  • Paquete renombrado para mayor claridad

  • Documentación actualizada y ejemplos de configuración

Créditos

Esta es una bifurcación del servidor proxy MCP de JetBrains . Todo el crédito por la implementación original corresponde al equipo de JetBrains.

-
security - not tested
A
license - permissive license
-
quality - not tested

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/dortegau/mcp-proxy-sidecar'

If you have feedback or need assistance with the MCP directory API, please join our Discord server