使用说明
项目简介
本项目是一个 MCP 服务器,旨在将 GitHub 的常用功能封装成一系列易于 LLM (大型语言模型) 客户端调用的工具。通过此服务器,LLM 可以安全、便捷地访问和操作 GitHub 上的 Issues、Pull Requests 和 Actions 等资源,实现诸如自动化问题跟踪、代码审查辅助和工作流管理等应用场景。
主要功能点
- Issue 管理工具:
- 获取 Issue 详情
- 创建 Issue 评论
- 更新 Issue 信息
- 列出仓库 Issue
- Pull Request 管理工具:
- 获取 Pull Request 详情
- 创建 Pull Request 评论
- 更新 Pull Request 信息
- 列出仓库 Pull Request
- Actions 工作流管理工具:
- 列出工作流运行记录
- 获取工作流运行详情
- 获取工作流运行使用情况
- 取消工作流运行
- 重试工作流运行
- 基于 MCP 协议: 采用标准的 Model Context Protocol (MCP) 构建,易于与各种 MCP 客户端集成。
- SSE 通信: 使用 Server-Sent Events (SSE) 实现与客户端的实时通信。
- Express.js 框架: 基于 Node.js 和 Express.js 框架开发,易于部署和扩展。
安装步骤
- 克隆仓库
git clone https://github.com/mattpocock/mcp-server-from-prompts.git - 进入项目目录
cd mcp-server-from-prompts - 安装依赖
npm install - 配置环境变量
- 在项目根目录下创建 '.env' 文件。
- 添加 GitHub 访问令牌 (Personal Access Token):
请确保你的 GitHub Token 具备访问仓库的相应权限。GITHUB_TOKEN=YOUR_GITHUB_PERSONAL_ACCESS_TOKEN
服务器配置
以下 JSON 配置信息供 MCP 客户端参考,用于连接此 MCP 服务器:
{ "serverName": "GitHub MCP Server", "command": "node", "args": ["app/dist/main.js"], "transport": "sse", "messageEndpoint": "/messages", "sseEndpoint": "/sse" }
// MCP 客户端配置参数说明: // serverName: 服务器名称,可自定义,用于标识该服务器。 // command: 启动服务器的命令,这里使用 Node.js 运行 JavaScript 文件。 // args: 命令参数,指向编译后的服务器主入口文件 (app/dist/main.js)。 // transport: 通信协议,使用 SSE (Server-Sent Events) 协议。 // messageEndpoint: 接收 JSON-RPC 消息的 HTTP POST 接口地址。 // sseEndpoint: 建立 SSE 连接的 HTTP GET 接口地址。
基本使用方法
- 启动服务器
或先执行 'npm run build' 构建,再执行 'npm run start' 启动生产环境服务器。npm run dev - 配置 MCP 客户端
- 在 MCP 客户端中,根据 “服务器配置” 提供的 JSON 信息配置连接到 GitHub MCP Server。
- 调用 MCP 工具
- 通过 MCP 客户端,可以向服务器发送符合 MCP 协议的 JSON-RPC 请求,调用已注册的 GitHub 工具。
- 例如,调用 'getIssue' 工具获取 Issue 详情,调用 'createIssueComment' 工具创建 Issue 评论等。
- 具体可用的工具名称、参数和返回值请参考项目代码中 'app/src/github/tools' 目录下的文件。
信息
分类
开发者工具