Gitee
官方Gitee API集成,仓库、议题和拉取请求管理等功能。
你可以用 Gitee MCP 做什么?
- 管理仓库问题 — 让您的助手使用
list_repo_issues、create_issue和update_issue列出、创建或更新仓库中的问题。 - 处理拉取请求 — 让您的助手使用
list_repo_pulls、create_pull、merge_pull和manage_pull_review等工具列出、创建、合并或审查拉取请求。 - 探索仓库内容 — 使用
get_file_content、compare_branches_tags和search_files_by_content获取文件内容、比较分支或标签,并按内容搜索文件。 - 管理发布和分支 — 通过
create_release、list_releases和fork_repository创建发布、列出现有发布或分支仓库。 - 搜索与发现 — 使用
search_open_source_repositories和search_users在 Gitee 上查找开源仓库或用户。 - 跟踪通知 — 使用
list_user_notifications查看您的最新通知。
文档
Gitee MCP 服务器
Gitee MCP 服务器是 Gitee 的模型上下文协议(MCP)服务器实现。它提供了一组用于与 Gitee API 交互的工具,使 AI 助手能够管理仓库、Issue、Pull Request 等。
功能特性
- 与 Gitee 仓库、Issue、Pull Request 和通知进行交互
- 可配置的 API 基础 URL,以支持不同的 Gitee 实例
- 命令行参数便于配置
- 支持个人、组织和企业操作
- 动态启用/禁用工具集
实际场景:从仓库获取 Issue,实现代码并创建 Pull Request
- 获取仓库 Issue

- 根据 Issue 详情实现编码并创建 Pull Request

- 评论并关闭 Issue

