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