【小白向】Trae最新最强版本发布,Coze工作流+AI编程+MCP+Agent,快速实现AI日报助手

原文链接:https://mp.weixin.qq.com/s/aHJlpzW8pvsXfQxLQcpiuQ

首个国产AI IDE在前两天迎来了一波大的版本更新,加入了很多此前呼声很高的功能:

  • 上下文能力增强:加入了Web和Doc两种Context。
  • 自定义规则:支持个人规则和项目规则,约束AI行为。
  • MCP工具链:内置MCP市场和第三方MCP Server自由添加。
  • 智能体能力全面升级:支持自定义智能体,轻松打造自己的专属AI团队。

如果你也想体验Trae的强大功能,可以点击链接https://juejin.cn/loyalty-program-v1?inviteCode=Td4skjC4Em5jqtt8FXUxe2KqdoGPWqub&utm_campaign=jifen_invite下载体验(还能免费薅Claude、Gemini和GPT,领取超多礼品)。

这里以一个简单的案例来带着大家自建一个MCP Server并调用生成日报网页,让大家感受一下更新后的Trae的强大,其基本实现思路如下:

  1. 1. 在扣子上创建智能体,输入关键词返回对应的新闻,并发布成API;
  2. 2. 基于扣子API文档的相关内容,借助Trae的Builder模式进行AI编程,创建MCP Server;
  3. 3. 通过Trae的Builder with MCP调用刚刚创建的MCP Server获取新闻内容,再生成可视化的网页。

1.创建扣子每日新闻智能体

登录扣子https://www.coze.cn/并创建智能体,名称例如每日新闻助手:

选择对话流模式:

输入对话流名称和描述,即可进入对话流编辑页面,整体布局如下:

1.开始节点:

输入用户传过来的关键词。

2.getToutiaoNews节点:

选择添加插件:

输入节点选择开始节点的USER_INPUT:

3.大模型节点:

输入:选择getToutiaoNews节点输出的news字段。

系统提示词和用户提示词如下:

其中系统提示词:

将搜索到的新闻内容整理成日报,按照以下格式:
标题
摘要
链接

4.结束节点

结束节点直接输出大模型的输出即可:

配置好,进行试运行,然后发布即可。发布成功之后,会回到智能体编辑页面,点击将对话流添加至当前智能体即可。可以体验一下智能体:

然后点击发布,选择API:

如果没有配置,需要先进行配置:

需要注意,创建好令牌之后只能查看一次,后续无法再次查看,请妥善保存。

