Dropshipping Mcp Dsers
Pricing
Pay per usage
Dropshipping Mcp Dsers
Open-source MCP server for DSers dropshipping. 13 tools: AliExpress/Alibaba import to Shopify & Wix, bulk import, pricing rules, multi-store push, safety checks, and auto supplier replacement with SKU matching. Claude/Cursor/Windsurf. v1.5.7
Pricing
Pay per usage
Rating
0.0
(0)
Developer
issac
Actor stats
1
Bookmarked
1
Total users
0
Monthly active users
5 days ago
Last modified
Categories
Share
DSers MCP Product — Dropshipping Automation: AliExpress to Shopify & Wix with AI
An open-source MCP server to automate DSers product sourcing, import, bulk edit, and push to Shopify or Wix using AI.
English
DSers MCP Product is an open-source MCP (Model Context Protocol) server that lets AI Agents automate the entire DSers import workflow — from product sourcing to Shopify or Wix store listing. Search the DSers product pool, import from AliExpress / Alibaba / Accio.com, bulk edit variants, apply pricing rules, and push to multiple stores — all with a single sentence to your AI agent.
What can it do?
- Product sourcing — search the DSers product pool by keyword or image, find products to sell
- One-click import — paste a product link, your AI agent imports it into DSers automatically
- Browse your catalog — view your import staging list and products already pushed to stores
- Clean up titles — strips the messy keyword-stuffed AliExpress titles into something readable
- Pricing rules — markup multiplier (e.g. 2.5×), fixed markup (e.g. +$5), fixed price (e.g. $9.99), compare-at / sale prices, per-variant overrides
- Batch import — import multiple products at once with a list of URLs
- Multi-store push — push one product to all your connected Shopify & Wix stores in one go
- Safety checks — blocks pushes that price below supplier cost, at $0, or with all variants out of stock; warns on <10% margin, <5 units per variant, or sell price under $1
- SEO optimization — let AI rewrite the title and description for better search rankings before pushing
- Supplier swap (SKU Remap) — replace an existing store product's supplier at the SKU level, with reverse-image-search to auto-find a cheaper or in-stock replacement
The server is hosted on Vercel and published across multiple platforms:
Available On
| Platform | Link |
|---|---|
| npm | npmjs.com/package/@lofder/dsers-mcp-product |
| MCP Registry (Official) | registry.modelcontextprotocol.io |
| Smithery | smithery.ai/server/@dsersx/product-mcp |
| Glama.ai | glama.ai/mcp/servers/lofder/dsers-mcp-product |
| mcp.so | mcp.so/server/dsers-mcp-product |
| mcpservers.org | mcpservers.org |
| MCP Marketplace | mcp-marketplace.io |
| awesome-mcp-servers | punkpeye/awesome-mcp-servers |
| Dev.to | Article: I Built an MCP Server to Automate Dropshipping |
| Dev.to | Tutorial: How to Automate AliExpress to Shopify with AI |
Supported product sources
Works with product links from AliExpress, Alibaba.com, and Accio.com. Just give your AI agent a product link from any of these platforms, and it will import the product into DSers and push it to your store. (1688.com links are also recognized but require your DSers account to have 1688 source authorization enabled.)
Accio.com — AI-powered product sourcing
Accio.com is Alibaba's AI sourcing assistant. You describe what you're looking for (e.g. "wireless earbuds under $5"), and it searches AliExpress & Alibaba for you.
How to use it with DSers MCP:
- Go to accio.com and search for products in natural language.
- Browse the results. When you find a product you like, click on it to open the product detail panel.
- Copy the URL from your browser address bar — it will look something like:
https://www.accio.com/c/xxx?productId=1005009871053792&ds=aliexpress.com - Give that link to your AI agent, e.g.: "Import this product and push to my store: [paste URL]"
- The agent handles the rest — no extra setup needed.
This works for both AliExpress and Alibaba products found on Accio.
Documentation
| Document | Description |
|---|---|
| ARCHITECTURE.md | Three-layer architecture, directory structure, data flow |
| USAGE.md | Installation, client config (Cursor, Claude Desktop), scenario examples |
| SKILL.md | AI agent instruction file — workflow, rules, push options, error handling |
What You Need
- Node.js >= 20.0.0
- A DSers account (free plan works)
- A Shopify or Wix store already connected in DSers
- An MCP-compatible AI client — Cursor, Claude Desktop, Claude Managed Agents, Windsurf, or any client that supports MCP
Quick Start
Step 1: Log in (one time — opens your browser)
$npx @lofder/dsers-mcp-product login
A browser window opens to the official DSers login page. You log in on DSers's own website — your password never passes through this tool. After login, the session is encrypted and saved locally.
Step 2: Add to your MCP client (no credentials needed)
{"mcpServers": {"dsers-mcp-product": {"command": "npx","args": ["-y", "@lofder/dsers-mcp-product"]}}}
That's it. No passwords in config files.
Remote server (no install needed):
If you don't want to install anything locally, you can connect directly to the hosted MCP server at https://ai.silentrillmcp.com/dropshipping/mcp. This works with any MCP client that supports Streamable HTTP transport. You'll be prompted to authorize with your DSers account on first connect.
{"mcpServers": {"dropshipping": {"url": "https://ai.silentrillmcp.com/dropshipping/mcp"}}}
Also listed on the official MCP Registry.
Claude Managed Agents (docs):
Build autonomous dropshipping agents that run 24/7 in Anthropic's managed infrastructure. Connect this MCP server via the Claude Agent SDK:
from claude_agent_sdk import query, ClaudeAgentOptionsasync for message in query(prompt="Find a cheaper supplier for product dp-123 in store st-456 and update the mapping",options=ClaudeAgentOptions(mcp_servers={"dsers": {"command": "npx", "args": ["-y", "@lofder/dsers-mcp-product"]}}),):print(message)
import { query } from "@anthropic-ai/claude-agent-sdk";for await (const message of query({prompt: "Find a cheaper supplier for product dp-123 in store st-456 and update the mapping",options: {mcpServers: {dsers: { command: "npx", args: ["-y", "@lofder/dsers-mcp-product"] }}}})) {console.log(message);}
Authentication — OAuth 2.1
Your DSers password never touches this tool. Here's how login works:
- You run
npx @lofder/dsers-mcp-product login - Your browser opens the DSers OAuth authorization page
- You authorize access on DSers's own website
- The tool receives an OAuth token and encrypts it locally
- Done — the MCP server uses the token automatically. No passwords in config files.
Tokens refresh automatically — a long-lived refresh token keeps your session active without manual re-login. You should rarely need to run login again.
Switching accounts?
npx @lofder/dsers-mcp-product logoutnpx @lofder/dsers-mcp-product login
For developers: The server also accepts
DSERS_ACCESS_TOKENandDSERS_REFRESH_TOKENenv vars for headless/CI environments.
Working from source (not the published npm package)? Use
node dist/cli.js logininstead ofnpx @lofder/dsers-mcp-product login. Thenpxform requires thedsers-mcp-productbinary to resolve through yourPATH, which only happens afternpm link(or after a real npm install). In a fresh local clone thenpxcommand exits withcommand not found(exit code 127). Runnpm run buildfirst sodist/cli.jsexists.
Usage Examples
Once set up, just talk to your AI agent in plain language:
"Import this product and push to my Shopify store as a draft: https://www.aliexpress.com/item/1005006372921430.html"
"Import this product, mark up the price by 2.5x, and push it: https://www.aliexpress.com/item/1005006372921430.html"
"Batch import these 3 products and push them all to my store: [URL1] [URL2] [URL3]"
"Search for phone cases under $5 on the DSers product pool"
"Show me what's in my import list"
"What products have I pushed to my store?"
"Push this product to all my connected stores"
"Rewrite the title and description for SEO, then push to my store"
The agent figures out the right tools to call. You don't need to know tool names or parameters.
Install via Smithery
$npx @smithery/cli mcp add @dsersx/product-mcp --client cursor
Or browse at smithery.ai/server/@dsersx/product-mcp.
Install from Source
git clone https://github.com/lofder/dsers-mcp-product.gitcd dsers-mcp-productnpm installnpm run buildnpm test
Project Structure
dsers-mcp-product/├── src/│ ├── cli.ts # npx entry — stdio transport, login/logout│ ├── index.ts # MCP server init, tool registration│ ├── instructions.ts # Server-level prompts (agent instructions)│ ├── tools.ts # 13 MCP tools — schema + handler│ ├── rules.ts # Rule validation & application engine│ ├── push-guard.ts # Pre-push safety checks│ ├── push-options.ts # Push option normalization│ ├── resolver.ts # URL normalization (AliExpress/Alibaba/Accio)│ ├── provider/ # DSers API adapter (split by concern)│ │ ├── index.ts # Provider class + interface│ │ ├── store.ts # Store discovery, platform detection│ │ ├── import-ops.ts # Import, save draft, delete│ │ ├── push.ts # Push execution, shipping logistics│ │ ├── normalize.ts # Data normalization│ │ └── helpers.ts # Shared utilities│ ├── service/ # Business logic orchestration│ │ ├── index.ts # ImportFlowService class│ │ ├── import-flow.ts # Import workflows│ │ ├── push-flow.ts # Push workflows│ │ ├── preview.ts # Preview & visibility│ │ ├── status.ts # Job status & deletion│ │ ├── import-list.ts # Import list browsing (with enrich)│ │ ├── my-products.ts # Pushed products browsing│ │ └── find-product.ts # Product pool search│ ├── dsers/ # Low-level DSers API wrappers│ │ ├── config.ts # Configuration│ │ ├── auth.ts # Session management│ │ ├── client.ts # Authenticated HTTP client│ │ ├── account.ts # Store & user APIs│ │ ├── product.ts # Product & import APIs│ │ └── settings.ts # Shipping, pricing, billing APIs│ └── auth/ # Browser login (CDP)├── test/ # Vitest unit tests (585 tests)├── package.json└── tsconfig.json
Thirteen Tools
| # | Tool | What it does |
|---|---|---|
| 1 | dsers_store_discover | List connected stores, shipping methods, pricing rules, and supported capabilities |
| 2 | dsers_rules_validate | Dry-run pricing or content rules without applying them — catches schema mistakes early |
| 3 | dsers_product_import | Import a product URL, optionally apply rules at import time, returns a full preview |
| 4 | dsers_product_preview | Reload preview for an imported product — title, price, variants, stock, active rules |
| 5 | dsers_product_update_rules | Edit pricing, content, images, variants, or option edits on an imported product (incremental merge — no re-import) |
| 6 | dsers_product_visibility | Toggle a draft between "hidden draft" and "published/live" before pushing |
| 7 | dsers_store_push | Push to Shopify / Wix — single product, batch, or fan-out to multiple stores in one call |
| 8 | dsers_job_status | Poll the status of a push (queued / running / completed / failed) |
| 9 | dsers_product_delete | Permanently remove a product from the DSers import list (irreversible, requires confirmation) |
| 10 | dsers_import_list | Browse the import staging list with cost, sell price, stock, markup status, and low-stock warnings |
| 11 | dsers_my_products | List products already pushed to a specific store, with supplier URLs for re-import |
| 12 | dsers_find_product | Search the DSers product pool by keyword or image; results include import_url for one-step import |
| 13 | dsers_sku_remap | SKU-level supplier swap on a live store product. Strict mode (new_supplier_url) or discover mode (reverse-image search + multi-factor ranking). Run mode='preview' before mode='apply'. Requires product:mapping scope |
Pre-Push Safety Checks
Before pushing a product to your store, the tool automatically checks for common mistakes:
- Hard blocks (push won't go through): selling below supplier cost, zero sell price, all variants out of stock
- Warnings (push goes through, but you'll see a heads-up): profit margin below 10%, stock under 5 units, sell price under $1
If something looks wrong, your AI agent will tell you exactly which variant has the problem and why. If you're sure it's fine, you can override with force_push.
Pricing Rule Conflict Detection
If your DSers store has its own Pricing Rule enabled (basic/standard/advanced), and you also set pricing rules through MCP, the push will be blocked — not just warned. The agent will show two fix options:
- Set
pricing_rule_behavior='apply_store_pricing_rule'in push options to accept the store's pricing rule - Disable the Pricing Rule in your DSers store settings to use MCP pricing instead
Four Prompts
Ready-made workflows your AI client can use directly:
| Prompt | Description |
|---|---|
dsers_workflow_quick-import | Import a single product and push to store as draft |
dsers_workflow_bulk-import | Batch import with pricing multiplier |
dsers_workflow_multi-push | Push one product to all connected stores |
dsers_workflow_seo-optimize | Import, AI-rewrite title & description for SEO, then push |
Environment Variables
| Variable | Required | Description |
|---|---|---|
DSERS_ENV | No | production (default) or test |
DSERS_BASE_URL | No | Override API base URL |
IMPORT_MCP_STATE_DIR | No | Job state directory (default: .state) |
What's Next
- Product pool search enhancements — category filters, URL-based reverse lookup, product detail view
- More store platforms — TikTok Shop, Etsy, eBay (whatever DSers already integrates with)
- Order-level tools — fulfillment status, tracking, order sync
- Remote MCP refresh-token support — extend OAuth sessions beyond the initial access-token lifetime
Got an idea or feature request? Open an issue — contributions are very welcome.
FAQ
What is DSers MCP Product? DSers MCP Product is a free, open-source MCP server that automates dropshipping product imports from AliExpress, Alibaba, and 1688 to Shopify and Wix stores using AI agents like Claude and Cursor. Instead of manually copying product data, you tell your AI agent what to do in plain English.
How does it work? You type a command like "Import this product, mark up 2.5x, push to my store" in Cursor or Claude Desktop. The MCP server handles the entire workflow: fetching product data, applying pricing rules, editing variants, and pushing to your connected stores.
Is it free? Yes. The tool is open-source (MIT license) and completely free to use. You only need a free DSers account and a Shopify or Wix store connected in DSers.
Is it safe? Do I need to share my password? No passwords are stored or transmitted. Authentication uses a zero-password browser login — you log in on DSers's own website, and the tool picks up the session token. Your credentials never touch the MCP server. The project scored 92/100 on SafeSkill security scanning.
What AI clients does it support? Cursor, Claude Desktop, Claude Code, Claude Managed Agents, Windsurf, and any MCP-compatible client. Use stdio transport with the npm package, or Streamable HTTP with the hosted remote server.
Should I use the remote server or install locally?
Use the remote server (https://ai.silentrillmcp.com/dropshipping/mcp) if your MCP client supports Streamable HTTP and you want zero install — you skip Node.js setup entirely. Use the local npm package if your client only supports stdio (e.g. some Claude Desktop setups), you need custom env vars, or you want to run it fully offline from your own machine.
How is this different from AliDropify, AutoDS, or other dropshipping tools? Most dropshipping tools have their own UI and require you to click through web interfaces. DSers MCP Product takes a fundamentally different approach — it connects directly to your AI agent, so you automate workflows through conversation instead of clicking buttons. It's also open-source and free, with no subscription tiers.
What product sources does it support? AliExpress, Alibaba.com, Accio.com (Alibaba's AI sourcing tool), and 1688. For 1688, your DSers account needs the 1688 source authorization enabled — open DSers → Settings → Suppliers and link your 1688 account there.
What currency does pricing use? The agent displays prices in USD for readability, but pricing is actually applied in your store's native currency. DSers handles the conversion based on the store's configured currency (Shopify / Wix). Per-variant overrides and fixed prices are interpreted in store currency — confirm with the AI if you're not sure.
Can I push to multiple stores at once?
Yes. The dsers_store_push tool supports pushing a single product to all your connected Shopify and Wix stores in one command, with per-store pricing and visibility options.
Can I skip the browser login and hardcode a token?
For headless / CI environments, yes — set DSERS_ACCESS_TOKEN (and optionally DSERS_REFRESH_TOKEN) as env vars and the tool will skip the OAuth flow. Tokens come from running login once on any machine and copying them out of ~/.dsers-mcp/session.json. Interactive users should stick with npx @lofder/dsers-mcp-product login — it's safer and handles refresh automatically.
Troubleshooting
Push returns persist_failed or CODEC error
Fixed in v1.5.7. If you still see it, make sure you're on the latest version: npm view @lofder/dsers-mcp-product version. Reinstall with npx -y @lofder/dsers-mcp-product@latest to pick up the new release.
Push blocked with "pricing rule conflict"
Your DSers store has its own Pricing Rule enabled, and you also set MCP pricing rules. Pick one: either add pricing_rule_behavior='apply_store_pricing_rule' to the push options (accepts the store-side rule), or disable the Pricing Rule in DSers settings and let MCP drive pricing. See the Pricing Rule Conflict Detection section above.
1688 link imports fail with "unsupported source" Your DSers account needs 1688 source authorization. Open DSers Settings → Suppliers and link your 1688 seller account. AliExpress works out of the box; 1688 is opt-in.
npx @lofder/dsers-mcp-product login opens browser but gets stuck
The login flow needs ports 3001–3003 free on localhost for the OAuth callback. If any of those are in use (another MCP server, a dev server), kill them or set PORT=3004 before running login.
Remote server returns 401 after working for a while OAuth access tokens expire. The remote server currently doesn't auto-refresh — reauthorize via your MCP client (disconnect and reconnect the MCP server). Refresh-token support is on the What's Next list.
npx dsers-mcp-product: command not found (exit 127)
You're working from a local source clone, not the published npm package. Use node dist/cli.js login instead — the npx binary only resolves after npm link or a real install. Run npm run build first if dist/ doesn't exist.
Also Available
A Python version is available as a feature-parity subset for local stdio deployments. The TypeScript version is the primary maintained release — use it first.
License
MIT
中文
DSers MCP Product 是一个开源的 MCP (Model Context Protocol) 服务器,让 AI Agent 自动完成 DSers 的整个商品流程 —— 从选品搜索到 Shopify 或 Wix 店铺上架。搜索 DSers 商品池、从速卖通 / Alibaba / Accio.com 导入商品、批量编辑变体、应用定价规则、推送到多个店铺 —— 只需一句话给你的 AI agent。
能做什么?
- 选品搜索 — 在 DSers 商品池里按关键词或图片搜索,找到值得卖的商品
- 一句话导入 — 贴个商品链接,AI 助手自动导入到 DSers
- 浏览商品库 — 查看导入待推送列表和已上架商品,包含成本价、售价、加价状态
- 标题清理 — 把速卖通那些关键词堆砌的乱标题整理成人话
- 定价规则 — 加价倍率(比如 2.5 倍)、固定加价(比如 +5 美金)、固定售价(比如 9.99 美金)、划线价、按 SKU 单独定价
- 批量导入 — 一次丢一堆链接,全部导入
- 多店铺推送 — 一个商品一次推到你所有的 Shopify 和 Wix 店铺
- 安全校验 — 推送前自动拦截"低于成本价/零售价为 0/全变体零库存"三种情况;利润率低于 10%、单变体库存少于 5、售价低于 1 美金会弹警告
- SEO 优化 — 让 AI 重写标题和描述,提高搜索排名后再推送
- 供应商替换(SKU Remap) — SKU 级替换已上架商品的供应商,支持反向图搜自动找更便宜或有货的替代供应商
服务已托管在 Vercel,并发布到多个平台:
发布平台
| 平台 | 链接 |
|---|---|
| npm | npmjs.com/package/@lofder/dsers-mcp-product |
| MCP Registry(官方) | registry.modelcontextprotocol.io |
| Smithery | smithery.ai/server/@dsersx/product-mcp |
| Glama.ai | glama.ai/mcp/servers/lofder/dsers-mcp-product |
| mcp.so | mcp.so/server/dsers-mcp-product |
| mcpservers.org | mcpservers.org |
| MCP Marketplace | mcp-marketplace.io |
| awesome-mcp-servers | punkpeye/awesome-mcp-servers |
| Dev.to | 技术文章:I Built an MCP Server to Automate Dropshipping |
| Dev.to | 教程:How to Automate AliExpress to Shopify with AI |
支持的商品来源
支持 速卖通(AliExpress)、Alibaba.com 和 Accio.com 的商品链接。把任意平台的商品链接丢给你的 AI 助手,它就能自动导入 DSers 并上架到你的店铺。(1688 链接也能识别,但需要你的 DSers 账号开通了 1688 来源权限。)
Accio.com — AI 智能找商
Accio.com 是阿里巴巴的 AI 选品助手。你用自然语言描述想找的商品(比如"5 美金以下的蓝牙耳机"),它会帮你在速卖通和阿里巴巴上搜索。
怎么配合 DSers MCP 用:
- 打开 accio.com,用自然语言搜索你想要的商品。
- 在搜索结果里浏览,看到感兴趣的商品点击进去看详情。
- 复制浏览器地址栏的链接,大概长这样:
https://www.accio.com/c/xxx?productId=1005009871053792&ds=aliexpress.com - 把链接丢给你的 AI 助手,比如说:"帮我导入这个商品并上架:[粘贴链接]"
- 剩下的 AI 助手会自动搞定,不需要任何额外设置。
Accio 上搜出来的速卖通和阿里巴巴商品都能用。
文档
| 文档 | 说明 |
|---|---|
| ARCHITECTURE.md | 三层架构、目录结构、数据流 |
| USAGE.md | 安装、客户端配置(Cursor、Claude Desktop)、使用场景 |
| SKILL.md | AI agent 指令文件 — 工作流、规则、推送选项、错误处理 |
使用前提
- 一个 DSers 账号(免费版就行)
- Shopify 或 Wix 店铺已经在 DSers 里绑定好了
- 一个支持 MCP 的 AI 客户端 — Cursor、Claude Desktop、Claude Managed Agents、Windsurf 或其他支持 MCP 的工具
快速开始
第 1 步:登录(一次性操作,会打开浏览器)
$npx @lofder/dsers-mcp-product login
浏览器会自动打开 DSers 官方登录页。你在 DSers 自己的网站上登录 —— 密码完全不经过本工具。登录后 session 加密保存到本地。
第 2 步:添加到你的 MCP 客户端(不需要密码)
{"mcpServers": {"dsers-mcp-product": {"command": "npx","args": ["-y", "@lofder/dsers-mcp-product"]}}}
搞定。配置文件里不需要任何密码。
在线版(免安装):
如果不想在本地安装,可以直接连接托管的 MCP 服务端 https://ai.silentrillmcp.com/dropshipping/mcp。支持 Streamable HTTP transport 的 MCP 客户端都能用,首次连接会引导你授权 DSers 账号。
{"mcpServers": {"dropshipping": {"url": "https://ai.silentrillmcp.com/dropshipping/mcp"}}}
同时已收录到官方 MCP Registry。
Claude Managed Agents (文档):
通过 Claude Agent SDK 构建 7×24 自主运行的 dropshipping agent:
from claude_agent_sdk import query, ClaudeAgentOptionsasync for message in query(prompt="帮商品 dp-123 在店铺 st-456 找个更便宜的供应商并更新映射",options=ClaudeAgentOptions(mcp_servers={"dsers": {"command": "npx", "args": ["-y", "@lofder/dsers-mcp-product"]}}),):print(message)
授权认证 — OAuth 2.1
你的 DSers 密码完全不经过本工具。登录过程是这样的:
- 运行
npx @lofder/dsers-mcp-product login - 浏览器自动打开 DSers OAuth 授权页
- 你在 DSers 网站上授权
- 工具拿到 OAuth token,加密存到本地
- 搞定 — 之后 MCP 直接能用,配置文件里不需要写任何密码
Token 自动续期 — refresh token 会自动保持登录状态,你基本不需要重新登录。
换账号?
npx @lofder/dsers-mcp-product logoutnpx @lofder/dsers-mcp-product login
开发者注: headless / CI 环境支持通过
DSERS_ACCESS_TOKEN和DSERS_REFRESH_TOKEN环境变量传入凭据。
从源码工作(不是从 npm 包跑)? 登录用
node dist/cli.js login,不是npx @lofder/dsers-mcp-product login。后者要求dsers-mcp-productbinary 解析到 PATH,本地 workspace 没npm link(或者没真正 npm install)的话会command not found直接退出码 127。先npm run build让dist/cli.js存在再跑。
使用示例
装好之后,直接用自然语言跟 AI 助手说就行:
"帮我导入这个商品,推到我的 Shopify 店铺草稿:https://www.aliexpress.com/item/1005006372921430.html"
"导入这个商品,加价 2.5 倍,然后推送:https://www.aliexpress.com/item/1005006372921430.html"
"批量导入这 3 个商品,全部推到店铺:[链接1] [链接2] [链接3]"
"帮我搜一下 5 美金以下的手机壳"
"看下我的导入列表里有什么"
"我已经推送了哪些商品到店铺?"
"把这个商品推到我所有店铺"
"帮我把标题和描述重写一下做 SEO 优化,然后推送"
AI 助手会自己判断调用哪个工具,你不需要知道工具名称或参数。
通过 Smithery 安装
$npx @smithery/cli mcp add @dsersx/product-mcp --client cursor
或在 smithery.ai/server/@dsersx/product-mcp 浏览和安装。
从源码安装
git clone https://github.com/lofder/dsers-mcp-product.gitcd dsers-mcp-productnpm installnpm run buildnpm test
十三个工具
| # | 工具 | 干什么的 |
|---|---|---|
| 1 | dsers_store_discover | 列出已绑定店铺、配送方式、定价规则及可用能力 |
| 2 | dsers_rules_validate | 空跑定价/内容规则但不真正应用 — 提前抓 schema 错误 |
| 3 | dsers_product_import | 导入商品链接,可顺便应用规则,返回完整预览 |
| 4 | dsers_product_preview | 重新加载已导入商品的预览 — 标题、价格、变体、库存、已生效规则 |
| 5 | dsers_product_update_rules | 对已导入商品修改定价/标题/图片/变体/选项(增量合并,无需重新导入) |
| 6 | dsers_product_visibility | 在"隐藏草稿"和"上架展示"之间切换(推送前) |
| 7 | dsers_store_push | 推到 Shopify / Wix — 单个、批量、或一次扇出到多店铺 |
| 8 | dsers_job_status | 查询推送任务状态(排队 / 进行中 / 完成 / 失败) |
| 9 | dsers_product_delete | 从 DSers 导入列表中永久删除商品(不可恢复,需显式确认) |
| 10 | dsers_import_list | 浏览导入待推送列表,含成本价、售价、库存、加价状态、低库存预警 |
| 11 | dsers_my_products | 列出指定店铺已上架的商品,带供应商 URL 方便重导入 |
| 12 | dsers_find_product | DSers 商品池关键词/图片搜索,结果附带 import_url 可一键导入 |
| 13 | dsers_sku_remap | SKU 级替换已上架商品的供应商。精确模式(传 new_supplier_url)或发现模式(反向图搜 + 多因子打分)。先 mode='preview',确认后再 mode='apply'。需要 product:mapping scope |
推送前安全校验
推送到店铺之前,工具会自动帮你检查常见问题:
- 直接拦截(不让推):售价低于进货成本、零售价为 0、所有变体都没库存
- 警告提醒(能推,但会提示你):利润率低于 10%、库存少于 5 件、售价低于 1 美金
有问题的话,AI 助手会告诉你具体是哪个变体出了什么问题。确定没问题的话可以用 force_push 强制推送。
定价规则冲突检测
如果你的 DSers 店铺自己启用了定价规则(基础/标准/高级),同时你又通过 MCP 设置了定价规则,推送会被直接拦截而不是仅警告。AI 助手会给出两个解决方案:
- 在推送选项中设置
pricing_rule_behavior='apply_store_pricing_rule'接受店铺端的定价规则 - 在 DSers 店铺设置中关闭定价规则,使用 MCP 的定价
四个预设提示
MCP 客户端可直接展示给用户的工作流模板:
| 提示 | 说明 |
|---|---|
dsers_workflow_quick-import | 一键导入单个商品并推送为草稿 |
dsers_workflow_bulk-import | 批量导入 + 统一定价倍率 |
dsers_workflow_multi-push | 一个商品推送到所有店铺 |
dsers_workflow_seo-optimize | 导入后 AI 重写标题和描述做 SEO 优化,再推送 |
后续计划
- 商品池搜索增强 — 分类过滤、URL 反查、商品详情视图
- 更多店铺平台 — TikTok Shop、Etsy、eBay(凡是 DSers 已接入的)
- 订单级工具 — 履约状态、物流跟踪、订单同步
- 远程 MCP refresh-token 支持 — 延长 OAuth 会话有效期,免反复授权
有想法或需求?欢迎 提 issue —— 非常欢迎其他开发者的建议和贡献。
常见问题
DSers MCP Product 是什么? 一个免费开源的 MCP 服务器,让 AI Agent(如 Claude、Cursor)自动完成从速卖通/Alibaba/1688 到 Shopify/Wix 店铺的商品导入全流程。不用手动复制商品数据,用自然语言对话就能操作。
怎么用? 在 Cursor 或 Claude Desktop 里输入"导入这个商品,加价 2.5 倍,推送到我的店铺",MCP 服务器自动完成抓取商品数据、应用定价规则、编辑变体、推送到店铺的全部流程。
收费吗? 完全免费。项目开源(MIT 协议),你只需要一个免费的 DSers 账号和已连接的 Shopify 或 Wix 店铺。
安全吗?需要提供密码吗? 不需要。登录采用零密码浏览器认证——你在 DSers 官网登录,工具只接收会话令牌,密码永远不会经过 MCP 服务器。项目在 SafeSkill 安全扫描中获得 92/100 分。
支持哪些 AI 客户端? Cursor、Claude Desktop、Claude Code、Claude Managed Agents、Windsurf,以及任何 MCP 兼容客户端。npm 包走 stdio transport,托管的远程服务端走 Streamable HTTP。
应该用远程版还是本地装?
如果你的 MCP 客户端支持 Streamable HTTP、不想折腾 Node.js,用远程版(https://ai.silentrillmcp.com/dropshipping/mcp);如果客户端只认 stdio(部分 Claude Desktop 版本)、想完全离线、或者需要传自定义环境变量,就用本地 npm 包。
和 AliDropify、AutoDS 等 Dropshipping 工具有什么区别? 大多数 Dropshipping 工具有自己的界面,需要点来点去。DSers MCP Product 完全不同——它直接连接你的 AI Agent,用对话代替点击来自动化工作流。而且完全开源免费,没有订阅分级。
支持哪些商品来源? AliExpress、Alibaba.com、Accio.com(阿里的 AI 选品工具),以及 1688。1688 需要你的 DSers 账号开通 1688 供应商权限:打开 DSers → 设置 → 供应商 绑定 1688 账号。
用什么货币? AI 助手会用美元显示售价便于阅读,但实际定价按你店铺的本币应用。DSers 会按店铺配置的货币(Shopify / Wix)自动换算。按变体单独定价和固定售价都以店铺本币为准——拿不准的话问 AI 确认一下。
能同时推送到多个店铺吗?
可以。dsers_store_push 支持一条命令将商品推送到所有已连接的 Shopify 和 Wix 店铺,支持按店铺设置不同的定价和可见性。
能不能跳过浏览器登录、直接写死 token?
可以,headless / CI 环境设置 DSERS_ACCESS_TOKEN(和可选的 DSERS_REFRESH_TOKEN)环境变量即可跳过 OAuth。Token 来自任意机器上跑一次 login 后从 ~/.dsers-mcp/session.json 里拷贝。交互式用户还是建议用 npx @lofder/dsers-mcp-product login——更安全,token 自动续期。
疑难排查
推送返回 persist_failed 或 CODEC 错误
v1.5.7 已修。确认版本是最新:npm view @lofder/dsers-mcp-product version。必要时用 npx -y @lofder/dsers-mcp-product@latest 重装。
推送被拦截,提示"定价规则冲突"
DSers 店铺自己开了定价规则,同时你又通过 MCP 设了定价规则。二选一:要么在推送选项里加 pricing_rule_behavior='apply_store_pricing_rule'(采纳店铺端规则),要么在 DSers 设置里关掉定价规则、让 MCP 管定价。详见上面定价规则冲突检测小节。
1688 链接导入失败,提示"不支持的来源" DSers 账号需要开通 1688 来源授权。去 DSers 设置 → 供应商 绑定 1688 卖家账号。AliExpress 默认就能用,1688 需要手动开。
npx @lofder/dsers-mcp-product login 打开浏览器但卡住
登录流程需要 localhost 3001–3003 端口可用(OAuth 回调要用)。如果这几个端口被占(其他 MCP 服务、本地 dev server),先关掉,或者先执行 PORT=3004 再跑 login。
远程版用一阵后返回 401 OAuth access token 到期了。当前远程版还不自动续期——在 MCP 客户端里断开重连、重新授权就行。refresh token 支持在后续计划里。
npx dsers-mcp-product: command not found(退出码 127)
你在本地源码仓库里直接跑 npx,但没装过 npm 包。用 node dist/cli.js login 代替。npx 命令需要 npm link 或真的装过 npm 包才能解析到 binary。dist/ 不存在的话先 npm run build。
其他版本
也提供 Python 版本,作为功能对齐的精简子集,适合本地 stdio 部署。主要维护仍然是 TypeScript 版,优先用 TS。
许可证
MIT




