使用MCP和可观测性构建自愈代理
摘要
一个自愈代理的演示,它利用可观测性(Monocle)和MCP来调试和修复一个损坏的应用程序,通过检查遥测数据和运行测试,将可观测性视为代理循环的一部分。
大多数代理可以生成代码或执行其设计的工作。我开始觉得更有趣的是它们能否自我调试。我的一个朋友使用Monocle和OpenCode围绕这个想法构建了一个小演示。我没有要求代理从头构建一个应用程序,而是给了它一个故意损坏的Text-to-SQL服务和一个失败的测试套件。规则很简单:不能读取本地日志,也不能猜测修复方案。代理必须运行测试,通过MCP检查追踪,从遥测数据中识别根本原因,修补代码,然后重复直到所有测试通过。
让这变得有趣的并不是bug本身。该应用程序只有几个问题:无效的模型配置、不正确的响应解析以及提示与数据库之间的模式不匹配。
有趣的部分是将可观测性视为代理循环的一部分。通常,追踪是人类在故障发生后查看的东西。在这里,追踪成为了代理的真相来源。每次失败都会通过Monocle生成遥测数据,代理通过MCP查询这些追踪,接下来的行动基于实际发生的情况,而不是模型猜测发生的情况。这感觉像是代理系统的一个重要转变。如今很多代理工作流止步于代码生成。生产系统在调试、监控、从故障中恢复以及处理意外行为上花费的时间要多得多。如果代理要成为有用的工程工具,它们可能需要访问工程师使用的相同可观测性层。这个演示就是朝着那个方向的一个小实验,使用Monocle进行仪表化,并将MCP作为遥测数据与代理之间的接口。
相似文章
构建自修复智能体循环(39分钟阅读)
本文介绍了一种使用OpenAI的Codex构建自修复智能体循环的方法,智能体通过结构化反馈循环迭代地审查、修复和验证输出,并提供了一个修复过时API文档的实例。
@bentannyhill: Agent 可观测性是实现目的的手段:让您的 Agent 变得更好。但可观测性和评估工具传统上…
Engine 是一种新工具,它将 Agent 可观测性追踪与自动修复和评估连接起来,为工程团队闭环 Agent 改进流程。
代理失败聚类改变了我对调试的思考方式
一位开发者分享了在多个代理运行中可视化失败聚类如何改变了他们的调试方法,强调了建立反馈循环的必要性,使代理能够从过去的错误中学习,而不是将失败视为孤立的问题。文章提到了手动变通方法和一个名为BentoLabs的平台,该平台实现了闭环改进。
使用 MCP 进行代码执行:构建更高效的智能体
本文来自 Anthropic,探讨了如何将代码执行与 Model Context Protocol (MCP) 相结合,以提升 AI 智能体的效率。文章分析了工具定义和中间结果导致的 token 过载等挑战,并提出代码执行作为降低延迟和成本的解决方案。
利用智能体编写高效的工具——借助智能体本身
Anthropic 分享了为 AI 智能体设计、评估和优化工具的工程最佳实践,特别介绍了如何利用模型上下文协议(MCP)和 Claude Code 来提升智能体的性能。