3作者: pzullo2 个月前
大家好,我是 Manufact 的 Pietro(网址:manufact.com),我们为 MCP 构建开源的开发者工具和基础设施。 你可能知道我们开发的 mcp-use (github.com/mcp-use/mcp-use),这是一个开源的全栈 SDK,用于构建 MCP 服务器和客户端。 在 Manufact,我们的使命和乐趣是尽可能多地编写 MCP 服务器。通过这个过程,我们可以不断完善我们的 SDK,从而提供最佳的开发者/代理体验。 测试/开发 MCP 服务器非常痛苦,因为: * 在普通客户端中配置 MCP 并非易事。人们抱怨安装它们不容易,更别说每次更改后都要刷新它们了。 * 测试不仅仅意味着测试工具一次只工作一个,还要确保代理理解它们并能以正确的方式/顺序调用工具。 * 如果本地安装 MCP 具有挑战性,那么在人们实际使用你的产品(claude.ai, chatgpt.com)的远程客户端上更是如此。 * 模型的功能 + 系统提示(代理)最终会使用你的服务器,这些差异很大。有些人可能使用 Claude Code 的 Opus 4.7,有些人可能在 chatgpt.com 上使用 Instant,模型调用你的工具的能力差异很大。在本地 GPT5.5 上测试和在 ChatGPT 上使用相同模型测试会产生非常不同的体验。 首先:本地开发循环 有两个因素使 Next 和 Vite (等等) 这样的 Web 开发框架比其他任何东西都更好,那就是 HMR 和在 localhost 上的预览。 MCP 的预览是什么?在我们看来,它是一个聊天界面。每次你运行 `npm run dev` 时,一个 mcp-use 服务器就会启动,我们在 localhost 上提供一个检查器,它会自动连接到你的 MCP 服务器,它有一个 BYOK 聊天,一种可以逐个测试工具的方式,以及关于你的 MCP 服务器的超级详细的元数据,以确保其合规性。 这里一个有趣的的技术挑战是创建一个完全(或几乎完全)在浏览器中运行的 MCP 客户端。 关于 HMR:这并不容易,有几种方法可以做到这一点,我们选择了困难但正确的方法。我们使用协议原语实现了 HMR,如果你更改一个工具,我们不会硬刷新服务器并取消之前的 MCP 会话,我们会向客户端发送一个 `notifications/tools/list_changed` 通知(在规范中),客户端知道它应该重新加载工具。至于 UI 元素,我们使用 Vite HMR,并将 UI 更改转发到检查器的所有元素,例如,你可以更改你的 MCP 返回的 UI 元素,并在嵌入式聊天中实时看到更改。(这看起来非常棒) 这大大加快了 MCP 的开发速度。 你可以通过运行 `npx @mcp-use/inspector` 或仅使用我们的 SDK 来试用我们的检查器。 额外福利:我经常做的一件事是启动 Claude Code 并启用 `--chrome` 选项,然后告诉它转到检查器 URL 来测试服务器,这为代理创建了一个闭环,这使得使用它们开发 MCP 变得更加可预测。 其次:在其他客户端上测试(免责声明:这是一个云功能) 在实际客户端上测试可能更痛苦。我们创建了一个自动化测试功能,你可以在常规的代理测试形式(用户消息、预期的工具调用、评估标准)中定义与 MCP 服务器相关的测试用例。由于“在本地 GPT5.5 上测试和在 ChatGPT 上使用相同模型测试会产生非常不同的体验”,我们需要在实际客户端上进行测试,因此我们使用浏览器代理来安装应用程序并直接在客户端上启动测试。 会话结束后,你会得到结果,以及对话的截图和屏幕录像。事实证明,这些对于在团队之间共享新版本的 MCP 应用程序非常有用。 我很乐意听取大家的想法和反馈,特别是想知道人们是如何测试他们的 MCP 服务器的,无论是在生产环境中还是在本地。 (我从 2 月 25 日开始编写 MCP,当时还没有可用的工具,而且客户端几乎没有任何支持,我很想看看今天人们是如何做的)
15作者: namanyayg2 个月前
大家好,我是来自 Gigacatalyst 的 Namanyay (链接:<a href="https://gigacatalyst.com/">https://gigacatalyst.com/</a>)。Gigacatalyst 允许销售、客户服务和用户构建一次性功能,这样您的 SaaS 就可以支持长尾客户工作流程,并且工程师们不必从路线图中分心。<p>当您向大企业销售软件时,您会意识到每个客户都需要自己的工作流程和功能。传统上,这意味着漫长的工程路线图,或者客户最终使用变通方法。<p>但如果<i>每个人</i>都能通过与 AI 对话来构建他们关键的缺失功能呢? 这就是我们在 Gigacatalyst 所做的。我们为您的客户、客户服务团队和销售团队提供 AI 定制层,以构建这些缺失的关键工作流程,而无需任何工程师。 想象一下 Lovable,但构建在您的平台之上。<p>我们连接到您产品的 API,学习您的数据模型和设计系统,并允许非技术用户通过自然语言构建受控应用程序——在您的产品内部,在您的品牌下。<p>以下是实际操作的样子:<a href="https://www.youtube.com/watch?v=_taSpSphH6E" rel="nofollow">https://www.youtube.com/watch?v=_taSpSphH6E</a><p>我们的一个客户,一家 B 轮融资公司,看到他们的用户(<i>不是工程师</i>——经理、运营人员、设施主管)构建了关键工作流程,例如:<p>- 零件缺货预防:一位维护经理输入了<i>“根据过去 90 天的使用情况,并考虑供应商的提前期,向我显示哪些零件将在未来 2 周内用完。”</i> 该应用程序跟踪消耗速度,预测缺货,并在为时已晚之前发出警报。 他说这避免了大约 50 万美元的紧急停机时间。<p>- 手机照片的发票 OCR:技术人员不断丢失纸质发票。 提示是:<i>“上传发票照片,提取供应商名称、日期、金额和明细,然后将其与采购订单匹配并标记差异。”</i> 现在,技术人员可以在现场拍照,自动添加到记录系统中。<p>- 餐厅紧急情况分诊:一家披萨连锁店的设施经理淹没在维护请求中。 他构建了一个优先级矩阵:“步入式冰柜不制冷”自动路由为“关键”,“餐厅灯闪烁”转为“低”。 他现在能够以正确的优先级管理积压工作。<p>Gigacatalyst 的幕后工作原理:<p>1. Agentic API 发现:我们的代理会浏览您的应用程序并解析您的端点、查询参数、请求/响应形状和示例数据,以构建基础层。<p>2. 生成和验证:当用户描述他们想要的内容时,我们的 AI 会生成一个应用程序。 我们设置了多个验证步骤,包括静态检查、运行时错误分析和 LLM 充当判断者。<p>3. 沙盒和编译:我们编写了自己的编译和沙盒框架,以获得最快的速度和最低的成本。 这意味着用户可以在几秒钟内与构建的应用程序交互。<p>4. 代理层:我们为所有 API 创建一个代理层,以处理身份验证、租户隔离和速率限制。 代理可以访问的所有内容都受到控制、记录、观察和版本控制。<p>在 2000 多个日常用户、构建了 900 多个应用程序以及 70% 的 30 天留存率之后,我们今天开放了公开演示。<p>试用:<a href="https://app.gigacatalyst.com/">https://app.gigacatalyst.com/</a> - 输入您的 SaaS 产品的 API URL(或只是主页)并开始提示。<p>如果您服务于各种用例,您可能需要处理大量自定义请求,而 Gigacatalyst 将为您节省时间并提高您的利润。 在 <a href="https://gigacatalyst.com/#contact">https://gigacatalyst.com/#contact</a> 预约会议,我将帮助您的团队和客户在您的平台上构建新功能。<p>我从 12 岁起就开始阅读 Hacker News。 我很自豪能为你们所有人发布,我想听取你们对我的产品和评论的反馈!
8作者: circadian2 个月前
有人也遇到这种情况吗?连他们的状态页面都打不开了? https://downdetector.co.uk/status/spotify/ 出现: 错误 503 首字节超时 首字节超时 错误 54113 详细信息:cache-lcy-egml8630041-LCY 1778603283 2551008548 Varnish 缓存服务器
1作者: devGrimm2 个月前
一时兴起做的,因为我觉得在这个大家都说打字/写代码要过时的时代,做一个打字/写代码游戏应该会很有趣。希望大家玩得开心 :p