本项目实现了一个模型上下文协议(MCP)服务器,它就像一座智能桥梁和代理,能连接到 Shopify 的 Storefront API。其独特之处在于支持 mock.shop,让开发者无需真实商店凭证,就能安全地进行开发和测试。该服务器采用标准输入输出(stdio)进行通信,可轻松与 Claude Desktop 和 Cursor 等客户端进行本地集成。
本项目实现的 MCP 服务器,可作为智能桥接器和代理,连接到 Shopify 的 Storefront API。支持 mock.shop,便于在无真实商店凭证的情况下进行开发和测试。服务器使用标准输入输出(stdio)通信,适合与 Claude Desktop 和 Cursor 等客户端本地集成。
mock.shop 提供模拟环境,便于开发和测试。git clone https://github.com/yourusername/shopify-mcp-mock-server.git
npm install
npm start
// 创建商店信息请求
const response = await fetch('http://localhost:3000', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
toolName: 'getShopInfo'
})
});
// 配置 Mock 环境
// 在项目根目录创建 mock-config.js 文件
module.exports = {
shopUrl: 'mock-shop.shop',
apiKey: 'your-mock-api-key',
collections: [
{ id: 1, name: 'Mock Collection' },
// 其他模拟数据...
]
};
getShopInfo:获取商店的基本信息(名称、描述、货币)。findProducts:搜索/过滤产品,支持分页和排序。getProductById:根据 ID 获取特定产品。cartCreate:创建新的购物车。adminGetCustomerById:通过 Admin API 根据 ID 获取客户信息(计划中)。adminCreateProduct:通过 Admin API 创建新产品(计划中)。npm start
http://localhost:3000,例如使用 Postman 或 curl:curl -X POST http://localhost:3000 \
-H "Content-Type: application/json" \
-d '{"toolName": "getShopInfo"}'
服务器应返回 JSON 格式的响应,包含工具名称和相关数据。例如:
{
"toolName": "getShopInfo",
"shopName": "Mock Shop",
"description": "A mock shop for development purposes.",
"currencyCode": "USD"
}
通用 AI 开发者工具和现成的 MCP 服务器往往承诺众多功能,但在开发环境中,可能存在缺乏透明度、安全机制(如显式的 ToolAnnotations)、稳定性或特定功能等问题。本项目旨在解决这些问题,为用户提供可靠且易用的解决方案。
文档未提及相关内容,暂不展示。
git clone https://github.com/yourusername/shopify-mcp-mock-server.git
cd shopify-mcp-mock-server
git checkout -b feature/new-feature