内容
# Gelato API 和 Shopify 自动化 MCP 服务器
[](https://modelcontextprotocol.io/)
[](https://opensource.org/licenses/MIT)
[](https://nodejs.org/)
用于集成 **Gelato 打印按需 API** 的 Model Context Protocol (MCP) 服务器。该服务器使 AI 代理(如 Antigravity、Claude、ChatGPT 等)能够自动创建自定义设计 URL/文件的产品,检查产品模板,管理 Shopify 商店连接,探索目录规格,并处理打印履约订单。
---
## ✨ 主要功能
- 🎨 **基于模板的产品创建**:以编程方式将设计文件(PNG、JPG、PDF)上传到 Gelato 产品模板占位符(`ImageFront`、`ImageBack`等),并直接向连接的电子商务商店(Shopify、WooCommerce 等)发布自定义打印按需商品。
- 🏪 **多商店管理**:检查连接的商店(`gelato_list_stores`),查看商店产品(`gelato_list_products`),检查产品状态(`gelato_get_product`),并删除产品(`gelato_delete_product`)。
- 📐 **模板检查**:列出模板(`gelato_list_templates`)并检查层结构和变体 ID(`gelato_get_template`)。
- 📚 **目录探索**:搜索 Gelato 的全局产品目录(`gelato_search_catalog_products`),列出类别(`gelato_list_catalogs`),并获取产品规格(`gelato_get_catalog_product`)。
- 📦 **订单履行和报价**:请求运费/打印价格报价(`gelato_quote_order`),下达打印订单(`gelato_create_order`),跟踪订单状态(`gelato_get_order`),并搜索订单(`gelato_search_orders`)。
---
## 🛠️ 可用的 MCP 工具
### 1. 商店和产品管理
- `gelato_list_stores` — 列出所有连接的商店及其 `storeId`。
- `gelato_create_product_from_template` — 从 Gelato 模板创建并发布新产品到商店,包含自定义设计 URL、标题、描述、标签和变体。
- `gelato_list_products` — 列出商店中发布的所有产品。
- `gelato_get_product` — 检索产品的详细信息和发布状态(`publishing`、`active`、`publishing_error`)。
- `gelato_delete_product` — 从商店中删除产品。
### 2. Gelato 模板
- `gelato_list_templates` — 列出在您的 Gelato 帐户中创建的所有产品模板。
- `gelato_get_template` — 检索特定模板的详细信息,包括图像层占位符名称(`ImageFront`、`ImageBack`)和 `templateVariantId`。
### 3. 产品目录
- `gelato_list_catalogs` — 列出主要产品目录类别(服装、墙壁艺术、马克杯、卡片等)。
- `gelato_search_catalog_products` — 使用属性过滤器搜索目录商品。
- `gelato_get_catalog_product` — 获取目录产品 UID 的规格、可打印区域、可用尺寸、选项和价格。
### 4. 订单和报价
- `gelato_create_order` — 向 Gelato 提交打印履约订单。
- `gelato_quote_order` — 在下订单之前计算运费选项和成本报价。
- `gelato_get_order` — 检索当前订单状态和跟踪详细信息。
- `gelato_search_orders` — 搜索订单,分页和文本搜索。
---
## ⚙️ 安装和设置
### 先决条件
- Node.js 18.x 或更高版本
- Gelato API 密钥(从 [Gelato 仪表盘](https://dashboard.gelato.com/) → **开发者 > API 密钥** 获取)
### 安装
```bash
git clone https://github.com/altetsa/gelato-mcp-server.git
cd gelato-mcp-server
npm install
```
### 配置
将服务器条目添加到您的 MCP 配置文件(例如 `mcp_config.json` 或 Claude Desktop `claude_desktop_config.json`):
```json
{
"mcpServers": {
"gelato": {
"command": "node",
"args": [
"/path/to/gelato-mcp-server/index.js"
],
"env": {
"GELATO_API_KEY": "your_gelato_api_key_here"
}
}
}
}
```
---
## 🚀 产品创建工作流程
1. **获取商店 ID**:调用 `gelato_list_stores` 获取目标商店的 `storeId`。
2. **检查模板**:调用 `gelato_get_template` 获取 `templateId`,检查层占位符名称(例如 `ImageFront`)和 `templateVariantId`。
3. **创建产品**:调用 `gelato_create_product_from_template`,包含:
- `storeId`
- `templateId`
- `title` 和 `description`
- `variants`:包含 `templateVariantId` 和 `imagePlaceholders` 的对象数组,包含 `name` 和公共 `fileUrl` 的打印设计。
#### 示例工具调用有效载荷:
```json
{
"storeId": "82ceff8e-c559-45da-9c93-3982702a0906",
"templateId": "c12a363e-0d4e-4d96-be4b-bf4138eb8743",
"title": "自定义印刷 T 恤",
"description": "<p>高质量自定义印刷男女通用圆领 T 恤。</p>",
"isVisibleInTheOnlineStore": true,
"tags": ["t-shirt", "custom-print", "unisex"],
"salesChannels": ["web"],
"variants": [
{
"templateVariantId": "83e30e31-0aee-4eca-8a8f-dceb2455cdc1",
"imagePlaceholders": [
{
"name": "ImageFront",
"fileUrl": "https://example.com/designs/front_artwork.png"
}
]
}
]
}
```
---
## 📄 许可证
MIT © [altetsa](https://github.com/altetsa)