关于 storedata
storedata 是连接 HasData Shopify MCP 服务的本地桥接程序,供需要公开店铺目录数据的客户端使用。它提供只读的集合与商品查询,并将上游结果以 JSON 返回。
主要功能
- 01按店铺 URL 列出商品集合
- 02按集合句柄筛选商品
- 03分页获取集合和商品
- 04返回商品变体、价格与库存状态
- 05提供 CLI 与 stdio MCP 服务
适用场景
- 01浏览公开 Shopify 店铺的商品集合
- 02按类别读取店铺商品与变体信息
- 03在客户端中获取商品图片和价格
MCP 相关
它向 MCP 客户端提供集合和商品查询工具,并将调用转发至 HasData Shopify MCP 服务。接口仅读取公开店铺数据,不含购物车、结账、订单或付款功能。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 2 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url | string | 是 | Shopify 店铺的 URL。例如,'https://b2bdemoexperience.myshopify.com'。 |
| page | number | 否 | 结果的页码。必须是正整数。 |
| limit | number | 否 | 要获取的系列的最大数量。必须介于 1 和 250 之间。 |
详细介绍
storedata
storedata 是一个本地轻量桥接程序,连接到托管的 HasData
Shopify MCP 服务,并以 JSON 格式返回公开的 Shopify
店面数据。指定店面 URL 后,它会列出该店的商品系列——
每个系列的 id、标题、handle、描述和图片——并获取该店的
商品;也可以选择按单个商品系列的 handle 缩小范围。两种读取
操作都支持使用 limit(最高 250)和 page 页码进行分页。
此桥接程序不维护自己的商品目录。它会在本地响应工具列表, 内容与从实时端点捕获的数据完全一致;并将每次工具调用转发到上游, 原样返回收到的内容。捕获到的接口仅包含对公开店面的两种只读 数据获取操作:不包含购物车、结账、订单或付款工具,也不会返回 店主的联系信息。
工具
hasdata_shopify_collections_getCollections— 列出 店面的商品系列。必填参数:url(Shopify 店铺 URL)。 可选参数:用于分页的limit和page。 返回每个商品系列的 id、标题、handle、描述、图片和时间戳。 如果要一次获取一个类别,可将返回的 handle 传给商品工具。hasdata_shopify_products_getProducts— 获取店面的 商品。必填参数:url。可选参数:collection(用于筛选的商品系列 handle), 以及limit和page。返回商品 id、标题、 handle、供应商、商品类型、标签、正文 HTML、 图片、包含价格的变体、SKU 和库存状态,以及时间戳。
配置
HASDATA_SHOPIFY_MCP_URL(可选)——覆盖 上游端点。默认值为https://mcp.hasdata.com/mcp?apis=shopify。(此 覆盖接口是本次重建中自行标注的还原内容。)HASDATA_API_KEY(可选)——设置后,每个 上游请求都会携带x-api-key: <key>标头,使用调用方自己的 HasData API 密钥。未设置时, 不会发送密钥标头。(标头名称和环境变量名称由原始项目的 注册记录确定;从此环境变量转发密钥是本次重建中自行标注的还原内容—— 捕获到的原始接口未使用密钥。)
转发机制
首次调用工具时,客户端会在上游打开一个可流式传输的
HTTP 会话:先发送 JSON-RPC initialize 请求
(protocolVersion 2025-03-26,clientInfo 名称
storedata),再发送 notifications/initialized
通知,最后发送携带调用方参数且不作更改的 tools/call 请求。上游
在 initialize 响应中返回 Mcp-Session-Id 标头时,
该值会随此会话的每个后续请求发送;此会话会在进程运行期间重复使用。
响应可能以普通 JSON 或服务器发送事件的形式到达;两种格式都会读取。
上游成功结果会原样传递,包括上游设置的任何 isError 标记。
失败情况——JSON-RPC 错误、非 2xx 状态、无法读取响应,
或无法完成的请求——会作为 isError 结果返回,其文本以
storedata error: 开头(此错误呈现方式是本次重建中自行标注的还原内容)。
命令行界面
每个工具也可作为子命令使用,接收一个 JSON 参数字符串:
npx @reneturcios/storedata hasdata_shopify_collections_getCollections '{"url":"https://b2bdemoexperience.myshopify.com"}'
npx @reneturcios/storedata hasdata_shopify_products_getProducts '{"url":"https://b2bdemoexperience.myshopify.com","collection":"frontpage"}'
npx @reneturcios/storedata --version
退出码:成功时为 0,结果包含 isError 时为 1,
用法错误时为 2。
MCP 服务
npx -y @reneturcios/storedata mcp
MCP 客户端配置:
{
"mcpServers": {
"storedata": {
"command": "npx",
"args": ["-y", "@reneturcios/storedata", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/storedata
docker run --rm ghcr.io/cloudcorprecords/storedata --version
容器的默认命令是 mcp,因此第一种形式会启动一个 stdio MCP 服务;其他参数则会正常传递给命令行界面。
开发
npm install
npm run build
npm test
npm run dev
测试套件完全使用桩接的 JSON-RPC 上游运行,不会进行实时网络调用。
许可证
MIT——参见 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。