项目简介
这是一个专门为程序员设计的 Model Context Protocol (MCP) 服务器实现。它旨在通过提供结构化的编程相关上下文信息、可调用的工具集以及灵活的Prompt模板管理,增强大型语言模型(LLM)在代码理解、生成、审查等任务中的能力。服务器通过标准JSON-RPC协议与兼容的LLM客户端通信,支持多种传输方式。
主要功能点
- 多协议支持: 支持通过 Stdio 和 SSE (Server-Sent Events) 协议与客户端进行通信。
- Prompt模板管理: 可以读取和管理基于 YAML 文件定义的 Prompt 模板。
- 自动化工具创建: 能够自动将定义的 Prompt 模板转化为可供 LLM 调用的工具。
- 工具注册: 除了Prompt衍生的工具外,还可以注册并执行其他自定义工具。
- REST API (辅助): 提供一个基于 Express 的辅助 REST API,用于访问模型信息和 Prompt 模板列表。
安装步骤
要运行此MCP服务器,您需要安装 Node.js 和 pnpm 包管理器。
- 克隆仓库到本地: 'git clone https://github.com/zaizaizhao/mcp-for-programmer.git'
- 进入项目目录: 'cd mcp-for-programmer'
- 安装项目依赖: 'pnpm install'
- 构建项目: 'pnpm build'
服务器配置
MCP服务器通常由MCP客户端启动和管理。客户端需要知道如何执行服务器程序以及传递必要的参数。以下是针对这个服务器,MCP客户端可能需要的配置信息示例(JSON格式,请根据您的MCP客户端实际需求调整,以下仅为核心参数示例及说明):
-
配置 Stdior 传输模式 (默认):
{ "name": "programmer-mcp-server-stdio", // 为这个服务器连接起一个易于识别的名字 "command": "pnpm", // 启动服务器的命令,这里使用pnpm运行开发脚本 "args": ["dev", "--transport", "stdio"] // 传递给命令的参数,指定使用stdio传输模式 } -
配置 SSE 传输模式:
{ "name": "programmer-mcp-server-sse", // 为这个服务器连接起一个易于识别的名字 "command": "pnpm", // 启动服务器的命令 "args": ["dev:sse", "--port", "3322"] // 传递给命令的参数,使用dev:sse脚本启动sse模式,并指定端口 }(注意:SSE 模式需要客户端通过 HTTP 连接到指定的端口和路径)
基本使用方法
- 完成安装和构建步骤。
- 配置您的MCP客户端,使用上述提供的配置信息连接到服务器。
- 启动MCP客户端,它将自动启动并连接到MCP服务器。
- 一旦连接建立,客户端可以:
- 查询服务器的能力,发现可用的工具和Prompt模板。
- 通过标准MCP JSON-RPC请求调用服务器提供的工具(如Prompt模板衍生的工具),传递参数并接收结果。
- 对于SSE模式,客户端通过HTTP建立SSE连接接收服务器通知,并通过HTTP POST发送消息。
- (可选)通过 'http://localhost:3001/api/prompts' 等REST API端点查看Prompt模板列表和内容。
服务器启动后,您可以在控制台看到服务器的启动日志和监听的端口信息。
信息
分类
开发者工具