我构建了一个小型健康食品MCP服务器,主要教训是智能体需要枯燥的工具表面
摘要
作者构建了一个健康食品MCP服务器,并发现智能体使用多个狭窄、受限的工具比使用一个灵活的工具表现更好,强调需要一个枯燥的工具表面来减少大语言模型的幻觉。
我最近构建了一个小型健康食品MCP服务器。表面上听起来很简单:向智能体暴露食谱内容。但有趣的部分不是食品数据。有趣的部分是意识到MCP服务器需要提供多少结构,智能体才能变得有用。如果你只给LLM食谱文本,它可以总结,但它也会开始编造结构、混淆类别、猜测营养字段,或者返回看起来正确但难以复用的内容。所以我尝试让工具表面变得枯燥且受限:
* 列出高级热量类别
* 列出饮食/餐次/宏量营养素分组
* 列出可用食谱文件及预览
* 通过slug获取完整的结构化食谱
* 通过关键词搜索食谱文档
目标不是让智能体“更聪明”。目标是减少它需要猜测的内容。我注意到以下几点:
1. 小型工具比一个大型的“万能”工具更容易让模型正确使用。
2. 稳定的slug比让模型从自由文本中记住名称更有用。
3. 服务器应该拥有内容模型。智能体应主要负责选择、获取、比较和解释。
4. 技能/提示有帮助,但当MCP工具已经围绕任务设计时,它们的表现会好得多。
这让我认为MCP更多是关于为智能体设计一个干净的交互表面,而不是向LLM暴露API。好奇其他人是如何思考的:当你构建MCP服务器时,你更喜欢许多狭窄的工具,还是更少但参数更灵活的大工具?
相似文章
利用智能体编写高效的工具——借助智能体本身
Anthropic 分享了为 AI 智能体设计、评估和优化工具的工程最佳实践,特别介绍了如何利用模型上下文协议(MCP)和 Claude Code 来提升智能体的性能。
MCP-Persona:通过环境模拟对LLM智能体在实际个人应用中的基准测试
MCP-Persona是一种基准测试,用于评估LLM智能体在与个人账户和本地数据库交互的个性化工具上的表现。实验表明,最先进的智能体在个性化工具使用方面面临显著挑战。
使用MCP和可观测性构建自愈代理
一个自愈代理的演示,它利用可观测性(Monocle)和MCP来调试和修复一个损坏的应用程序,通过检查遥测数据和运行测试,将可观测性视为代理循环的一部分。
构建可生成HTML的AI功能?这个MCP服务器提供15个工具
Fast HTML MCP是一个服务器,提供15个MCP工具,用于HTML组装、修补、读取等,使AI代理能够自主生成和操作HTML,零网络开销。
使用 MCP 进行代码执行:构建更高效的智能体
本文来自 Anthropic,探讨了如何将代码执行与 Model Context Protocol (MCP) 相结合,以提升 AI 智能体的效率。文章分析了工具定义和中间结果导致的 token 过载等挑战,并提出代码执行作为降低延迟和成本的解决方案。