Back to the catalog

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: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![npm version](https://img.shields.io/npm/v/gitee-mcp.svg)](https://www.npmjs.com/package/gitee-mcp)
[![Glama](https://glama.ai/mcp/servers/PaulSeth/gitee-mcp-server/badge)](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)

More