README
🚀 MCP 代理侧边车
MCP 代理侧边车是由 @dortegau 创建的 JetBrains MCP Server 的一个分支,它扩展了原始 MCP 服务器的功能,添加了 WebSocket 监控功能,同时保持对原始实现所有功能的兼容性,可用于实时监控工具调用情况。
🚀 快速开始
安装
pnpm install mcp-proxy-sidecar
启动
pnpm start
✨ 主要特性
- 初始 fork:基于 @jetbrains/mcp-proxy 的基础实现。
- WebSocket 支持:实现了实时工具调用监控功能。
- 架构清晰:保持了原始实现的所有功能,同时扩展了新的特性。
📚 详细文档
架构
graph LR
A[MCP 客户端<br>例如 Claude<br>桌面应用程序]
B[MCP 代理<br>侧边车<br>带 WebSocket]
C[JetBrains IDE]
D[WebSocket 客户端<br>监控]
A <--MCP 请求/响应--> B
B <--IDE 命令/响应--> C
B --WebSocket 通知<br>端口 27042--> D
架构图说明
- A:表示 MCP 客户端,例如 Claude 桌面应用程序。
- B:表示 MCP 代理侧边车,具备 WebSocket 功能。
- C:表示 JetBrains IDE。
- D:表示用于监控的 WebSocket 客户端。
WebSocket 消息格式
interface WindowToFrontend {
type: 'frontend-ready' | 'backend-ready' | 'proxy-connected';
}
interface ToBackendMessage {
type: 'initialize' | 'get-configuration' | 'set-configuration';
data?: unknown;
}
interface ConfigurationKey extends PropertyKey {}
配置选项
| 属性 | 详情 | |------|------| | 项目 | 类型、描述和默认值的集合 | | WS_PORT | 类型:number;描述:WebSocket 监听端口;默认值:27043 | | IDE_SCAN_RANGE | 类型:number[];描述:自动扫描 IDE 的端口范围;默认值:[63342, 63352] |
💻 使用示例
基础用法
# 安装依赖
pnpm install mcp-proxy-sidecar
# 启动项目
pnpm start
🔧 技术细节
开发要求
- Node.js:需要 Node.js 20.x
- 依赖管理:使用 pnpm (最新版本)
建设步骤
- 安装依赖:
pnpm install --frozen-lockfile - 构建项目:
pnpm build
🤝 贡献
- fork 仓库:首先 fork 这个仓库。
- 创建功能分支:创建你的功能分支(
git checkout -b feature/amazing-feature)。 - 提交更改:提交你的修改(
git commit -m '添加一些神奇的功能')。 - 推送到分支:推送分支到远程仓库(
git push origin feature/amazing-feature)。 - 创建 Pull Request:提交一个 Pull Request。
🚀 发布
此包通过 npm 发布,使用以下步骤发布新版本:
- 更新
package.json中的版本号。 - 创建并推送与版本匹配的新标签。
- 从标签创建 GitHub 发布。
- 工作流将自动构建并将包发布到 npm。
📝 变更日志
1.0.0
- 初始 fork 自 @jetbrains/mcp-proxy
- 添加 WebSocket 支持,实现实时工具调用监控
- 重命名包以便更清晰
- 更新文档和配置示例
🙏 致谢
此项目是 JetBrains MCP Proxy Server 的一个分支。所有原始实现的功劳归 JetBrains 团队所有。
📄 许可证
本项目采用 Apache 2.0 许可证。
Scan to join WeChat group