还有创建好的智能体的id,可以从智能体编辑页的链接(https://www.coze.cn/space/737669xxxxxx/bot/749778xxxxxx)中获取,bot后面的一串数字就是智能体的bot_id,例如749778xxxxxx。还有自己账号的user_id,在扣子主页就能获取到:

得到3个认证信息(后面会用到):

token:pat_rh6VvExxxxxx
bot_id:749778xxxxxx
user_id:user7309xxxxxx

2.使用Trae进行AI编程创建MCP Server

有了Trae来创建和编写MCP Server,事半功倍。

电脑上先创建好空文件夹,例如MCP Agent in Trae,同时使用Trae打开新创建的文件夹:

然后借助Trae的AI编程能力来实现Coze API调用MCP Server的编写,直接在Trae右侧选择Builder模式:

可以选择最强大的Claude-3.7,如果排队时间过长也可以选择其他的模型。输入框中输入需要让AI实现的功能,这里是实现调用Coze API获取新闻内容,如果采用非流式方案,需要依次调用3个接口才能获取到期望的输出,完整提示词如下(可直接复制使用):

我需要通过npx @modelcontextprotocol/create-server命令在目录custom-mcp下创建一个使用Coze API来获取新闻素材的MCP服务:coze-daily-news-mcp-server,入参是Client传入的新闻关键词,服务会通过API的方式调用指定的Coze智能体获取指定关键词的新闻。

需要调用3次API得到智能体返回的新闻内容,调用过程如下(需要转为TS代码):
1.发起对话

```
curl -X POST 'https://api.coze.cn/v3/chat?' \
-H "Authorization: Bearer pat_rh6VvExxxxxx" \
-H "Content-Type: application/json" \
-d '{
  "user_id": "user7309xxxxxx",
  "bot_id": "749778xxxxxx",
  "stream": false,
  "additional_messages": [
    {
      "content": "AI新闻",
      "content_type": "text",
      "role": "user"
    }
  ],
  "auto_save_history": true
}'
```
返回数据格式:
```
{
    "data": {
        "id": "749797xxxxxx", # data字段中的id即为chat_id,即对话ID
        "conversation_id": "749797xxxxxx",
        "bot_id": "749778xxxxxx",
        "created_at": 1745757527,
        "last_error": {
            "code": 0,
            "msg": ""
        },
        "status": "in_progress"
    },
    "code": 0,
    "msg": ""
}
```

2.查看对话详情
请求API,以2秒的频率轮询查看对话详情API,不超过20次,请求方式:
```
curl -X GET 'https://api.coze.cn/v3/chat/retrieve?conversation_id=749797xxxxxx&chat_id=749797xxxxxx&' \
-H "Authorization: Bearer pat_rh6VvExxxxxx" \
-H "Content-Type: application/json"
```
返回数据格式:
```
{
    "code": 0,
    "data": {
        "bot_id": "749778xxxxxx",
        "completed_at": 1745757799,
        "conversation_id": "749797xxxxxx",
        "created_at": 1745757773,
        "id": "749797xxxxxx",
        "status": "completed",
        "usage": {
            "input_count": 1153,
            "output_count": 528,
            "token_count": 1681
        }
    },
    "detail": {
        "logid": "20250427204515A6DD305F776A91B14AB6"
    },
    "msg": ""
}
```
直到本轮对话已结束(status字段值为completed)。

3.查看对话消息详情
请求方式:
```
curl -X GET 'https://api.coze.cn/v3/chat/message/list?conversation_id=749778xxxxxx&chat_id=749797xxxxxx&' \
-H "Authorization: Bearer pat_rh6VvExxxxxx" \
-H "Content-Type: application/json"
```

返回数据格式:
```
{
    "code": 0,
    "data": [
        {
            "bot_id": "749778xxxxxx",
            "chat_id": "749797xxxxxx",
            "content": "### 近期AI新闻热点综述……",
            "content_type": "text",
            "conversation_id": "749797xxxxxx",
            "created_at": 1745757774,
            "id": "7497972543895142410",
            "reasoning_content": "",
            "role": "assistant",
            "type": "answer",
            "updated_at": 1745757798
        },
        {
            "bot_id": "749778xxxxxx",
            "chat_id": "749797xxxxxx",
            "content": "{\"msg_type\":\"generate_answer_finish\",\"data\":\"\",\"from_module\":null,\"from_unit\":null}",
            "content_type": "text",
            "conversation_id": "749797xxxxxx",
            "created_at": 1745757799,
            "id": "7497972636471984138",
            "role": "assistant",
            "type": "verbose",
            "updated_at": 1745757798
        },
        {
            "bot_id": "749778xxxxxx",
            "chat_id": "749797xxxxxx",
            "content": "{\"msg_type\":\"generate_answer_finish\",\"data\":\"{\\\"finish_reason\\\":0,\\\"FinData\\\":\\\"\\\"}\",\"from_module\":null,\"from_unit\":null}",
            "content_type": "text",
            "conversation_id": "749797xxxxxx",
            "created_at": 1745757799,
            "id": "7497972636472000522",
            "role": "assistant",
            "type": "verbose",
            "updated_at": 1745757798
        }
    ],
    "detail": {
        "logid": "20250427204921780766D8D04430796B29"
    },
    "msg": ""
}
```
获取type为answer类型的对话项对应的content的内容,即为智能体回复,返回给Client端。

其中,user_id、bot_id和token(api_key)3个字段属于认证参数,应该作为配置项放到代码最前面方便修改(不用单独创建配置文件)。

整个过程非常顺利,这也说明了Claude-3.7的编程能力确实是非常稳定。Builder智能体按照提示很好地拆解了执行步骤并逐一执行:

在最开始初始化MCP Server框架时,需要在命令行中进行交互,根据自己的情况输入相关信息即可:

整个过程确实像一个有十年开发经验的老程序员:

  1. 1. 通过npx @modelcontextprotocol/create-server coze-daily-news-mcp-server来创建MCP Server模板。
  2. 2. 重写index.ts文件,实现通过Coze API获取新闻的功能,包括三个API调用步骤和配置管理。
  3. 3. 在package.json中添加axios依赖。
  4. 4. 安装项目依赖并构建MCP服务器,以便用户可以使用。

整个项目创建在目录custom-mcp\coze-daily-news-mcp-server)下,根据使用方法进行操作即可:

  1. 1. 替换index.ts中的3个字段为我们刚才准备的3个认证信息。
  2. 2. 命令行依次执行npm install(如果已安装依赖,可跳过)和npm run build,用于将index.ts编译为index.js(位于build目录下),因为代码是在本地,所以运行方式是node方式来执行本地编译好的index.js文件,获取其完整路径,比如我本地的是在D:\Work\Code\AI Programming\MCP Agent in Trae\custom-mcp\coze-daily-news-mcp-server\build\index.js,后面会用到。
  3. 3. 执行命令npm run inspector启动网页服务进行测试:

    会启动一个服务:

    复制链接到浏览器或者Trae自带的预览中打开,并连接查看:

    效果符合预期,就可以进入下一步。

    如果执行时遇到如下的MCP error -32001: Request timed out情况:

    是因为MCP服务的默认超时时长为10秒,而Coze的执行和调用往往会超过10秒,此时需要增大请求时长:

