AI【应用 01】Trae Agent Gitee自动化辅助神器(使用 MCP tools 创建自定义 Trae Agent 的探索分享)

我用Trae 做了一个有意思的Agent 「Gitee自动化辅助神器」。 点击 s.trae.com.cn/a/b38cc4 立即复刻,一起来玩吧!

1.简介

一个自动化管理源码的工具,实现上班前的代码自动拉取、合并,下班后的代码自动提交,让开发者只关心核心代码编写的辅助工具。其核心目标是简化重复性操作,提升开发者与 Gitee 交互的效率。

1.1 最初的想法

由于没有找到定时调度类的 MCP 服务器,设想是读取 Excel 文件里的命令,根据命令设置的执行时间进行接口调用,执行结束后将 MCP 服务的反馈结果保存回 Excel 里。设置了两个时间段的代码拉取与提交操作,设计的 Excel 文档格式如下:

命令ID 命令内容 执行时间 状态 时间戳 错误信息 返回数据
1 合并拉取请求 08:30:00 成功 2025-06-10T08:31:00Z {"code": 0, "msg": "执行成功"}
2 代码提交 11:50:00 失败 2025-06-10T11:51:00Z 命令不存在 {"code": 404, "msg": "命令不存在"}
3 合并拉取请求 13:30:00
4 代码提交 17:50:00

我使用的是 Gitee 作为源码管理的 MCP 服务器:

完整流程图为:

1.2 实现的功能

查看了 Gitee MCP 服务器提供的各种与 Gitee 交互的工具才发现没有跟 Push相关的命令,只有跟 Pull相关的命令,如下:

list_repo_pulls Pull Request 列出仓库中的拉取请求
merge_pull Pull Request 合并拉取请求
create_pull Pull Request 创建拉取请求
update_pull Pull Request 更新拉取请求
get_pull_detail Pull Request 获取拉取请求的详细信息
comment_pull Pull Request 评论拉取请求
list_pull_comments Pull Request 列出拉取请求的所有评论

我发现 GitHub MCP Server 是有push_files工具的,但是我们没有使用 GitHub 进行代码管理,相信 Gitee MCP 服务器以后也会提供提交相关的命令的。修改后的 Excel 内容:

命令ID 命令内容 执行时间 状态 时间戳 错误信息 返回数据
1 合并拉取请求 08:30:00
2 合并拉取请求 13:30:00

2.创作构思

2.1 设计初衷(解决痛点)

  1. 开发者需要频繁手动操作 Gitee(如创建合并请求、管理分支),效率低下。
  2. Excel 作为常见的数据管理工具,缺乏与 Gitee 的直接联动能力。
  3. 传统脚本或工具需要复杂配置。
  4. 目标 :通过 Agent 实现Excel指令 → Gitee操作 → 结果回写的自动化,降低人工操作成本,减少错误率。

2.2 核心价值

  1. 低门槛:用户只需在 Excel 中填写命令,无需编写代码或脚本。
  2. 动态交互:支持实时调用 Gitee API,并自动更新执行结果(如状态码、返回数据)。
  3. 可扩展性:通过 MCP 协议灵活集成其他工具(如文件系统、日志记录)。

2.3 适用场景

  • 批量创建或更新 Gitee 合并请求。
  • 自动化同步本地 Excel 配置到 Gitee 仓库(如自动化部署脚本)。
  • 实时监控 Gitee 仓库状态并反馈到 Excel(如CI/CD流程结果)。

3.技术实现原理

3.1 整体架构

  • 输入层:Excel文件作为指令来源(如合并请求标题、目标分支等)。
  • 逻辑层:Agent 解析 Excel 内容,通过 MCP 调用 Gitee API。
  • 输出层:将 API 执行结果(成功/失败、错误信息等)写入Excel。

3.2 关键技术组件

MCP 作为桥梁连接 Excel、Gitee API 和 Agent,定义工具调用规范:

  • Agent 通过 MCP 发现可用工具(如gitee_api_tool)。
  • 使用Excel MCP Server解析 Excel 指令,调用Gitee MCP Server发送命令请求。
  • 将返回结果通过Excel MCP Server写入 Excel。
  1. Excel

使用Excel MCP Server实现读写Excel文件,通过读取 Excel 中的各个字段,作为 API 参数。

  1. Gitee

使用Gitee MCP Server调用 Gitee 的 URL,传递认证令牌(如私人令牌)和参数,举例:

  • 合并拉取请求:POST https://gitee.com/api/v5/repos/{owner}/{repo}/**merge_pull**
  • 搜索用户:GET https://gitee.com/api/v5/repos/{owner}/{repo}/**search_users**
  • 错误处理与日志
    • 捕获网络异常(如超时、认证失败)并记录到 Excel 的错误信息字段。
    • 支持重试机制(如失败后自动重新调用API)。

