article
README
🚀 plugged.in 模型上下文协议(MCP)代理服务器
本项目“plugged.in MCP 代理服务器”,旨在为模型上下文协议(Model Context Protocol, MCP)客户端提供服务。该代理服务器可连接多个底层 MCP 服务器,通过统一接口将其能力(工具、资源、提示等)暴露给上层应用。
🚀 快速开始
此代理服务器能为 MCP 客户端提供服务,连接多个底层 MCP 服务器并暴露其能力。以下是使用步骤:
- 按照安装指南完成安装。
- 启动代理服务器。
- 与上层应用集成使用。
✨ 主要特性
- 充当 MCP 客户端(如 Claude Desktop)和多个底层 MCP 服务器之间的桥梁。
- 与 plugged.in 应用 无缝协作,提供集中式能力发现、自定义指令管理、多工作区支持、交互式控制台以及用户身份验证和 API 密钥管理等功能。
📦 安装指南
1. 安装依赖项
安装 Node.js
建议使用 Node.js 版本为 16 或更高,可通过以下命令安装:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
nvm install --lts
安装 npm 包
npm install -g npm@latest
安装项目依赖
进入项目目录后,运行:
npm install
2. 运行服务器
使用以下命令启动代理服务器:
node index.js
其他操作
启动开发服务器
npm run dev
构建项目
npm run build
运行测试
npm test
🔧 技术细节
系统架构
该代理服务器充当 MCP 客户端(如 Claude Desktop)和多个底层 MCP 服务器之间的桥梁。
工作流程
- 配置获取:代理服务器从 plugged.in 应用获取服务器配置。
- 能力列表:
tools/list:通过/api/tools接口获取工具列表(带前缀)resources/list:通过/api/resources接口获取资源列表resource-templates/list:通过/api/resource-templates接口获取资源模板列表prompts/list:合并来自/api/prompts和/api/custom-instructions的结果,返回提示词列表
- 能力解析:
tools/call:从工具名称中提取前缀,查找目标服务器resources/read:调用/api/resolve/resource?uri=...接口获取服务器详细信息prompts/get:检查是否有自定义指令前缀或调用/api/resolve/prompt?name=...接口
- 请求路由:将请求转发到相应的底层 MCP 服务器
- 响应处理:将来自底层服务器的响应返回给客户端
📚 详细文档
与 plugged.in 应用集成
该代理服务器设计用于与 plugged.in 应用 无缝协作,提供以下功能:
- 集中式能力发现(工具、资源、模板、提示)
- 自定义指令管理
- 多工作区支持以维护不同配置集
- 交互式控制台用于测试 MCP 工具
- 用户身份验证和 API 密钥管理
相关资源
项目结构
index.js:主入口文件,启动代理服务器。config/:包含配置文件和环境变量设置。routes/:定义各种 HTTP 路由处理逻辑。middleware/:实现请求处理的中间件功能。utils/:提供辅助函数和工具方法。
贡献指南
- 克隆仓库
git clone https://github.com/yourusername/pluggedin-mcp-proxy.git
cd pluggedin-mcp-proxy
- 安装依赖
npm install
- 启动开发环境
npm run dev
-
开始编码:
- 查看项目结构,熟悉代码组织。
- 针对具体功能模块进行开发或修复问题。
-
提交更改
- 完成修改后,添加变更记录:
git add .
git commit -m "你的提交信息"
- 推送到远程仓库:
git push origin your-branch-name
- 创建 Pull Request:
- 在 GitHub 上为项目新建一个 Pull Request,详细说明你所做的修改及其目的。
问题反馈
如遇任何问题或有改进建议,请访问 Issues 页面 提交 Issue。
📄 许可证
本项目的授权遵循 MIT LICENSE。
微信扫一扫