MCP Proxy Sidecar

Integrations

  • Enables interaction with JetBrains IDEs, allowing commands to be sent to the IDE and responses to be received, with real-time monitoring of tool calls through WebSocket notifications.

MCP 프록시 사이드카

@dortegau 가 만든, WebSocket 모니터링 기능을 추가한 JetBrains MCP Server 의 포크입니다.

이 프로젝트는 원래 구현의 모든 기능과의 호환성을 유지하면서 WebSocket 지원을 통해 원래 MCP 서버 기능을 확장합니다.

건축학

지엑스피1

위의 다이어그램은 시스템 아키텍처와 데이터 흐름을 보여줍니다.

  1. MCP 클라이언트(Claude Desktop App 등)는 MCP 프로토콜을 사용하여 Sidecar와 통신합니다.
  2. Sidecar는 명령을 JetBrains IDE로 번역하고 전달합니다.
  3. IDE의 응답은 Sidecar를 통해 다시 전송됩니다.
  4. 모든 도구 호출은 모니터링 목적으로 WebSocket을 통해 브로드캐스트됩니다.

특징

이 포크는 모든 MCP 도구 호출을 실시간으로 모니터링할 수 있는 WebSocket 알림을 추가합니다. 각 도구 호출은 엔드포인트 및 인수에 대한 자세한 정보와 함께 WebSocket을 통해 브로드캐스트됩니다.

WebSocket 메시지 형식

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

웹소켓 구성

WebSocket 서버는 기본적으로 27042 포트에서 실행됩니다. 설정 파일에서 WS_PORT 환경 변수를 사용하여 이 포트를 사용자 지정할 수 있습니다.

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

용법

MCP 서버 플러그인 설치

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

Claude Desktop과 함께 사용

Claude Desktop에서 이 기능을 사용하려면 claude_desktop_config.json 파일에 다음을 추가하세요. MacOS의 전체 경로는 ~/Library/Application\ Support/Claude/claude_desktop_config.json 이고, Windows의 전체 경로는 %APPDATA%/Claude/claude_desktop_config.json .

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

구성 옵션

다음 환경 변수는 claude_desktop_config.json 에서 구성할 수 있습니다.

변하기 쉬운설명기본
WS_PORTWebSocket 서버용 포트27042
IDE_PORTIDE 연결을 위한 특정 포트자동 스캔 63342-63352
HOSTIDE 연결을 위한 호스트 주소127.0.0.1
LOG_ENABLED디버그 로깅 활성화false

모든 옵션이 포함된 구성 예:

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

참고: IDE_PORT 지정되지 않으면 사이드카는 자동으로 63342-63352 포트를 스캔하여 IDE를 찾습니다.

개발

요구 사항

  • 노드.js 20.x
  • pnpm(최신 버전)

짓다

  1. 종속성 설치:
    pnpm install --frozen-lockfile
  2. 프로젝트를 빌드하세요:
    pnpm build

기여하다

  1. 저장소를 포크하세요
  2. 기능 브랜치를 생성합니다( git checkout -b feature/amazing-feature )
  3. 변경 사항을 커밋하세요( git commit -m 'Add some amazing feature' )
  4. 브랜치에 푸시( git push origin feature/amazing-feature )
  5. 풀 리퀘스트 열기

출판

이 패키지는 다음과 같이 npm에 게시됩니다.

  • 공급망 보안을 위해 출처가 활성화됨
  • 새 릴리스를 생성할 때 GitHub Actions를 통해 자동 릴리스
  • npm 레지스트리의 공개 액세스

새 버전을 게시하려면:

  1. package.json의 버전 업데이트
  2. 버전과 일치하는 새 태그를 생성하고 푸시합니다.
  3. 태그에서 GitHub 릴리스를 만듭니다.
  4. 워크플로는 자동으로 빌드하고 npm에 게시합니다.

변경 사항

1.0.0

  • @jetbrains/mcp-proxy에서 초기 포크
  • 실시간 도구 호출 모니터링을 위한 WebSocket 지원이 추가되었습니다.
  • 명확성을 위해 패키지 이름을 변경했습니다.
  • 업데이트된 문서 및 구성 예제

크레딧

이는 JetBrains MCP 프록시 서버 의 포크입니다. 최초 구현에 대한 모든 공로는 JetBrains 팀에 있습니다.

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

WebSocket 모니터링 기능을 추가한 수정된 JetBrains MCP 서버로, 사용자는 원래 구현과의 호환성을 유지하면서 실시간으로 MCP 도구 호출을 모니터링할 수 있습니다.

  1. Architecture
    1. Features
      1. WebSocket Message Format
      2. WebSocket Configuration
    2. Usage
      1. Install MCP Server Plugin
      2. Usage with Claude Desktop
      3. Configuration Options
    3. Development
      1. Requirements
      2. Build
      3. Contributing
      4. Publishing
    4. Changelog
      1. 1.0.0
    5. Credits
      ID: 7dbjlsp75c