大家好!几个月前,我们分享了 mcp-agent(<a href="https://github.com/lastmile-ai/mcp-agent">https://github.com/lastmile-ai/mcp-agent</a>)[1][2],这是一个轻量级框架,能够实现 Anthropic 的《构建有效代理》博客中提到的所有代理模式 [3],并无缝处理 MCP 服务器/客户端管理。我们的核心理念是,连接大型语言模型(LLMs)与工具、资源和外部系统将很快成为 MCP 原生的默认功能。
今天,我们推出了一个重要更新:代理作为 MCP 服务器。
目前,“代理行为”仅存在于 MCP 客户端侧——像 Claude 或 Cursor 这样的客户端使用 MCP 服务器来解决任务。通过此次更新,代理本身可以作为 MCP 服务器,这样任何 MCP 客户端都可以以与其他 MCP 服务器相同的方式调用、协调和编排代理。
这一范式转变使得以下功能成为可能:
1. 代理组合:在相同的基础协议(MCP)上构建复杂的多代理系统。
2. 平台独立性:可以从任何兼容 MCP 的客户端使用你的代理。
3. 可扩展性:在专用基础设施上运行代理工作流,而不仅限于客户端环境。
4. 自定义:开发自己的代理工作流,并在任何 MCP 客户端中重复使用。
代理服务器的实现方式:
我们在 mcp-agent 中通过工作流实现了这一功能。每个工作流都是一个代理应用,可以与其他 MCP 服务器交互(例如:总结 GitHub 问题 → Slack 消息)。mcp-agent 将工作流作为 MCP 工具暴露在 MCP 代理服务器上 [5]:
- workflows/list – 列出可用的工作流
- workflows/{WorkflowName}/run – 执行工作流(异步)
- workflows/{WorkflowName}/get_status – 检查工作流状态
- workflows/{WorkflowName}/resume – 恢复暂停的工作流(例如:需要人工输入时)
- workflows/{WorkflowName}/cancel – 终止工作流
我们还实现了 Temporal 以支持持久执行 [6],因此代理工作流可以在生产环境中暂停、恢复和重试。
这个演示 [7] 展示了 Claude 调用 MCP 代理服务器,在适当的时候运行工作流,并轮询状态。它基本上展示了 MCP 客户端和 MCP 服务器两侧的代理行为。
我们对这一潜力感到兴奋——尤其是随着越来越多的应用程序成为兼容 MCP 的客户端。我们期待您的反馈和想法!
[1] - <a href="https://news.ycombinator.com/item?id=42867050">https://news.ycombinator.com/item?id=42867050</a>
[2] - <a href="https://github.com/lastmile-ai/mcp-agent">https://github.com/lastmile-ai/mcp-agent</a>
[3] - <a href="https://www.anthropic.com/research/building-effective-agents" rel="nofollow">https://www.anthropic.com/research/building-effective-agents</a>
[4] - <a href="https://github.com/github/github-mcp-server">https://github.com/github/github-mcp-server</a>
[5] - <a href="https://github.com/lastmile-ai/mcp-agent/tree/main/examples/mcp_agent_server/asyncio">https://github.com/lastmile-ai/mcp-agent/tree/main/examples/...</a>
[6] - <a href="https://github.com/lastmile-ai/mcp-agent/tree/main/examples/temporal">https://github.com/lastmile-ai/mcp-agent/tree/main/examples/...</a>
[7] - <a href="https://youtu.be/pLe2GAjEoYs" rel="nofollow">https://youtu.be/pLe2GAjEoYs</a> [演示]
返回首页
最新
嘿,HN社区!
我的30天技术成长挑战的第二天已经完成。昨天,我构建了一个简单的命令行应用程序,用于收集和展示我最喜欢的名言。今天,我通过引入文件处理对其进行了升级,现在名言会永久保存在一个名为“quotes.txt”的文件中——即使在我关闭程序后也不会丢失。
我添加了以下功能:
1. 使用Python的“open()”函数将名言保存到文件中
2. 在应用程序启动时将名言读取回应用中
3. 根据用户输入从文件中删除名言
4. 养成将逻辑拆分为干净、可重用函数的习惯
这很简单,但从“仅仅打印内容”到实际存储和处理数据的转变,感觉是一个重大进步。这就像是给我的程序赋予了记忆。
我在这个过程中记录下所有内容,并会持续发布我的每日进展,以保持自我监督并在公众面前成长。
再次感谢在第一天鼓励我的HN朋友们——你们真棒!
Taiye Emmanuel
我是一名神经多样性人士,使用待办事项应用时遇到了一些困难;虽然这些应用确实很有帮助,但我从未找到过完全符合我需求的应用。因此,我自己开发了一个,并于昨天在iOS应用商店发布了:<a href="https://apps.apple.com/us/app/yet-another-todo-app/id6742057835">https://apps.apple.com/us/app/yet-another-todo-app/id6742057...</a>
这个应用在几个方面与其他应用有所不同:
- 它是优先离线使用的。目前它甚至不进行任何网络请求。未来我可能会添加同步功能,但可能性不大。
- 它是围绕你的日常日程构建的,而不是单纯制作列表。你看到的默认视图是“今天”。
- 我非常努力地让它的使用体验变得非常出色。比如,有些操作不需要两次点击就可以完成。
这个应用的价格是2美元。如果这对你来说是个问题,可以给我发私信,我会给你发送一个优惠码让你试用。谢谢!
我购买了域名 friendster.com,因为我喜欢旧版的 Friendster,并希望将其重新带回。我在这个网站上建立了一个社交网络,并开始邀请等待名单上的人。我希望能让 Friendster 再次辉煌——你有什么建议吗?
我希望这个平台能够帮助人们建立真实的友谊,结识新朋友。我希望它能够传递积极的能量,并为人们带来正面的影响。我不想让它像目前的社交网络那样充斥着上瘾行为和负面情绪。
目前这个项目是自筹资金的。
有没有人有一个不错的设置,用于利用大型语言模型(LLMs)在个人论文库中进行查询?如今似乎有无数种方法可以实现这一点,但我想某些方法在成本、速度、准确性等方面可能远远优于其他方法。你们是否在使用一些专有解决方案,并获得了良好的结果?有没有什么方法可以在保持简单的同时减少隐私问题,理想情况下能够与我的Zotero库无缝对接?