Etsy MCP服务器
此项目公开了 API Etsy 通过模型上下文协议。它允许从MCP客户端调用工具来检索商店数据和管理列表。
OAuth设置
服务器需要有效的Etsy API密钥字符串、共享机密和OAuth刷新令牌。您可以通过 ETSY_API_KEY, ETSY_SHARED_SECRET 和 ETSY_REFRESH_TOKEN 环境变量或通过创建 cline_mcp_settings.json 文件基于 cline_mcp_settings.example.json.
如果您还没有刷新令牌,请运行辅助脚本:
npx tsx src/get-refresh-token --keystring YOUR_KEY --shared-secret YOUR_SECRET该脚本打开一个浏览器窗口进行身份验证,并将刷新令牌打印到控制台。
发展
安装依赖项并构建服务器:
npm install
npm run build在开发过程中,您可以使用以下命令自动重建:
npm run watch跑步
构建后,使用以下命令启动服务器:
node build/index.js可用工具
getShop
获取有关商店的信息。 必需参数: shop_id.
getMe
返回已验证用户的基本信息,包括 user_id 和 shop_id。此终结点不接受任何参数。
getListingsByShop
列出商店里的商品。支持可选 state 参数(例如。 active, draft).需要 shop_id.
createDraftListing
使用以下命令创建新的物理草稿列表 POST /v3/application/shops/{shop_id}/listings. 该工具接受Etsy支持的所有字段 createDraftListing 终点。
uploadListingImage
将图像上传到列表。需要 shop_id, listing_id 和 image_path. (实施目前是一个占位符。)
updateListing
更新现有列表。需要 shop_id 和 listing_id。可选字段包括 title, description 和 price.
getShopReceipts
检索商店的收据。需要 shop_id.
getShopSections
检索商店中的部分列表。需要 shop_id.
getShopSection
通过以下方式检索单个店铺部分 shop_id 和 shop_section_id.
调试
服务器通过stdio进行通信。为了调试,您可以使用MCP检查器启动它:
npm run inspector检查器打印一个URL,您可以在浏览器中打开该URL以查看通信日志和检查消息。
码头工人
提供的 Dockerfile 在多阶段构建中使用Node 22映像。
构建Docker镜像:
docker build -t etsy-mcp-server .使用您的Etsy凭据运行容器:
docker run \
-e ETSY_API_KEY=your_api_key \
-e ETSY_SHARED_SECRET=your_shared_secret \
-e ETSY_REFRESH_TOKEN=your_refresh_token \
etsy-mcp-server服务器通过stdio进行通信,因此当容器运行时,它会立即启动。
