尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

用 goose 的 Neighborhood 扩展在对话中点外卖:远程 Streamable HTTP MCP 扩展的安装配置与实战指南

用 goose 的 Neighborhood 扩展在对话中点外卖:远程 Streamable HTTP MCP 扩展的安装配置与实战指南 用 goose 的 Neighborhood 扩展在对话中点外卖远程 Streamable HTTP MCP 扩展的安装配置与实战指南【免费下载链接】goosean open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM项目地址: https://gitcode.com/GitHub_Trending/goose3/gooseNeighborhood 是 goose 生态中一个基于远程 Streamable HTTP 的 MCP 扩展你只需在 goose 聊天框中说明位置、饮食偏好与当下安排goose 就能帮你发现附近餐厅、以交互式卡片和菜单呈现结果、组装购物车并一路引导到收银台完成支付。本文将以官方教程 neighborhood-mcp.md 为主线完整讲解该扩展的安装方式桌面端一键安装、CLI 交互配置、配置文件直写三种路径、底层配置模型并给出从“找餐厅 → 看菜单 → 加购物车 → 结账”的完整实战演示帮助你举一反三地掌握任何远程 MCP 扩展的接入方法。读完本文你将能够在 goose 中通过自然语言完成一次真实的本地餐饮点单闭环并理解 Streamable HTTP 远程扩展在 goose 内部的配置与加载机制。Neighborhood 扩展能做什么Neighborhood 扩展打通了 goose 与本地餐饮点单服务由 Square 侧提供的 MCP 服务端之间的通道。其核心能力包括发现附近餐厅按任意位置检索周边可用外卖/自取takeout的商家并可按喜好或场景筛选浏览完整菜单以带分类标签、实物图片、价格和描述的交互式菜单呈现而非纯文本组建购物车以自然语言添加菜品与饮品goose 会结合你的饮食偏好给出建议引导结账点击 Check out 按钮跳转至由 Cash App 提供支持的支付页完成付款。需要特别指出的是商家当前以美国US-based为主这一点在配置和使用前应先有预期。官方演示默认的端点是https://connect.squareup.com/v2/mcp/neighborhood从地址结构可以看出它与同仓库中收录的 Cash App 扩展端点为https://connect.squareup.com/v2/mcp/cash-app以及面向商家侧的 Square MCP 扩展 同属 Square 的 MCP 服务家族只是服务的用户角色不同Neighborhood 面向普通消费者找店点单Cash App 侧重本地餐饮下单与结账链路而 Square MCP 面向卖家账户的 API 操作。快速安装官方文档提供了桌面端与 CLI 两条安装捷径二者本质都是添加一个streamable_http类型的远程扩展。goose Desktop一键安装Deeplink在 goose Desktop 中可通过 goose 的深链deeplink协议一键唤起安装器其 URL 格式遵循goose://extension?...。Neighborhood 的完整安装链接URL 编码后如下goose://extension?typestreamable_httpurlhttps%3A%2F%2Fconnect.squareup.com%2Fv2%2Fmcp%2FneighborhoodidneighborhoodnameNeighborhooddescriptionDiscover%20nearby%20restaurants%2C%20browse%20menus%2C%20and%20place%20takeout%20orders%20through%20natural%20conversation.该链接对应的参数模型可以在 using-extensions.md 的 Deeplinks 一节中找到依据typestreamable_http声明协议类型url指向远程 Streamable HTTP 服务器地址其余id、name、description分别定义扩展的唯一标识、显示名与功能描述所有参数必须做 URL 编码。桌面端点击链接后确认安装随后在顶部左侧打开面板侧边栏进入聊天即可使用。goose CLI使用 goose configureCLI 用户通过交互式命令goose configure添加选择Remote Extension (Streamable HTTP)类型并填入端点 URLhttps://connect.squareup.com/v2/mcp/neighborhood配置详解三种添加方式的完整步骤方式一goose Desktop 手动添加参考 using-extensions.md 中添加自定义扩展的流程点击界面左上角的侧边栏按钮打开侧边栏点击侧边栏中的Extensions在 Extensions 下点击Add custom extension在弹窗中填写扩展信息Type:Remote Extension (Streamable HTTP)文档组件中的typehttp在底层会映射为streamable_http见 GooseDesktopInstaller.tsxID:neighborhoodName:NeighborhoodDescription:Discover nearby restaurants, browse menus, and place takeout orders through natural conversation.URL:https://connect.squareup.com/v2/mcp/neighborhoodTimeout: goose 等待该扩展工具调用完成的最长秒数默认建议 300点击Add完成添加。安装后在当前聊天会话中通过聊天窗底部/侧栏的扩展开关确认 Neighborhood 处于启用状态中途启停只影响当前会话不改变默认配置。方式二goose CLI 交互式配置CLI 端完整的交互流程与 CLIExtensionInstructions.tsx 渲染的步骤一致如下运行配置命令goose configure在What would you like to configure?中选择Add Extension在扩展类型中选择Remote Extension (Streamable HTTP)提示语为 “Connect to a remote extension via MCP Streamable HTTP”为扩展命名例如Neighborhood输入 Streamable HTTP 端点 URIhttps://connect.squareup.com/v2/mcp/neighborhood设置该工具的超时时间秒默认300为该扩展输入一段描述当被询问是否添加自定义请求头custom headers时选择No该扩展无需鉴权头OAuth 授权在需要时由 goose 处理。完整交互示例┌ goose-configure │ ◇ What would you like to configure? │ Add Extension │ ◇ What type of extension would you like to add? │ Remote Extension (Streamable HTTP) │ ◇ What would you like to call this extension? │ Neighborhood │ ◇ What is the Streamable HTTP endpoint URI? │ https://connect.squareup.com/v2/mcp/neighborhood │ ◇ Please set the timeout for this tool (in secs): │ 300 │ ◇ Enter a description for this extension: │ Discover nearby restaurants, browse menus, and place takeout orders through natural conversation. │ ◆ Would you like to add custom headers? │ No │ └ Added Neighborhood extension方式三直接编辑配置文件对于需要将配置纳入版本管理或批量部署的高级用户可以直写 goose 配置文件macOS/Linux 位于~/.config/goose/config.yaml。参考 config-files.md 中对streamable_http类型条目的写法Neighborhood 的配置条目如下extensions: neighborhood: type: streamable_http name: Neighborhood description: Discover nearby restaurants, browse menus, and place takeout orders through natural conversation. enabled: true uri: https://connect.squareup.com/v2/mcp/neighborhood headers: {} env_keys: [] envs: {} timeout: 300官方文档同时提示goose 支持的扩展类型为builtin、platform、stdio与streamable_httpSSE 已不再支持旧 SSE 配置应迁移到streamable_http见 config-files.md。进阶通过会话启动参数临时启用如果不希望把扩展写进默认配置仅在某一次会话中使用可以直接以启动参数加载详见 using-extensions.md 中 “Remote Extensions over Streamable HTTP” 一节goose session --with-streamable-http-extension https://connect.squareup.com/v2/mcp/neighborhood这种方式不会安装扩展只对当前会话生效。原理Streamable HTTP 远程扩展在 goose 中的配置模型深入源码可以看到 goose 将扩展统一建模为ExtensionConfig枚举。其中面向远程 HTTP 服务的变体即StreamableHttp定义位于 extension.rs其字段与上面配置文件的键一一对应name扩展标识名description扩展功能描述uri远程 Streamable HTTP 端点地址Neighborhood 即https://connect.squareup.com/v2/mcp/neighborhoodenvs/env_keys扩展运行所需的环境变量或其密钥引用headers随请求发送的自定义 HTTP 头timeout工具调用超时秒源码注释明确说明新配置应包含该字段socket可选的 Unix domain socket 路径用于 HTTP-over-UDS 传输默认不启用client_id/client_secret_key/scopes为需要 OAuth 的远程服务预留的预注册客户端配置支持在授权服务器不支持 Client ID Metadata Documents 或 Dynamic Client Registration 时使用。配置加载侧extensions.rs 负责把 YAML 中extensions映射解析为ExtensionEntryenabled标志 展开后的ExtensionConfig并定义默认超时为DEFAULT_EXTENSION_TIMEOUT: u64 300第 10 行。因此命令行交互中默认填写的 300 秒即源于此常量。对 Neighborhood 而言其服务端由 Square 以 MCP Streamable HTTP 规范托管goose 通过uri建立连接、完成握手后将服务端暴露的 MCP 工具注册到当前会话Agent 即可在推理过程中调用这些工具来检索餐厅、读取菜单与维护购物车。配套博客 order-lunch-with-goose 中描述goose 实际调用的是 Neighborhood MCP 服务端的get-restaurants-nearby这类工具返回结构化的餐厅 JSON 数据再经由交互式 MCP App 渲染成可视化卡片。实战从找餐厅到完成结账本小节完整复现官方教程中的三步走流程。演示使用 Anthropic Claude 4 Opus 作为 LLM见原文示例标注你可以换成任何 goose 支持的模型。Step 1找到适合你的餐厅找午饭时把位置、饮食限制与接下来的安排一并告诉 goose——这正是 Neighborhood “最能发挥威力”的场景goose 不只是罗列餐厅而是基于你的处境做推理式推荐。PromptUse the neighborhood extension for this. Im looking to get lunch today. Im at 375 W Broadway in New York. Im playing tennis later tonight. Could you suggest some options so I can play well?goose 输出示例Let me find some restaurants near you! Here are some restaurants near 375 W Broadway in SoHo! For pre-game fuel, Id recommend these options: Best picks for a light, gluten-free meal: Baal Falafel (71 Sullivan St) - Mediterranean food with falafel, hummus, and fresh veggies — great carbs and protein Kale Things - Perfect for a healthy, nutrient-dense meal with greens and lean proteins for sustained energy without feeling heavy Tips for eating before playing sport: - Eat 2-3 hours before playing to allow digestion - Focus on complex carbs lean protein (avoid heavy, fatty foods) - Stay hydrated - consider grabbing a drink from Steam Sip or Drip Drop Café Would you like me to pull up the menu for any of these restaurants?goose 会利用 Neighborhood 扩展的交互式 UI 把结果渲染为聊天窗口内的餐厅卡片每张卡片展示店名、分类与地址并带View menu按钮可以看到推荐并非机械罗列因为用户提到稍后要打网球goose 特意推荐高碳水、蛋白质充足又不油腻的选项还附上了“赛前 2-3 小时进食”的专业建议。Step 2浏览带图片的交互式菜单接下来让 goose 打开某家餐厅的菜单。得益于 MCP App 的富 UI 渲染菜单会以带分类标签、实物照片、价格和描述的形式直接内嵌在聊天中。PromptId like to view the Baal Falafel menu.菜单覆盖 Sandwiches、Salads、Combo platters、Soups、Pastries、Sides、Drinks 等多个分类可直接在聊天内逐项浏览看到中意的菜品直接告诉 goose 加入购物车即可。Step 3加入购物车并结账将想点的菜品告诉 goosegoose 会把它加入购物车并同样以交互式 MCP App 渲染订单汇总。PromptAdd a Beets Apple Salad, Lentil Soup, and a Ginger Lemonade to my cart.购物车就绪后点击Check out按钮即跳转到由 Cash App 提供支持的支付页面完成付款后便只待前往取餐。需要注意支付这一步发生在 goose 之外这既是出于安全考虑也是整套流程中唯一需要离开聊天框的环节。更多提示思路把 Neighborhood 与其他扩展组合Neighborhood 真正的价值在于和日程、健康数据等其他扩展联动把“吃饭”编织进你一整天的上下文。官方文档给出的组合示例包括配合日历安排用餐“Check my calendar for today and find somewhere I can grab a quick pickup lunch before my 1pm meeting. Im near Union Square.”查看今日日程在 1 点会议前就近找一家可快速自取的午餐。记录饮食摄入“Order me a chicken bowl from that place on Sullivan St, and log the macros to my food diary.”下单的同时把营养数据记入饮食日记。为多人聚会做规划“Im meeting 3 friends near Bryant Park tonight. Find somewhere with good vegetarian options thats not too loud.”结合人数与素食需求寻找环境安静的餐厅。这些组合的基础设施前提是 goose 的扩展体系基于 MCPModel Context Protocol构建参见 using-extensions.md多个扩展的工具可被同一会话内的 Agent 自由编排调用。使用注意事项地域限制当前商家以美国为基地Sellers are currently US-based其他地区体验可能受限付款环节结账在 Cash App 托管的支付页完成需在 goose 之外操作这也是涉及资金的安全边界启用状态动态/中途启用的扩展仅对当前会话有效若希望长期使用请将其写入默认配置或保持其处于启用状态类型选择添加时务必选择 Remote ExtensionStreamable HTTP而非 Command-line Extension两者配置模型完全不同。延伸阅读想要同类“对话式下单”的更强组合可继续阅读 Cash App 扩展文档端点为https://connect.squareup.com/v2/mcp/cash-app以及面向商家的 Square MCP 扩展文档理解 goose 扩展整体机制与深链协议见 扩展使用指南配置文件全字段说明见 config-files.md一篇完整的实操体验记录见博客 order-lunch-with-goose若想了解源码层面扩展配置模型的更多细节可阅读 extension.rs 与 config/extensions.rs。【免费下载链接】goosean open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM项目地址: https://gitcode.com/GitHub_Trending/goose3/goose创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表