使用说明
项目简介
Gitee MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,专注于为AI助手提供与Gitee平台交互的能力。通过提供一系列工具,AI助手可以管理Gitee上的代码仓库、Issue、Pull Request和通知等,从而更智能地完成代码管理和协作任务。
主要功能点
- Gitee API 工具集: 提供丰富的工具,覆盖 Gitee 代码仓库、Issue、Pull Request、通知和用户等核心功能模块,例如:
- 仓库管理: 列出用户仓库、获取文件内容、创建仓库、创建 Release 等。
- Pull Request 管理: 列出、创建、更新、合并 Pull Request,以及评论 Pull Request。
- Issue 管理: 创建、更新 Issue,获取 Issue 详情,列出 Issue,以及评论 Issue。
- 用户和通知: 获取用户信息、列出用户通知。
- 灵活的配置方式: 支持通过命令行参数或环境变量配置 Gitee API Base URL 和 Access Token,方便集成到不同的环境。
- 多种传输协议: 支持 Stdio 和 SSE (Server-Sent Events) 两种传输协议,以适应不同的 MCP 客户端需求。
- 详细的使用文档: 提供了清晰的安装和使用说明,以及针对常见 MCP 客户端 (如 Cursor, Windsurf) 的配置示例。
安装步骤
- 环境准备: 确保已安装 Go 1.23.0 或更高版本,并拥有 Gitee 账号和个人访问令牌 (Personal Access Token)。获取 Gitee 个人访问令牌。
- 构建程序 (两种方式任选其一):
- 从源码构建:
构建成功后,将 './bin/mcp-gitee' 可执行文件添加到系统的 'PATH' 环境变量中,以便在任何位置直接运行 'mcp-gitee' 命令。git clone https://github.com/oschina/mcp-gitee.git cd mcp-gitee make build - 使用 'go install' 命令:
使用 'go install' 命令会将 'mcp-gitee' 可执行文件安装到 '$GOPATH/bin' 目录 (或 '$HOME/go/bin',取决于 Go 版本和配置)。请确保该目录已添加到 'PATH' 环境变量。go install github.com/oschina/mcp-gitee@latest
- 从源码构建:
服务器配置
MCP 服务器需要配置在 MCP 客户端中。MCP 客户端通过配置服务器的启动命令和参数来与 MCP 服务器建立连接。以下是一些通用的配置示例,您可以根据您的 MCP 客户端进行调整。
通用配置 (JSON 格式):
{ "servers": { "gitee-mcp": { // 服务器名称,可以自定义,例如 "gitee-server" "command": "mcp-gitee", // 启动命令,确保 mcp-gitee 可执行文件在 PATH 环境变量中,或者使用绝对路径 "args": ["-token", "<Your Personal Access Token>"] // 启动参数,必须提供 Gitee Personal Access Token } } }
Windsurf 客户端配置示例 (JSON 格式):
{ "mcpServers": { "gitee": { // 服务器名称,Windsurf 客户端配置示例中为 "gitee" "command": "mcp-gitee", // 启动命令 "env": { "GITEE_API_BASE": "https://gitee.com/api/v5", // 可选,Gitee API Base URL,默认 https://gitee.com/api/v5 "GITEE_ACCESS_TOKEN": "<your personal access token>" // 必须,Gitee Personal Access Token,也可以通过命令行参数 -token 传递 } } } }
配置参数说明:
- 'command': 指定 MCP 服务器的可执行文件启动命令,通常为 'mcp-gitee'。请确保 'mcp-gitee' 可执行文件在您的系统 'PATH' 环境变量中,或者在此处使用可执行文件的绝对路径。
- 'args': 命令行参数数组,用于传递给 'mcp-gitee' 服务器。例如,'-token <Your Personal Access Token>' 参数用于提供 Gitee 个人访问令牌。
- 'env': 环境变量配置,以键值对形式定义。例如,'GITEE_API_BASE' 用于设置 Gitee API 的基础 URL,'GITEE_ACCESS_TOKEN' 用于设置 Gitee 访问令牌。
重要提示:
- 请务必将 '<Your Personal Access Token>' 替换为您在 Gitee 上申请的实际个人访问令牌。
- 您可以选择通过命令行参数 '-token' 或环境变量 'GITEE_ACCESS_TOKEN' 两种方式之一来传递访问令牌。推荐使用环境变量 'GITEE_ACCESS_TOKEN',可以避免将令牌暴露在命令行历史记录中。
- 如果您需要连接到非官方的 Gitee 实例 (例如企业版 Gitee),请配置 'GITEE_API_BASE' 环境变量或 '-api-base' 命令行参数来指定正确的 API Base URL。
基本使用方法
- 启动 MCP 服务器: 在终端中运行 'mcp-gitee' 命令 (如果已添加到 PATH 环境变量) 或指定可执行文件的完整路径来启动服务器。如果使用命令行参数传递 Access Token,例如:
如果使用 SSE 传输协议,可以使用 '-transport sse' 参数,并可使用 '-sse-address' 参数指定 SSE 服务器地址,例如:mcp-gitee -token <Your Personal Access Token>mcp-gitee -transport sse -token <Your Personal Access Token> -sse-address localhost:8080 - 配置 MCP 客户端: 根据您的 MCP 客户端 (例如 Cursor, Windsurf) 的文档,配置 MCP 服务器连接信息,包括服务器名称、启动命令、参数等。确保客户端能够正确连接到 Gitee MCP Server。
- 在 MCP 客户端中使用工具: 连接成功后,您可以在 MCP 客户端中使用 Gitee MCP Server 提供的工具。工具名称已在 'README.md' 文件和代码注释中列出。在客户端中,您可以通过工具名称 (例如 'list_user_repos', 'create_issue') 调用相应的 Gitee API 功能,并根据工具的参数提示提供必要的输入信息。
示例场景
例如,在支持 MCP 协议的 AI 编程助手 (如 Cursor) 中,您可以使用 'list_user_repos' 工具列出您的 Gitee 仓库,使用 'get_file_content' 工具获取仓库中文件的内容,使用 'create_issue' 工具创建 Issue,使用 'create_pull' 工具创建 Pull Request 等,从而实现更高效的代码管理和协作流程。
信息
分类
开发者工具