Gitee MCP Server
让 AI 用自然语言管理 Gitee 仓库:查 star、管 Issue、基于 commit 生成中文 CHANGELOG(原生无此 API)
Open source Open in the app JSON README (API)
About
让 AI 用自然语言管理 Gitee 仓库:查 star、管 Issue、基于 commit 生成中文 CHANGELOG(原生无此 API)
Details
- Kind
- MCP servers
- Topic
- Version control
- Publisher
- paulseth
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.0
- Last push
- 2026-09-11T18:43:31Z
- Repository state
- ativo
- Language
- TypeScript
- License
- MIT
- Added
- 2026-09-11 19:05:32
- Updated
- 2026-09-11 19:05:32
- Origin id
io.github.PaulSeth/gitee-mcp-server
README
# Gitee MCP Server
> 让任意 AI 模型用自然语言管理 Gitee 仓库的 MCP Server。
[](LICENSE)
[](https://www.npmjs.com/package/gitee-mcp)
[](https://glama.ai/mcp/servers/PaulSeth/gitee-mcp-server)
一句话就能替你管 Gitee:**"social-media-bot-cn-generic 现在多少 star?"** **"给这几个 issue 打上 bug 标签"** **"基于最近 commit 帮我生成一份中文 CHANGELOG 贴进 README"**。
本 Server 是 **MCP(Model Context Protocol)** 标准实现,可接入任何支持 MCP 的 AI 客户端(WorkBuddy / Claude Desktop / Cursor / 任意 Agent 框架)。
---
## ✨ 功能(v1)
| 工具 | 作用 |
|------|------|
| `get_repo_stats` | 仓库统计:star / fork / watch / 开放 issue 数 |
| `list_stargazers` | 列出点 star 的用户(⚠️ 需 PAT) |
| `list_issues` | 列出 Issue,支持按状态/标签过滤 |
| `create_issue` | 新建 Issue(收需求/建任务) |
| `update_issue` | 更新 Issue 状态/标签(自动打标签/关单) |
| `generate_changelog` | **基于 commit 生成中文 CHANGELOG**(Gitee 无原生 API,靠 commits 组合拼出) |
**资源**:`gitee://repo/{owner}/{repo}` —— 返回仓库统计 + 最近 5 条 commit 快照,AI 可直接读取。
---
## 🚀 快速开始
### 方式一:npx 直接运行(推荐,无需克隆)
```bash
npx -y gitee-mcp
```
> 首次运行会自动下载;默认 Mock 模式,无需 token 即可演示。
### 方式二:源码运行
```bash
git clone https://gitee.com/jokerbhind/gitee-mcp-server.git
cd gitee-mcp-server
npm install
npm run build
npm start # 默认 Mock 模式,无需 token 即可演示
```
### 接 WorkBuddy / Claude Desktop
在 `~/.workbuddy/mcp.json`(或对应 MCP 配置)中加入:
```json
{
"mcpServers": {
"gitee-mcp-server": {
"command": "npx",
"args": ["-y", "gitee-mcp"]
}
}
}
```
或使用本地构建产物(`command` 用绝对路径的 node,避免客户端不继承 PATH):
```json
{
"mcpServers": {
"gitee-mcp-server": {
"command": "C:/绝对路径/node.exe",
"args": ["H:/绝对路径/gitee-mcp-server/build/index.js"]
}
}
}
```
---
## 🔑 真实模式(Real)
复制 `.env.example` 为 `.env` 并填入 Gitee 私人令牌:
```bash
cp .env.example .env
# 编辑 .env:填入 GITEE_ACCESS_TOKEN
```
| 变量 | 说明 |
|------|------|
| `GITEE_ACCESS_TOKEN` | Gitee 私人令牌(设置 → 私人令牌,勾选 **projects** 权限)。**stargazers/subscribers 接口强制鉴权**,无 token 会 401 |
| `GITEE_MODE` | 留空=自动判定;`mock`=强制演示;`real`=强制真实(缺 token 自动回退 mock 并告警) |
Server 会自动从**项目根目录的 `.env`** 读取(无需设置 cwd),填好 token 后即自动切 Real 模式。
---
## 🐶 Dogfood 示例
本项目本身就用 `generate_changelog` 给 `jokerbhind/social-media-bot-cn-generic` 生成 CHANGELOG。真实 commit 输出示例:
```markdown
## CHANGELOG · jokerbhind/social-media-bot-cn-generic
> 基于最近 1 条 commit 自动生成(Gitee MCP Server)
### ✨ 新功能
- feat: 社媒客服 Bot 泛用版 Starter Kit _by PaulSeth(2026-09-03)_
```
> 这就是「gap filler」的溢价逻辑:Gitee 官方没有 CHANGELOG API,本 Server 用现成的 `/commits` 组合出人人想要的能力。
---
## 🧩 架构
```
AI 模型 ←→ MCP(STDIO) ←→ GiteeMcpServer
│
GiteeService(Mock/Real 双模式路由)
├─ mock.ts 本地快照(无凭证可演示)
└─ api.ts Gitee API v5(填 token 后生效)
```
Mock 模式让公开仓库也能 `npm start` 直接演示、被 Glama 自动收录,且不泄露任何凭证。
---
## 📦 发布与收录
| 目标 | 状态 | 做法 |
|------|------|------|
| **Gitee 公开仓** | ✅ 已上线 | https://gitee.com/jokerbhind/gitee-mcp-server |
| **GitHub 镜像仓** | ✅ 已上线 | https://github.com/PaulSeth/gitee-mcp-server |
| **npm** | ✅ 已发布 v0.1.0 | https://www.npmjs.com/package/gitee-mcp |
| **Glama** | ✅ 已提交并通过构建检查 | 提交 GitHub 镜像仓 URL 后由 Glama 自动生成镜像跑安全/质量检查 |
| **MCP Registry** | ⏳ 待发布 | `mcp-publisher login github` + `mcp-publisher publish`(读仓库根 `server.json`) |
> 本项目的 `CHANGELOG.md` 由 **本 Server 的 `generate_changelog` 工具自己生成**(dogfood)。
> Glama 索引的是 **GitHub** 仓库,故需先将本仓库镜像到 GitHub 再提交。
---
## 🗺️ Roadmap(Phase 2,按需再做)
- `comment_on_issue/pr`:AI 自动回复
- `webhook_auto_label`:监听 Webhook 自动打标签
- `gitee_to_github_mirror`:Gitee↔GitHub 双平台镜像
- `list_pulls` / `merge_pull`:PR 管理
- `create_release`:基于 CHANGELOG 自动发版
---
## 📄 License
[MIT](LICENSE) © 2026 Paul (Gitee: jokerbhind / GitHub: PaulSeth)