4.Prompt

json 复制代码
// 角色设定
你是一个自动化代理,负责从Excel文件中读取命令,调用Gitee的MCP服务,并将调用结果整理后记录回Excel。

// 任务目标
1. 读取Excel文件中的命令列表(每行包含一个命令,如合并请求标题、执行时间等)。
2. 对每个命令执行以下操作:
   - 调用Gitee MCP 服务(例如:合并拉取请求)。
   - 解析服务返回结果(如合并拉取请求ID、状态)。
3. 将调用结果写入Excel文件:
   - 成功时:记录合并请求ID、状态、时间戳。
   - 失败时:记录错误代码、错误信息、时间戳。
4. 如果遇到异常(如网络中断或API认证失败),停止后续操作并返回错误日志。

// 输入参数
- Excel文件路径:`./commands.xlsx`
- Gitee MCP GITEE_ACCESS_TOKEN:`gitee_access_token`
- API基础URL:`https://gitee.com/api/v5`

// 输出要求
1. 控制台输出:
   - 成功时:`已处理 [X] 条命令,结果已保存到 commands.xlsx`
   - 失败时:`第 [N] 条命令失败:[错误原因]`
2. Excel文件格式:
| 命令ID | 命令内容     | 执行时间 | 状态 | 时间戳 | 错误信息 | 返回数据 |
| ------ | ------------ | -------- | ---- | ------ | -------- | -------- |
| 1      | 合并拉取请求 | 08:30:00 |      |        |          |          |
| 2      | 合并拉取请求 | 13:30:00 |      |        |          |          |

// 示例输入(Excel文件内容)
命令内容:创建合并请求
目标分支:main
源分支:trae_aget

// 示例输出(控制台)
已处理 2 条命令,结果已保存到 commands.xlsx

// 示例输出(Excel)
| 命令ID | 命令内容     | 执行时间 | 状态 | 时间戳 | 错误信息 | 返回数据 |
| ------ | ------------ | -------- | ---- | ------ | -------- | -------- |
| 1      | 合并拉取请求 | 08:30:00 | 成功| 2025-06-10T08:31:00Z|          |{"code": 0, "msg": "执行成功"}|
| 2      | 合并拉取请求 | 13:30:00 | 失败| 2025-06-10T13:31:00Z|          |{"code": 404, "msg": "命令不存在"}|

5.效果展示

5.1 仓库创建

能够 AI 改错是真的挺好的:

去 Gitee 查看仓库,发现已经创建成功了:

5.2 issue 创建

查看结果也是创建成功了:

6.总结

使用命令进行仓库、issue 的创建还是很惊艳的,但是 Excel MCP 服务有一些问题。

使用 Excel MCP 服务创建的文件无法打开,可能是我的 Excel 版本较低导致的。

自己创建的文件 Excel MCP 服务可以读取数据但是无法写入。

相关推荐
程序员X小鹿5 小时前
腾讯出手!重磅发布CloudBase AI CLI,集Claude Code等5大AI CLI于一体!从开发到部署!(附教程)
ai编程
前端卧龙人6 小时前
太强了,Trae帮我把可视化面板写了个登录页面
trae
狠活科技6 小时前
平替 Claude Code,API接入 GPT-5,Codex CLI 国内直接使用教程
chatgpt·ai编程·oneapi
麦兜*8 小时前
【swift】SwiftUI动画卡顿全解:GeometryReader滥用检测与Canvas绘制替代方案
服务器·ios·swiftui·android studio·objective-c·ai编程·swift
skywalk816310 小时前
转换一个python项目到moonbit,碰到报错输出:编译器对workflow.mbt文件中的类方法要求不一致的类型注解,导致无法正常编译
开发语言·moonbit·trae
前端日常开发11 小时前
焕新扫雷体验,Trae如何让童年游戏更现代?
trae
前端日常开发12 小时前
记忆中的打地鼠游戏居然是这样实现的,Trae版实现
trae
葫芦和十三13 小时前
解构 Coze Studio:为 AI Agent 实现微型 DBaaS 的架构艺术
架构·coze·trae
yvvvy14 小时前
前端跨域全解析:从 CORS 到 postMessage,再到 WebSocket
前端·javascript·trae
Harry技术14 小时前
Trae搭建Android项目:智能存储柜表结构设计以及实体生成
android·kotlin·trae