项目简介
GitHub Enterprise MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 应用提供访问 GitHub Enterprise (GHES) 数据的能力。通过该服务器,LLM 可以便捷地获取 GHES 中的仓库信息、议题、Pull Requests 等,从而更好地理解和处理与代码仓库相关的任务。
主要功能点
- 资源访问: 提供对 GitHub Enterprise 仓库、议题 (Issues)、Pull Requests (PRs) 等资源的访问接口。
- MCP 协议支持: 遵循 MCP 协议标准,易于与支持 MCP 协议的 LLM 客户端集成。
- 可配置: 支持配置 GitHub Enterprise API URL 和访问令牌,以连接到您的 GHES 实例。
- 多种传输协议: 支持 Stdio, SSE, WebSocket 等多种传输协议,满足不同应用场景的需求。
安装步骤
- 安装 Go: 确保您的开发环境中已安装 Go 语言。您可以从 https://go.dev/dl/ 下载并安装。
- 克隆仓库: 使用 Git 克隆 GitHub Enterprise MCP Server 仓库到本地:
git clone https://github.com/ddukbg/github-enterprise-mcp.git - 进入服务器目录: 切换到仓库的服务器代码目录:
cd github-enterprise-mcp/cmd/server - 构建服务器: 使用 Go build 命令编译生成可执行文件:
go build -o ghemcp-server
服务器配置
MCP 客户端需要配置以下 JSON 对象以连接到 GitHub Enterprise MCP Server。请根据您的实际 GHES 环境修改以下参数:
{ "serverName": "GitHub Enterprise MCP Server", "command": "./ghemcp-server", "args": [ "--github-api-url", "YOUR_GHES_API_URL", // 替换为您的 GitHub Enterprise API 地址,例如 "https://your-ghes-domain/api/v3" "--github-token", "YOUR_GHES_TOKEN", // 替换为具有仓库访问权限的 GitHub Personal Access Token "--port", "8080", // (可选) 指定服务器监听端口,默认为 8080 "--transport", "stdio" // (可选) 指定传输协议,默认为 stdio,还可选 sse 或 websocket ] }
请注意:
- 'YOUR_GHES_API_URL' 需要替换为您的 GitHub Enterprise 实例的 API 根地址。如果您不确定,通常是您的 GHES 域名加上 '/api/v3'。
- 'YOUR_GHES_TOKEN' 需要替换为您在 GitHub Enterprise 中生成的 Personal Access Token。该 Token 必须具有访问您希望 LLM 应用访问的仓库的权限。
基本使用方法
-
启动服务器: 在服务器端,打开终端并执行以下命令启动 GitHub Enterprise MCP Server (假设您已在 'github-enterprise-mcp/cmd/server' 目录):
./ghemcp-server --github-api-url YOUR_GHES_API_URL --github-token YOUR_GHES_TOKEN请替换 'YOUR_GHES_API_URL' 和 'YOUR_GHES_TOKEN' 为您的实际值。
-
配置 MCP 客户端: 在您的 MCP 客户端(例如 Cursor),根据客户端的指引,配置上述提供的 JSON 对象,将客户端连接到正在运行的 GitHub Enterprise MCP Server。
-
使用 LLM 客户端: 连接成功后,您的 LLM 客户端即可通过 MCP 协议与 GitHub Enterprise MCP Server 交互,访问和利用 GitHub Enterprise 中的数据,例如查询仓库信息、获取议题列表等,以增强 LLM 在代码理解和生成方面的能力。
信息
分类
开发者工具