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