🍫说明:AI生成代码具有随机性,每次执行就像抽卡一样,所以你生成的代码和我生成的大概率不同,因此也需要根据自己的情况进行处理、不能一概而论,逢山开路遇水搭桥才是万能的解决办法。

3.Builder with MCP调用创建的MCP服务

新版本的Trae原生支持MCP,再也不用安装Cline、Roo Code等第三方插件了:

Trae自带有MCP市场,但是数量有限,可以手动配置:

配置实例如下:

只要显示√并且处于可使用状态就可以在智能体中添加MCP进行使用。

配置内容示例如下:

{
  "mcpServers": {
    "coze-daily-news-mcp-server": {
      "command": "node",
      "args": [
        "D:\\Work\\Code\\AI Programming\\MCP Agent in Trae\\custom-mcp\\coze-daily-news-mcp-server\\build\\index.js"
      ]
    }
  }
}

其中,只需要修改args字段中的值为自己对应的index.js的绝对路径即可(注意是编译后的index.js,而不是原始的index.ts,同时如果是Windows系统,需要用\\而非\)。

此时需要创建一个智能体并且添加刚刚创建的coze-daily-news-mcp-server:

创建好后,就可以点击立即使用:

可以看到,这里@AI日报助理即可与刚刚创建的Agent进行对话,模型自动根据输入识别任务、匹配到可用的coze-daily-news-mcp-server并调用获取与关键词匹配的新闻,然后返回。这里用的是DeepSeek-V3模型,说明该模型也具备了工具调用能力。

在完成调用 MCP后还可以后续接着继续执行其他的任务,例如将返回的新闻做成可视化的HTML,如下:

Agent很好地识别出了任务需求,并且调用大模型根据返回的新闻内容生成简洁美观的HTML页面,并且导出图片:

现在,Trae接入了Agent with MCP,就可以轻松实现不同的Agent根据实际需要配置不同的MCP Server,从而使得在使用时可以直接根据需求选择对应的Agent,极大地避免了为了完成不同的任务要去手动增删MCP Server的情况,更加符合使用习惯。

最后谈一点我使用Trae接近2个月的感受:作为以Python为主要技术栈的我来说,之前一直以PyCharm为主力开发工具,并且基本上形成了使用依赖,对于更通用的VSCode系列反而使用较少。直到两个月前接触到了Trae,现在已经完全适应了Trae的开发模式,抛弃了使用了六七年的笨重PyCharm,并且预计完全不会再回头了。Trae确实大大提高了我做数据模型工作和工具开发的速度,并且与AI原生结合的特性确实大大挖掘出了AI的潜力和价值,特别是最近更新出的规则、MCP、Agent,大大缩短了与国外竞品的差距。不管你是专业开发者还是初学者都值得一试,现在点击链接https://juejin.cn/loyalty-program-v1?inviteCode=Td4skjC4Em5jqtt8FXUxe2KqdoGPWqub&utm_campaign=jifen_invite还能参与活动领取华为MatePad Air 12英寸、雷蛇(Razer)机械键盘等好礼,快去体验一下吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东哥说AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值