使用说明(Markdown 格式)
-
项目简介 MCPProxy-Go 是一个面向 MCP 的服务器端实现与服务框架,旨在为运行在大型语言模型客户端上的应用提供结构化的上下文数据、工具执行能力和可渲染的提示模板。它具备对上游 MCP 服务器的代理、资源与工具管理、以及安全特性(OAuth、密钥管理、Docker 隔离)的能力。
-
主要功能点
- 资源与工具托管:集中管理资源、工具及其调用,支持读取工具、执行外部工具、管理工具列表等能力。
- 工具注册与执行:允许向上游 MCP 服务器注册并执行工具,支持本地服务器(stdio)及远端服务器(HTTP)。
- Prompt 模板与渲染:提供 可定制的提示模板渲染与上下文注入能力,便于 LLM 交互。
- JSON-RPC 与多传输:通过 JSON-RPC 与客户端通信,支持 HTTP/HTTPS、stdio、SSE、WebSocket 等传输协议。
- 会话与状态管理:内置会话管理、能力声明、健康检查与诊断接口,便于运维与监控。
- 安全与隔离:支持 Secret 管理(OS 密钥环)、OAuth 2.1、Docker 隔离等安全特性。
- 上下文与扩展性:提供对 upstream 上游 MCP 服务器的统一封装与管理,便于扩展新服务器类型。
-
安装步骤
- 使用预构建的发行包:下载对应操作系统的 MCPProxy-Go 发行版,直接运行。
- 手动编译(Go 环境必需):在仓库根目录执行 go build ./cmd/mcpproxy,生成可执行文件 mcpproxy,然后执行 mcpproxy serve 启动服务。
- 常见运行命令示例(假设已将可执行文件加入系统 PATH):
- 运行服务并显示系统托盘或等效界面(若有图形化组件): mcpproxy serve
- 指定配置文件启动(如有自定义配置): mcpproxy serve --config ~/.mcpproxy/mcp_config.json
-
服务器配置(MCP 服务器对接配置说明) MCP 客户端需要配置 MCP 服务器以便连接与交互。配置示例信息(描述性文本,不直接作为代码块)如下:
- 名称:local-python,启动命令:python,参数:-m my_server,协议:stdio,启用:true
- 名称:remote-http,启动方式:通过远端 URL 调用,URL:http://localhost:3001,协议:http,启用:true 配置文件通常包含字段:
- listen、data_dir、mcpServers 等 其中 mcpServers 为服务器数组,每个对象可包含:
- name: 服务器名称
- command: 启动命令(如 python、uvx 等)
- args: 启动参数数组(如 ["-m","my_server"])
- url: 远端 MCP 服务器地址(若使用 http 传输)
- protocol: 传输协议(stdio、http、streamable-http 等)
- enabled: 是否启用该服务器 注:MCP 客户端在连接 MCP 服务器时需要上述配置信息,但示例配置仅作为参考,实际使用时请按项目提供的默认字段与文档进行配置。
-
基本使用方法
- 启动与连接
- 启动 MCPProxy 服务(本地配置如默认)后,客户端即可通过 MCP 协议与 MCPProxy 通信。
- 客户端通过 JSON-RPC 调用 MCPProxy 提供的资源、工具、Prompts 等能力。
- 配置与扩展
- 通过 mcp_config.json 配置本地数据目录、监听地址、以及要托管的 MCP 服务器。
- 若需要对接第三方工具或上游 MCP 服务器,按上述服务器配置示例加入相应条目即可。
- 安全与运维
- 使用 Secrets Management 配置密钥与凭证,开启 TLS/HTTPS 时可 Trust Certificate。
- 如需 OAuth 授权,请配置 OAuth 流程,或使用现成的服务器实现。
- 如使用 Docker 隔离,请按文档开启 docker_isolation,并按需配置镜像与资源限制。
- 启动与连接
信息
分类
网页与API