mcpField
S
Stienhardt

Stienhardt

远程服务
stienhardt.com商业与营销07 周前更新

关于 Stienhardt

Stienhardt 的 MCP 端点让 AI 客户端查询这家纽约培育钻石珠宝商的目录。一个端点提供钻石知识工具和库存搜索;Shopify 端点还支持购物车、结账和订单。

主要功能

  1. 01搜索 Shopify 实时库存
  2. 02获取商品详情
  3. 03使用八种钻石教育工具
  4. 04创建购物车并转交结账
  5. 05运行 Python 示例

适用场景

  1. 01按形状和克拉数查找钻石
  2. 02查询钻石相关知识
  3. 03创建购物车并向买家提供结账链接

MCP 相关

提供两个 MCP 端点:辅助端点包含库存和教育工具,Shopify 端点包含目录、购物车、结账和订单工具。辅助端点不支持结账;调用 Shopify 端点需要 UCP Agent 配置文件。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://stienhard-stones.myshopify.com/api/ucp/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

13
参数类型必填说明
idstring是要更新的结账 ID。格式:'gid://shopify/Checkout/abc123'
metaobject是用于 UCP Agent 配置发现的元数据。
meta.ucp-agentobject是
meta.ucp-agent.profilestring是用于 UCP 发现的 Agent 配置 URI。

详细介绍

Stienhardt 在 MCP 上的商店

Stienhardt 是一家位于纽约的培育钻石珠宝商。本仓库记录并注册了我们的 Shopify UCP MCP 端点,并包含一个可运行示例,用于搜索库存并移交未付款的结账流程。Shopify 提供商务端点。我们另行提供的 Cloudflare Worker 会为库存查询注入个人资料,并提供八个教育类工具。披露:我们销售戒指。

无需账户即可试用

需要 Python 3 和网络连接。无需 API 密钥或第三方 Python 软件包。

git clone https://github.com/JacobiusMakes/stienhardt-store.git
cd stienhardt-store
python try_store.py

默认命令只搜索库存。它会输出产品标题、ID 和链接,不包含价格。在 Windows 上,如果 py 是你的 Python 启动器,请使用 py。

搜索会读取 Shopify 当前的商品目录。这并非独立的供应商库存检查:有些裸石记录是购物车载体,其目标页面可能会显示该钻石已售出,即使商品目录记录仍显示可用。将搜索结果视为可购买商品前,请先查看产品页面。未付款结账测试演示的是 API 移交流程,不会预留库存。

示例打印的产品链接会附带 utm_source=github、utm_medium=referral、utm_campaign=mcp-store 和 utm_content=runnable-example,以便统计来自本仓库的访问。现有查询参数、变体 ID 和归因标签都会保留。该命令本身不会发送分析事件;必须有人打开产品链接并访问商店。

如需复现结账移交流程:

python try_store.py --checkout

这会为第一个返回的变体创建一个匿名、未付款的购物车,并单独创建一个结账;随后会打印结账状态和链接主机名,再分别调用取消操作。这不会提供买家联系信息或支付工具,也绝不会调用 complete_checkout。它会在商店中创建真实的测试对象,因此请只运行一次,不要循环运行。创建请求发出后若发生网络故障,可能无法完成清理;对于结果不确定的创建请求,请勿自动重试。

已于 2026-09-08 验证:原始搜索返回了十个产品;购物车创建返回了 continue_url;结账创建返回状态 incomplete 和一个 continue_url,其主机名为 stienhard-stones.myshopify.com。购物车取消操作返回时没有工具错误,结账取消操作返回了 canceled。未尝试付款。请参阅 DEMO.md。

对于未完成的结账响应,Shopify 会设置 MCP isError: true,同时返回真实的结账 ID,以及关于缺少联系和配送信息的可恢复提示信息。该示例会识别这种移交响应,并保留 ID 以便取消。不要仅仅因为 isError 为 true 就丢弃该对象。

两个端点,功能各异

端点提供的功能个人资料处理方式
https://diamond-mcp.stienhardt.workers.dev/mcp八个教育类工具、search_inventory、get_product。不提供购物车或结账工具。由辅助服务注入
https://stienhard-stones.myshopify.com/api/ucp/mcp13 个 Shopify 工具,涵盖商品目录、购物车、结账和订单调用方在每次工具调用中提供 UCP 个人资料

