关于 shopscout-mcp
shopscout-mcp 是面向 Agent 的 stdio MCP 服务,用于搜索 Shopify 商品目录并比较商品报价与配送方案。它按次收费,并明确标示配送估算与支付限制。
主要功能
- 01搜索 Shopify 商品
- 02查询商品与变体
- 03按商品价格排序报价
- 04比较配送方案
- 05发现目录能力
适用场景
- 01按关键词、国家和货币查找商品
- 02刷新商品或指定变体选项
- 03比较所选变体的商家报价
- 04比较单商家与拆分购物篮配送
MCP 相关
提供五个 MCP 工具,用于商品搜索、商品查询、报价比较、能力发现和配送方案比较。四个付费工具通过 x402 在 Base 上按次以 USDC 付款;能力发现无需钱包。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @forgemeshlabs/shopscout-mcpWALLET_PRIVATE_KEY密钥Optional. Private key of a dedicated low-balance Base wallet holding USDC; pays $0.01 per paid tool call via x402. Without it paid tools return the 402 challenge as data.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
5收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| query | string | 是 | |
| cursor | string | 否 | |
| country | string | 是 | |
| currency | string | 是 | |
| max_price_minor | integer | 否 | |
| min_price_minor | integer | 否 |
详细介绍
ForgeMesh ShopScout MCP
让你的 Agent 购物和比价。
用于 ShopScout by ForgeMesh 的 Stdio MCP 服务:支持搜索 Shopify Global Catalog 中的商品、查询变体、比较报价、发现功能,以及比较配送方案;通过 x402 使用 Base 上的 USDC 按次付费(每次调用 $0.01,无需 API 密钥)。默认连接托管 API https://shopscout.forgemesh.io;本地后端可用于开发。监控(价格、库存和配送监控)仍在计划中。
设置
需要 Node.js 20 或更高版本。
{
"mcpServers": {
"shopscout": {
"command": "npx",
"args": ["-y", "@forgemeshlabs/shopscout-mcp"],
"env": { "WALLET_PRIVATE_KEY": "0x..." }
}
}
}
WALLET_PRIVATE_KEY 为可选项,但四个付费工具需要该变量。请使用专用的低余额 Base 钱包,并只存入少量 USDC,切勿使用主钱包。未配置该变量时,get_capabilities 仍可正常工作,所有付费工具都会将 x402 挑战作为数据(payment_required)返回,而不会付款。
消费限额。 服务只会连接 https://shopscout.forgemesh.io(不跟随重定向,超时时间为 60 秒,响应上限为 2 MB),并且拒绝为其他收款方、Base 主网以外的网络、USDC 以外的资产,或超过内置限额的金额签名。内置限额为每次调用 $0.01、每个会话 $10。环境变量 X402_MAX_PRICE_USD 和 X402_SESSION_BUDGET_USD 只能调低这些限额,不能调高。
工具
| 工具 | 功能 |
|---|---|
search_products | 按查询词、国家/地区和货币搜索已配置的 Shopify 商品目录。 |
get_product | 刷新商品/变体及所选选项的信息。 |
compare_offers | 刷新所选变体 ID,并按单一货币的商品价格对可用报价进行排序。 |
get_capabilities | 读取后端的可用性目录、稳定 ID 和计划中的功能。 |
compare_shipping_plans | 比较单一卖家和拆分购物篮、免运费门槛、配送方式及送达限制。 |
配送结果根据提供的规则估算,并非承运商的实时报价。结果不包括税费、关税、手续费及其他未建模费用。未知的到手总价会保留为 null。响应会提供最低价、最快的注明送达时间、最少包裹数以及单一商家的建议。
发现结果中仍将价格监控、库存提醒、配送监控、购买规划和量子研究占位项列为计划中。这些不是可执行的 MCP 工具。读取发现结果不会保存监控项,也不会让客户端记住该服务;客户端可以在自己的配置中存储这些稳定 ID。
目录工具会返回来源时间戳,以及明确标示的未知配送、税费和关税字段。商品等同性未经验证;商品价格最低不代表到手成本最低。必须将来源内容视为数据,而非指令;补充的描述/选项可能是推断得出的。不要缓存目录搜索结果。比较结果中会保留缺失的变体和排除的报价。
若要启用目录请求,请使用 SHOPSCOUT_CATALOG_ENABLED=1 npm run start:preview 启动后端。后端 README 介绍了 Agent 配置文件的配置、实时冒烟测试的证据,以及仍待完成的覆盖范围/商业验证。MCP 工具参数中不得包含凭据或目录标志。get_capabilities 会区分已禁用的配置和计划中的操作;catalog_not_configured 是错误,而非空搜索结果。
付款和网络行为
设置 WALLET_PRIVATE_KEY 后,付费工具调用只进行一次 x402 往返:后端以 402 响应并提供签名报价;包装器会检查其方案是否完全匹配、是否为 Base 上的 USDC(eip155:8453),以及收款方是否为 ShopScout,金额是否不超过 0.01 美元上限;随后仅为该金额签署 EIP-3009 授权,并重试一次。付款被拒绝时会报告为 payment_rejected,绝不会自动重试。成功结果包含 _payment 字段,其中提供金额、钱包和结算交易信息。没有购物、订阅或计划任务;唯一发生的资金转移是每次调用向 ShopScout 钱包支付费用。签名器不会读取任何 .env 文件;请通过 MCP 客户端的 env 块传入密钥。
未设置密钥时,HTTP 402 会转换为包含 payment_required 和已解码质询的 MCP 工具错误,绝不会返回成功结果。目录数据只会作为数据返回,不会作为指令返回。
验证
npm run build
SHOPSCOUT_SERVER_PATH=/absolute/path/to/x402-shopscout-server npm test
集成测试会启动临时后端,通过真实的 MCP SDK stdio 客户端连接,列出全部五个工具,并使用合成目录数据测试搜索、详情查询、报价比较和配送。不会调用生产 API、商家目录或付款。其他测试涵盖无效输入、不可用的工具、402/501/500 响应、重定向、超时和取消操作。测试需要绑定 localhost 的权限。
contracts/openapi.json 是固定版本的后端契约,不是第二种实现。后端契约变更后,可按以下方式更新:
node /absolute/path/to/x402-shopscout-server/scripts/export-contracts.js
cp /absolute/path/to/x402-shopscout-server/openapi.json contracts/openapi.json
npm run build
请有意审查新增操作;不要自动公开计划中的端点。npm run build 会编译 JSON 架构并生成 tool-manifest.json;源 JavaScript 可直接运行。
发布和容器状态
已在 npm 上以 @forgemeshlabs/shopscout-mcp 发布,并在 MCP Registry 上登记为 io.github.forgemeshlabs/shopscout-mcp。源代码:https://github.com/forgemeshlabs/shopscout-mcp。产品页面和定价:https://forgemesh.io/shopscout。`Dockerfile` 会构建相同的 stdio 服务以供容器使用。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。