前言
在前面分享的《一文读懂MCP:助力大模型接入合规"四肢" - 掘金》中,我们讲述了 MCP 是什么,以及 MCP 能够做什么。
那次分享有点理论,今天,我们通过 Gitee MCP Server 来说明下 MCP 具体增强了什么。
最近和之前带过我的学长讨论了不少 AI 程序员的思路,今天正好验证下"AI自动领需求,自动改需求"的效果。
Gitee MCP Server
简介
首先,简单介绍下。
Gitee MCP Server
是 Gitee 发布的一个 MCP Server,它可以方便开发者通过 AI 助手直接操作代码仓库,包括理解 Issue、创建 PR、发布版本等等。
- 多维度资源管理:支持对仓库、Issue、PR、发行版等资源的全生命周期管理。
- 灵活配置:支持自定义 API 端点(-api-base),适配企业私有化部署场景。
- 双向交互:提供 Issue 评论、PR 审查、通知订阅等双向沟通工具。
- 开箱即用:通过命令行工具快速部署,支持stdio与sse两种通信模式。
概念复习
结合今天的案例,再次解释下 MCP 概念:
- Host:宿主程序,今天依然使用 Cursor 进行开发,所以,Host 就是 Cursor。
- Client:MCP 客户端,Cursor新版本已经支持 MCP 配置,相当于内置了 Client。
- Server:MCP 服务器,这里就是 Gitee MCP Server,Gitee 通过对 API 的封装,提供满足 MCP 协议的接口,方便 Cursor 进行调用。
没有实践之前,我把 Gitee 开源的这段代码理解为 Client 了,纠结了好久。
安装注意事项
我的环境是 Windows + Cursor。
安装过程参考官方文档即可:mp.weixin.qq.com/s/0ik_06aTQ...
根据我的经验,备注几个地方:
- 二进制下载后解压缩即可,为避免非必要错误,建议放置全英文路径下。本质是个可执行的命令。
- Cursor 中配置 MCP Server 时,以下两种方式都行,一个是把解压后的
mcp-gitee.exe
加入环境变量,另一个是在 Cursor 中配置全路径(我选择了这种),如下:
json
{
"mcpServers": {
"gitee": {
"command": "C:/Users/XXX/Downloads/mcp-gitee-windows-amd64/mcp-gitee.exe",
"env": {
"GITEE_API_BASE": "https://gitee.com/api/v5",
"GITEE_ACCESS_TOKEN": "<your personal access token>"
}
}
}
}
- 如果指示灯没有变绿,也可以尝试点击"刷新"按钮,点击后出现命令框,等待一会即可。
成功后效果如下:
- 指示灯变绿,Eabled 和 Disabled 容易理解反,大家点几下就好了。
- Tools 显示出相应工具。
到此,Gitee MCP Server 的安装已经完成了。
实操模拟
下面才是今天的正题。
准备工作
-
建立了一个 Gitee 仓库,简化理解,就一个 index.html 文件。
预览效果如下:
-
建立了一个 Issue,"把首页网页内容改为gitee mcp server",也很简单,今天以流程走通为主。
Bug 修复
获取Issue,修复bug
提示词:
vbscript
获取 FlyFive/gitee-mcp-server-demo 下的issue"更改网页标题为gitee mcp server",并修复它。
结果:
- 找到了相关的issue(IBWKNV)
- 修改了index.html文件中的网页标题和内容为"gitee mcp server"
- 将issue状态更新为已关闭
完美实现,并且仔细看截图,会发现,它"直接获取 issue 详情"的思路碰壁后,还会更换为"遍历 issue "的思路。
效果:
创建PR,推送代码
提示词:
bash
建立pr,修改提交仓库
提示词就是这么朴实无华。
结果:
- 创建了新分支 feature/update-title
- 提交了对 index.html 的修改
- 推送了分支到远程仓库
- 创建了一个新的Pull Request(PR #1)
效果:
总结
今天,通过展示获取Issue,完成修改,提交代码的流程尝试,一方面给大家更加形象的说明 MCP 的作用,另一方面,也希望为"AI协同编程"提供一些思路验证。
继续努力,我相信能帮我编程的"贾维斯"很快就会实现的!