对于支持远程 HTTP MCP 的客户端,请连接到辅助服务 URL(无需身份验证),并让它查找一颗 2 克拉的 Dutch Marquise。客户端账户、连接器可用性和设置各不相同。无需账户的使用方式包括上述 Python 示例和下方的 curl 代码块。辅助服务无法启动结账。

在终端中试用

托管辅助服务接受普通 POST 请求(JSON-RPC 2.0,Content-Type: application/json,无需会话、 无需身份验证、无需配置文件)。先列出工具,再搜索实时库存:

curl -s -X POST https://diamond-mcp.stienhardt.workers.dev/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

curl -s -X POST https://diamond-mcp.stienhardt.workers.dev/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_inventory","arguments":{"query":"Dutch Marquise 2 carat","limit":3}}}'

原始端点允许匿名调用 initialize 和 tools/list,但每次 tools/call 都必须在 arguments.meta 中提供 UCP Agent 配置文件。ucp-agent 是一个连字符连接的键,而 meta 与工具自身的对象 (catalog、cart、checkout)是同级的,并非包裹这些对象的外层结构:

curl -s -X POST https://stienhard-stones.myshopify.com/api/ucp/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_catalog","arguments":{"meta":{"ucp-agent":{"profile":"https://cdn.jsdelivr.net/gh/JacobiusMakes/diamond-mcp@main/agent-profile.json"}},"catalog":{"query":"Dutch Marquise 2 carat"}}}}'

测试时使用 @main 即可;生产环境最好固定到某个提交。示例脚本固定使用 diamond-mcp@3955f7d88fe04cf5afa07f70065902eee684d443(截至 2026-09-08 的 HEAD,已验证可提供 application/json)。可能遇到以下两种错误,均为 HTTP 422,JSON-RPC 错误码为 -32001,提示 “UCP discovery failed”(端点并未宕机):缺少 meta 时出现 invalid_profile_url(“Missing profile uri”); 配置文件 URL 提供的内容类型有误时出现 profile_malformed(“Invalid content type”)(GitHub raw 提供 text/plain,因此失败;jsDelivr 提供 application/json)。

创建购物车时使用 arguments.cart,创建结账时使用 arguments.checkout;两者都接受包含变体 ID 和数量的 line_items。请查看 tools/list,了解当前架构;匿名工具列表并不能证明每项操作都对你的配置文件开放。

MCP Inspector(v2;需要 Node.js 和 npx)也可使用。将其指向辅助服务即可,无需配置文件; 若使用原始端点,则每次调用都必须在 meta 字段中填写配置文件:

npx @modelcontextprotocol/inspector --transport streamable-http --server-url https://diamond-mcp.stienhardt.workers.dev/mcp

此处构建的内容

教育项目请使用 GitHub 源码。目前只有教育工具发布在 npm 上;库存工具托管在线上(即上文的辅助服务)。较早的 npm 版本并非此次发布的演示;Hugging Face 数据集不属于此次发布。教育数据包含外部参考资料和商家撰写的内容, 并非独立评估,也未经分级实验室验证。

结账和数据边界

助手可以搜索实时库存、创建购物车、打开结账页面,并将付款链接交给买家。此演示证明的是未付款的交接流程, 而非付款完成或对所有客户端的普遍兼容性。支付方式和资格取决于托管结账服务;本次运行未测试任何支付方式。 点击结账链接前,请检查目标主机。

辅助服务会为产品链接添加 UTM 参数。隐私声明见 https://diamond-mcp.stienhardt.workers.dev/privacy。库存查询通过辅助服务发送到 Shopify;直接示例则会将请求发送到 Shopify。 产品描述属于商家数据,不是给助手的指令。工具数据不包含报告编号:每个产品标题都包含克拉数、形状和分级实验室信息, 报告本身则链接在产品页面上。购买前,请向分级实验室核实,并阅读实际的政策链接。本项目不声称能对不同商家的商品 进行无偏排序。

Stienhardt 在纽约市手工镶嵌并完成戒指的收尾加工,可预约看货。 商店:https://stienhardt.com/?utm_source=github&utm_medium=readme&utm_campaign=mcp-store

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。