安装
远程 MCP 服务器无需安装即可直接使用。要在本地(stdio)运行 mcp-gitee,请选择以下选项之一。
远程 MCP 服务器(推荐)
将以下内容添加到主机配置的 mcpServers 部分,将 <your personal access token> 替换为从此处获取的令牌:
{
"mcpServers": {
"gitee": {
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>"
}
}
}
}
有关各客户端的配置文件路径和格式(Claude Code、Codex、Cursor、Trae、Cline、Continue、opencode),请参阅下方 MCP 主机配置部分中的指南链接。
本地(stdio)
下载预构建二进制文件
从 Releases 页面获取适用于您平台的压缩包(linux-amd64 / linux-arm / darwin-amd64 / darwin-arm64 / windows-amd64),解压后将 mcp-gitee 放入 PATH 环境变量中(在 Windows 上可执行文件为 mcp-gitee.exe)。
使用 npx
无需安装;启动时会自动下载适用于您平台的预构建二进制文件:
{
"mcpServers": {
"gitee": {
"command": "npx",
"args": [
"-y",
"@gitee/mcp-gitee@latest"
],
"env": {
"GITEE_API_BASE": "https://gitee.com/api/v5",
"GITEE_ACCESS_TOKEN": "<your personal access token>"
}
}
}
}
从源码构建
需要 Go 1.23.0 或更高版本。
-
克隆仓库:
git clone https://gitee.com/oschina/mcp-gitee.git cd mcp-gitee -
构建项目:
make build将 ./bin/mcp-gitee 移动到 PATH 环境变量中
使用 go install
go install gitee.com/oschina/mcp-gitee@latest
使用已安装的可执行文件
一旦 mcp-gitee 在您的 PATH 中可用(通过 Releases、源码构建或 go install):
{
"mcpServers": {
"gitee": {
"command": "mcp-gitee",
"env": {
"GITEE_API_BASE": "https://gitee.com/api/v5",
"GITEE_ACCESS_TOKEN": "<your personal access token>"
}
}
}
}
Windows:可执行文件必须包含
.exe后缀,且command中的路径应使用正斜杠/(Windows 接受正斜杠,这样可以避免 JSON 反斜杠转义错误):{ "mcpServers": { "gitee": { "command": "C:/Users/<you>/bin/mcp-gitee.exe", "env": { "GITEE_ACCESS_TOKEN": "<your personal access token>" } } } }
MCP 主机配置
配置示例:点击查看更多应用配置
命令行选项
--token:Gitee 访问令牌--api-base:Gitee API 基础 URL(默认:https://gitee.com/api/v5)--version:显示版本信息--transport:传输类型(stdio、sse 或 http,默认:stdio)--address:服务器启动的主机和端口(默认:localhost:8000)--enabled-toolsets:要启用的工具列表(逗号分隔)(如果指定,则仅启用这些工具)--disabled-toolsets:要禁用的工具列表(逗号分隔)
环境变量
您还可以使用环境变量配置服务器:
GITEE_ACCESS_TOKEN:Gitee 访问令牌GITEE_API_BASE:Gitee API 基础 URLENABLED_TOOLSETS:要启用的工具列表(逗号分隔)DISABLED_TOOLSETS:要禁用的工具列表(逗号分隔)
工具集管理
工具集管理支持两种模式:
-
启用指定工具(白名单模式):
- 使用
--enabled-toolsets参数或ENABLED_TOOLSETS环境变量 - 指定后,仅列出的工具会被启用,其他工具将被禁用
- 示例:
--enabled-toolsets="list_user_repos,get_file_content"
- 使用
-
禁用指定工具(黑名单模式):
- 使用
--disabled-toolsets参数或DISABLED_TOOLSETS环境变量 - 指定后,列出的工具将被禁用,其他工具将被启用
- 示例:
--disabled-toolsets="list_user_repos,get_file_content"
- 使用
注意:
- 如果同时指定了
enabled-toolsets和disabled-toolsets,则enabled-toolsets优先 - 工具名称区分大小写
按请求过滤工具(HTTP 头)
使用远程 MCP 服务器(HTTP/SSE 传输)时,您可以通过 HTTP 头按请求动态过滤可用工具。这对于需要精细控制工具暴露而无需重启服务器的客户端非常有用。
-
通过请求头启用指定工具(白名单):
- 使用
X-MCP-Enabled-Tools请求头 - 仅列出的工具会在该请求中启用
- 示例:
X-MCP-Enabled-Tools: list_user_repos,get_file_content
- 使用
-
通过请求头禁用指定工具(黑名单):
- 使用
X-MCP-Disabled-Tools请求头 - 列出的工具会在该请求中被禁用
- 示例:
X-MCP-Disabled-Tools: create_repo,delete_repo
- 使用
优先级规则:
- 如果同一请求中同时存在
X-MCP-Enabled-Tools和X-MCP-Disabled-Tools,则白名单(X-MCP-Enabled-Tools)优先 - 工具名称区分大小写
Cursor/Claude 配置示例:
{
"mcpServers": {
"gitee": {
"url": "https://api.gitee.com/mcp",
"headers": {
"Authorization": "Bearer <your personal access token>",
"X-MCP-Enabled-Tools": "list_user_repos,get_file_content,list_repo_issues"
}
}
}
}
许可证
本项目采用 MIT 许可证。有关详细信息,请参阅 LICENSE 文件。
可用工具
服务器提供了各种与 Gitee 交互的工具:
| 工具 | 类别 | 描述 |
|---|---|---|
| list_user_repos | 仓库 | 列出用户授权的仓库 |
| get_file_content | 仓库 | 获取仓库中文件的内容 |
| create_repo | 仓库 | 创建仓库(用户、组织或企业) |
| fork_repository | 仓库 | Fork 一个仓库 |
| create_release | 仓库 | 为仓库创建发布版本 |
| list_releases | 仓库 | 列出仓库的发布版本 |
| search_open_source_repositories | 仓库 | 在 Gitee 上搜索开源仓库 |
| search_files_by_content | 仓库 | 在仓库中按内容搜索文件 |
| compare_branches_tags | 仓库 | 比较仓库中的两个分支、标签或提交 |
| list_repo_pulls | Pull Request | 列出仓库中的 Pull Request |
| merge_pull | Pull Request | 合并一个 Pull Request |
| create_pull | Pull Request | 创建一个 Pull Request |
| update_pull | Pull Request | 更新一个 Pull Request |
| get_pull_detail | Pull Request | 获取 Pull Request 的详细信息 |
| get_diff_files | Pull Request | 获取 Pull Request 的差异文件 |
| manage_pull_review | Pull Request | 管理 Pull Request 审查(批准或取消) |
| create_comment | 评论 | 在 Issue 或 Pull Request 上创建评论 |
| list_comments | 评论 | 列出 Issue 或 Pull Request 的所有评论 |
| create_issue | Issue | 创建一个 Issue |
| update_issue | Issue | 更新一个 Issue |
| get_repo_issue_detail | Issue | 获取仓库 Issue 的详细信息 |
| list_repo_issues | Issue | 列出仓库的 Issue |
| get_user_info | 用户 | 获取当前已认证用户的信息 |
| search_users | 用户 | 搜索用户 |
| list_user_notifications | 通知 | 列出用户通知 |
贡献
我们欢迎开源社区的贡献!如果您想为这个项目做出贡献,请遵循以下指南:
- Fork 该仓库。
- 为您的功能或错误修复创建一个新分支。
- 进行修改并确保代码有良好的文档说明。
- 提交一个包含清晰变更描述的 Pull Request。
有关更多信息,请参阅 CONTRIBUTING 文件。




