@lofder/dsers-mcp-product 1.5.8 → 1.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/README.md +58 -317
- package/README.zh-CN.md +372 -0
- package/dist/cli.js +5 -1
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,16 @@
|
|
|
8
8
|
|
|
9
9
|
## English
|
|
10
10
|
|
|
11
|
+
### 1.5.9 — 2026-04-21
|
|
12
|
+
|
|
13
|
+
Tiny feature release — one user-requested CLI flag, no behaviour changes elsewhere.
|
|
14
|
+
|
|
15
|
+
#### Features
|
|
16
|
+
|
|
17
|
+
- **`--version` / `-v` / `version` CLI flag** (thanks [@fuleinist](https://github.com/lofder/dsers-mcp-product/issues/2)). The CLI now prints the installed package version and exits, matching the convention every other CLI follows. The version constant was already read from `package.json` internally; this just exposes it. The help text also now leads with `dsers-mcp-product vX.Y.Z — ...` so you can see the version without knowing the flag.
|
|
18
|
+
|
|
19
|
+
Version output goes to stdout (pipeable: `npx @lofder/dsers-mcp-product --version | grep ...` works). Everything else the CLI prints still goes to stderr so it doesn't pollute MCP stdio.
|
|
20
|
+
|
|
11
21
|
### 1.5.8 — 2026-04-15
|
|
12
22
|
|
|
13
23
|
Catch-up release folding 1.5.2 → 1.5.8 into a single published npm version. The npm CLI behaviour on this release is effectively identical to 1.5.7 — the code changes since 1.5.1 either landed in intermediate releases already on your machine, or affect only the Vercel-hosted deployment. The main user-facing update is a documentation pass and affiliate links in the README.
|
|
@@ -184,6 +194,16 @@ Previous releases live in the git history. Mostly OAuth 2.1 + remote MCP + Verce
|
|
|
184
194
|
|
|
185
195
|
## 中文
|
|
186
196
|
|
|
197
|
+
### 1.5.9 — 2026-04-21
|
|
198
|
+
|
|
199
|
+
小功能版本 —— 加了一个社区提议的 CLI 参数,其余没改动。
|
|
200
|
+
|
|
201
|
+
#### 新功能
|
|
202
|
+
|
|
203
|
+
- **`--version` / `-v` / `version` CLI 参数**(感谢 [@fuleinist](https://github.com/lofder/dsers-mcp-product/issues/2) 的建议)。CLI 现在能直接打印已装版本号然后退出,跟所有其他 CLI 工具的惯例对齐。内部其实一直从 `package.json` 读了版本号,只是没 expose 出来。顺手把 help 文本也改了,第一行现在直接写 `dsers-mcp-product vX.Y.Z — ...`,不知道这个 flag 的人也能看到版本。
|
|
204
|
+
|
|
205
|
+
版本号走 stdout(可以 pipe:`npx @lofder/dsers-mcp-product --version | grep ...`)。CLI 其他输出继续走 stderr,不会污染 MCP 的 stdio 通道。
|
|
206
|
+
|
|
187
207
|
### 1.5.8 — 2026-04-15
|
|
188
208
|
|
|
189
209
|
追尾版本,把 1.5.2 → 1.5.8 合成单次 npm 发布。如果你已经在 1.5.7,npm CLI 行为基本没变化 —— 1.5.1 之后的代码改动要么已经在中间版本里被你拿到过,要么只影响 Vercel 托管部署。这一版面向用户的更新主要是 README 打磨和 affiliate 链接。
|
package/README.md
CHANGED
|
@@ -8,14 +8,10 @@
|
|
|
8
8
|
|
|
9
9
|
> An open-source MCP server to automate DSers product sourcing, import, bulk edit, and push to Shopify or Wix using AI.
|
|
10
10
|
|
|
11
|
-
>
|
|
11
|
+
> **English** | [中文](README.zh-CN.md)
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
|
-
<a id="english"></a>
|
|
16
|
-
|
|
17
|
-
## English
|
|
18
|
-
|
|
19
15
|
**DSers MCP Product** is an open-source [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) server that lets AI Agents automate the entire [DSers](https://www.dsers.com/partner/2044332769636515840) import workflow — from product sourcing to Shopify or Wix store listing. Search the DSers product pool, import from AliExpress / Alibaba / [Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio), bulk edit variants, apply pricing rules, and push to multiple stores — all with a single sentence to your AI agent.
|
|
20
16
|
|
|
21
17
|
#### What can it do?
|
|
@@ -80,7 +76,7 @@ This works for both AliExpress and Alibaba products found on Accio.
|
|
|
80
76
|
- **Node.js** >= 20.0.0
|
|
81
77
|
- A [DSers](https://www.dsers.com/partner/2044332769636515840) account (free plan works)
|
|
82
78
|
- A Shopify or Wix store already connected in DSers
|
|
83
|
-
- An MCP-compatible AI client — [Cursor](https://cursor.sh/), [Claude Desktop](https://claude.ai/desktop), [Claude Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview), [Windsurf](https://codeium.com/windsurf), or any client that
|
|
79
|
+
- An MCP-compatible AI client — [Cursor](https://cursor.sh/), [Claude Desktop](https://claude.ai/desktop), [Claude Code](https://docs.claude.com/en/docs/claude-code/overview), [Claude Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview), [Codex CLI](https://github.com/openai/codex), [Gemini CLI](https://github.com/google-gemini/gemini-cli), [OpenClaw](https://docs.openclaw.ai/), [VS Code Copilot](https://code.visualstudio.com/docs/copilot/chat/mcp-servers) (agent mode), [Windsurf](https://codeium.com/windsurf), [Cline](https://cline.bot/), [Zed](https://zed.dev/), [Continue](https://continue.dev/), or any client that speaks MCP
|
|
84
80
|
|
|
85
81
|
### Quick Start
|
|
86
82
|
|
|
@@ -94,6 +90,8 @@ A browser window opens to the official DSers login page. You log in on DSers's o
|
|
|
94
90
|
|
|
95
91
|
**Step 2: Add to your MCP client (no credentials needed)**
|
|
96
92
|
|
|
93
|
+
The standard `mcpServers` JSON works for **Cursor, Windsurf, Cline, Zed, Continue, opencode, and most MCP clients**:
|
|
94
|
+
|
|
97
95
|
```json
|
|
98
96
|
{
|
|
99
97
|
"mcpServers": {
|
|
@@ -107,6 +105,59 @@ A browser window opens to the official DSers login page. You log in on DSers's o
|
|
|
107
105
|
|
|
108
106
|
That's it. No passwords in config files.
|
|
109
107
|
|
|
108
|
+
<details>
|
|
109
|
+
<summary><b>Other clients — Claude Desktop, Claude Code, Codex CLI, Gemini CLI, VS Code, OpenClaw</b></summary>
|
|
110
|
+
|
|
111
|
+
**Claude Desktop** — edit `claude_desktop_config.json` (same JSON as above).
|
|
112
|
+
|
|
113
|
+
**Claude Code** (CLI):
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
claude mcp add dsers -- npx -y @lofder/dsers-mcp-product
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Codex CLI** — add to `~/.codex/config.toml` (note the TOML format and `mcp_servers` snake_case):
|
|
120
|
+
|
|
121
|
+
```toml
|
|
122
|
+
[mcp_servers.dsers]
|
|
123
|
+
command = "npx"
|
|
124
|
+
args = ["-y", "@lofder/dsers-mcp-product"]
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Gemini CLI** — add to `~/.gemini/settings.json`:
|
|
128
|
+
|
|
129
|
+
```json
|
|
130
|
+
{
|
|
131
|
+
"mcpServers": {
|
|
132
|
+
"dsers": {
|
|
133
|
+
"command": "npx",
|
|
134
|
+
"args": ["-y", "@lofder/dsers-mcp-product"]
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**VS Code (Copilot agent mode)** — `mcp.json` uses `servers` (not `mcpServers`):
|
|
141
|
+
|
|
142
|
+
```json
|
|
143
|
+
{
|
|
144
|
+
"servers": {
|
|
145
|
+
"dsers": {
|
|
146
|
+
"command": "npx",
|
|
147
|
+
"args": ["-y", "@lofder/dsers-mcp-product"]
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**OpenClaw** — use the `openclaw mcp set` command:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
openclaw mcp set dsers '{"command":"npx","args":["-y","@lofder/dsers-mcp-product"]}'
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
</details>
|
|
160
|
+
|
|
110
161
|
**Remote server (no install needed):**
|
|
111
162
|
|
|
112
163
|
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.
|
|
@@ -338,7 +389,7 @@ Yes. The tool is open-source (MIT license) and completely free to use. You only
|
|
|
338
389
|
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](https://safeskill.dev/scan/@lofder/dsers-mcp-product) security scanning.
|
|
339
390
|
|
|
340
391
|
**What AI clients does it support?**
|
|
341
|
-
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.
|
|
392
|
+
Cursor, Claude Desktop, Claude Code, Claude Managed Agents, Codex CLI, Gemini CLI, OpenClaw, VS Code Copilot (agent mode), Windsurf, Cline, Zed, Continue, and any MCP-compatible client. Use stdio transport with the npm package, or Streamable HTTP with the hosted remote server.
|
|
342
393
|
|
|
343
394
|
**Should I use the remote server or install locally?**
|
|
344
395
|
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.
|
|
@@ -385,313 +436,3 @@ A [Python version](https://github.com/lofder/dsers-mcp-product-py) is available
|
|
|
385
436
|
### License
|
|
386
437
|
|
|
387
438
|
MIT
|
|
388
|
-
|
|
389
|
-
---
|
|
390
|
-
|
|
391
|
-
<a id="中文"></a>
|
|
392
|
-
|
|
393
|
-
## 中文
|
|
394
|
-
|
|
395
|
-
**DSers MCP Product** 是一个开源的 [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) 服务器,让 AI Agent 自动完成 [DSers](https://www.dsers.com/partner/2044332769636515840) 的整个商品流程 —— 从选品搜索到 Shopify 或 Wix 店铺上架。搜索 DSers 商品池、从速卖通 / Alibaba / [Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio) 导入商品、批量编辑变体、应用定价规则、推送到多个店铺 —— 只需一句话给你的 AI agent。
|
|
396
|
-
|
|
397
|
-
#### 能做什么?
|
|
398
|
-
|
|
399
|
-
- **选品搜索** — 在 DSers 商品池里按关键词或图片搜索,找到值得卖的商品
|
|
400
|
-
- **一句话导入** — 贴个商品链接,AI 助手自动导入到 DSers
|
|
401
|
-
- **浏览商品库** — 查看导入待推送列表和已上架商品,包含成本价、售价、加价状态
|
|
402
|
-
- **标题清理** — 把速卖通那些关键词堆砌的乱标题整理成人话
|
|
403
|
-
- **定价规则** — 加价倍率(比如 2.5 倍)、固定加价(比如 +5 美金)、固定售价(比如 9.99 美金)、划线价、按 SKU 单独定价
|
|
404
|
-
- **批量导入** — 一次丢一堆链接,全部导入
|
|
405
|
-
- **多店铺推送** — 一个商品一次推到你所有的 Shopify 和 Wix 店铺
|
|
406
|
-
- **安全校验** — 推送前自动拦截"低于成本价/零售价为 0/全变体零库存"三种情况;利润率低于 10%、单变体库存少于 5、售价低于 1 美金会弹警告
|
|
407
|
-
- **SEO 优化** — 让 AI 重写标题和描述,提高搜索排名后再推送
|
|
408
|
-
- **供应商替换(SKU Remap)** — SKU 级替换已上架商品的供应商,支持反向图搜自动找更便宜或有货的替代供应商
|
|
409
|
-
|
|
410
|
-
服务已托管在 [Vercel](https://ai.silentrillmcp.com/dropshipping/mcp),并发布到多个平台:
|
|
411
|
-
|
|
412
|
-
### 发布平台
|
|
413
|
-
|
|
414
|
-
| 平台 | 链接 |
|
|
415
|
-
|------|------|
|
|
416
|
-
| npm | [npmjs.com/package/@lofder/dsers-mcp-product](https://www.npmjs.com/package/@lofder/dsers-mcp-product) |
|
|
417
|
-
| MCP Registry(官方) | [registry.modelcontextprotocol.io](https://registry.modelcontextprotocol.io/servers/io.github.lofder/dsers-mcp-product) |
|
|
418
|
-
| Smithery | [smithery.ai/server/@dsersx/product-mcp](https://smithery.ai/server/@dsersx/product-mcp) |
|
|
419
|
-
| Glama.ai | [glama.ai/mcp/servers/lofder/dsers-mcp-product](https://glama.ai/mcp/servers/lofder/dsers-mcp-product) |
|
|
420
|
-
| mcp.so | [mcp.so/server/dsers-mcp-product](https://mcp.so/server/dsers-mcp-product) |
|
|
421
|
-
| mcpservers.org | [mcpservers.org](https://mcpservers.org) |
|
|
422
|
-
| MCP Marketplace | [mcp-marketplace.io](https://mcp-marketplace.io/server/io-github-lofder-dsers-mcp-product) |
|
|
423
|
-
| awesome-mcp-servers | [punkpeye/awesome-mcp-servers](https://github.com/punkpeye/awesome-mcp-servers) |
|
|
424
|
-
| Dev.to | [技术文章:I Built an MCP Server to Automate Dropshipping](https://dev.to/_95a3e57463e6442feacd0/i-built-an-mcp-server-to-automate-dropshipping-product-imports-3m5b) |
|
|
425
|
-
| Dev.to | [教程:How to Automate AliExpress to Shopify with AI](https://dev.to/_95a3e57463e6442feacd0/how-to-automate-aliexpress-to-shopify-product-import-with-ai-step-by-step-guide-3f5a) |
|
|
426
|
-
|
|
427
|
-
### 支持的商品来源
|
|
428
|
-
|
|
429
|
-
支持 **速卖通(AliExpress)**、**Alibaba.com** 和 **[Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio)** 的商品链接。把任意平台的商品链接丢给你的 AI 助手,它就能自动导入 DSers 并上架到你的店铺。(1688 链接也能识别,但需要你的 DSers 账号开通了 1688 来源权限。)
|
|
430
|
-
|
|
431
|
-
### Accio.com — AI 智能找商
|
|
432
|
-
|
|
433
|
-
[Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio) 是阿里巴巴的 AI 选品助手。你用自然语言描述想找的商品(比如"5 美金以下的蓝牙耳机"),它会帮你在速卖通和阿里巴巴上搜索。
|
|
434
|
-
|
|
435
|
-
**怎么配合 DSers MCP 用:**
|
|
436
|
-
|
|
437
|
-
1. 打开 [accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio),用自然语言搜索你想要的商品。
|
|
438
|
-
2. 在搜索结果里浏览,看到感兴趣的商品**点击进去**看详情。
|
|
439
|
-
3. **复制浏览器地址栏的链接**,大概长这样:
|
|
440
|
-
`https://www.accio.com/c/xxx?productId=1005009871053792&ds=aliexpress.com`
|
|
441
|
-
4. 把链接丢给你的 AI 助手,比如说:*"帮我导入这个商品并上架:[粘贴链接]"*
|
|
442
|
-
5. 剩下的 AI 助手会自动搞定,不需要任何额外设置。
|
|
443
|
-
|
|
444
|
-
Accio 上搜出来的速卖通和阿里巴巴商品都能用。
|
|
445
|
-
|
|
446
|
-
### 文档
|
|
447
|
-
|
|
448
|
-
| 文档 | 说明 |
|
|
449
|
-
|------|------|
|
|
450
|
-
| [ARCHITECTURE.md](ARCHITECTURE.md) | 三层架构、目录结构、数据流 |
|
|
451
|
-
| [USAGE.md](USAGE.md) | 安装、客户端配置(Cursor、Claude Desktop)、使用场景 |
|
|
452
|
-
| [SKILL.md](SKILL.md) | AI agent 指令文件 — 工作流、规则、推送选项、错误处理 |
|
|
453
|
-
|
|
454
|
-
### 使用前提
|
|
455
|
-
|
|
456
|
-
- 一个 [DSers](https://www.dsers.com/partner/2044332769636515840) 账号(免费版就行)
|
|
457
|
-
- Shopify 或 Wix 店铺已经在 DSers 里绑定好了
|
|
458
|
-
- 一个支持 MCP 的 AI 客户端 — [Cursor](https://cursor.sh/)、[Claude Desktop](https://claude.ai/desktop)、[Claude Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview)、[Windsurf](https://codeium.com/windsurf) 或其他支持 MCP 的工具
|
|
459
|
-
|
|
460
|
-
### 快速开始
|
|
461
|
-
|
|
462
|
-
**第 1 步:登录(一次性操作,会打开浏览器)**
|
|
463
|
-
|
|
464
|
-
```bash
|
|
465
|
-
npx @lofder/dsers-mcp-product login
|
|
466
|
-
```
|
|
467
|
-
|
|
468
|
-
浏览器会自动打开 DSers 官方登录页。你在 DSers 自己的网站上登录 —— 密码**完全不经过**本工具。登录后 session 加密保存到本地。
|
|
469
|
-
|
|
470
|
-
**第 2 步:添加到你的 MCP 客户端(不需要密码)**
|
|
471
|
-
|
|
472
|
-
```json
|
|
473
|
-
{
|
|
474
|
-
"mcpServers": {
|
|
475
|
-
"dsers-mcp-product": {
|
|
476
|
-
"command": "npx",
|
|
477
|
-
"args": ["-y", "@lofder/dsers-mcp-product"]
|
|
478
|
-
}
|
|
479
|
-
}
|
|
480
|
-
}
|
|
481
|
-
```
|
|
482
|
-
|
|
483
|
-
搞定。配置文件里不需要任何密码。
|
|
484
|
-
|
|
485
|
-
**在线版(免安装):**
|
|
486
|
-
|
|
487
|
-
如果不想在本地安装,可以直接连接托管的 MCP 服务端 `https://ai.silentrillmcp.com/dropshipping/mcp`。支持 Streamable HTTP transport 的 MCP 客户端都能用,首次连接会引导你授权 DSers 账号。
|
|
488
|
-
|
|
489
|
-
```json
|
|
490
|
-
{
|
|
491
|
-
"mcpServers": {
|
|
492
|
-
"dropshipping": {
|
|
493
|
-
"url": "https://ai.silentrillmcp.com/dropshipping/mcp"
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
}
|
|
497
|
-
```
|
|
498
|
-
|
|
499
|
-
同时已收录到官方 [MCP Registry](https://registry.modelcontextprotocol.io/servers/io.github.lofder/dsers-mcp-product)。
|
|
500
|
-
|
|
501
|
-
**Claude Managed Agents ([文档](https://platform.claude.com/docs/en/managed-agents/overview)):**
|
|
502
|
-
|
|
503
|
-
通过 [Claude Agent SDK](https://platform.claude.com/docs/en/agent-sdk/mcp) 构建 7×24 自主运行的 dropshipping agent:
|
|
504
|
-
|
|
505
|
-
```python
|
|
506
|
-
from claude_agent_sdk import query, ClaudeAgentOptions
|
|
507
|
-
|
|
508
|
-
async for message in query(
|
|
509
|
-
prompt="帮商品 dp-123 在店铺 st-456 找个更便宜的供应商并更新映射",
|
|
510
|
-
options=ClaudeAgentOptions(
|
|
511
|
-
mcp_servers={
|
|
512
|
-
"dsers": {"command": "npx", "args": ["-y", "@lofder/dsers-mcp-product"]}
|
|
513
|
-
}
|
|
514
|
-
),
|
|
515
|
-
):
|
|
516
|
-
print(message)
|
|
517
|
-
```
|
|
518
|
-
|
|
519
|
-
### 授权认证 — OAuth 2.1
|
|
520
|
-
|
|
521
|
-
你的 DSers 密码**完全不经过本工具**。登录过程是这样的:
|
|
522
|
-
|
|
523
|
-
1. 运行 `npx @lofder/dsers-mcp-product login`
|
|
524
|
-
2. 浏览器自动打开 DSers OAuth 授权页
|
|
525
|
-
3. 你在 DSers 网站上授权
|
|
526
|
-
4. 工具拿到 OAuth token,加密存到本地
|
|
527
|
-
5. 搞定 — 之后 MCP 直接能用,配置文件里不需要写任何密码
|
|
528
|
-
|
|
529
|
-
**Token 自动续期** — refresh token 会自动保持登录状态,你基本不需要重新登录。
|
|
530
|
-
|
|
531
|
-
**换账号?**
|
|
532
|
-
|
|
533
|
-
```bash
|
|
534
|
-
npx @lofder/dsers-mcp-product logout
|
|
535
|
-
npx @lofder/dsers-mcp-product login
|
|
536
|
-
```
|
|
537
|
-
|
|
538
|
-
> **开发者注:** headless / CI 环境支持通过 `DSERS_ACCESS_TOKEN` 和 `DSERS_REFRESH_TOKEN` 环境变量传入凭据。
|
|
539
|
-
|
|
540
|
-
> **从源码工作(不是从 npm 包跑)?** 登录用 `node dist/cli.js login`,**不是** `npx @lofder/dsers-mcp-product login`。后者要求 `dsers-mcp-product` binary 解析到 PATH,本地 workspace 没 `npm link`(或者没真正 npm install)的话会 `command not found` 直接退出码 127。先 `npm run build` 让 `dist/cli.js` 存在再跑。
|
|
541
|
-
|
|
542
|
-
### 使用示例
|
|
543
|
-
|
|
544
|
-
装好之后,直接用自然语言跟 AI 助手说就行:
|
|
545
|
-
|
|
546
|
-
> "帮我导入这个商品,推到我的 Shopify 店铺草稿:https://www.aliexpress.com/item/1005006372921430.html"
|
|
547
|
-
|
|
548
|
-
> "导入这个商品,加价 2.5 倍,然后推送:https://www.aliexpress.com/item/1005006372921430.html"
|
|
549
|
-
|
|
550
|
-
> "批量导入这 3 个商品,全部推到店铺:[链接1] [链接2] [链接3]"
|
|
551
|
-
|
|
552
|
-
> "帮我搜一下 5 美金以下的手机壳"
|
|
553
|
-
|
|
554
|
-
> "看下我的导入列表里有什么"
|
|
555
|
-
|
|
556
|
-
> "我已经推送了哪些商品到店铺?"
|
|
557
|
-
|
|
558
|
-
> "把这个商品推到我所有店铺"
|
|
559
|
-
|
|
560
|
-
> "帮我把标题和描述重写一下做 SEO 优化,然后推送"
|
|
561
|
-
|
|
562
|
-
AI 助手会自己判断调用哪个工具,你不需要知道工具名称或参数。
|
|
563
|
-
|
|
564
|
-
### 通过 Smithery 安装
|
|
565
|
-
|
|
566
|
-
```bash
|
|
567
|
-
npx @smithery/cli mcp add @dsersx/product-mcp --client cursor
|
|
568
|
-
```
|
|
569
|
-
|
|
570
|
-
或在 [smithery.ai/server/@dsersx/product-mcp](https://smithery.ai/server/@dsersx/product-mcp) 浏览和安装。
|
|
571
|
-
|
|
572
|
-
### 从源码安装
|
|
573
|
-
|
|
574
|
-
```bash
|
|
575
|
-
git clone https://github.com/lofder/dsers-mcp-product.git
|
|
576
|
-
cd dsers-mcp-product
|
|
577
|
-
npm install
|
|
578
|
-
npm run build
|
|
579
|
-
npm test
|
|
580
|
-
```
|
|
581
|
-
|
|
582
|
-
### 十三个工具
|
|
583
|
-
|
|
584
|
-
| # | 工具 | 干什么的 |
|
|
585
|
-
|---|------|---------|
|
|
586
|
-
| 1 | `dsers_store_discover` | 列出已绑定店铺、配送方式、定价规则及可用能力 |
|
|
587
|
-
| 2 | `dsers_rules_validate` | 空跑定价/内容规则但不真正应用 — 提前抓 schema 错误 |
|
|
588
|
-
| 3 | `dsers_product_import` | 导入商品链接,可顺便应用规则,返回完整预览 |
|
|
589
|
-
| 4 | `dsers_product_preview` | 重新加载已导入商品的预览 — 标题、价格、变体、库存、已生效规则 |
|
|
590
|
-
| 5 | `dsers_product_update_rules` | 对已导入商品修改定价/标题/图片/变体/选项(增量合并,无需重新导入) |
|
|
591
|
-
| 6 | `dsers_product_visibility` | 在"隐藏草稿"和"上架展示"之间切换(推送前) |
|
|
592
|
-
| 7 | `dsers_store_push` | 推到 Shopify / Wix — 单个、批量、或一次扇出到多店铺 |
|
|
593
|
-
| 8 | `dsers_job_status` | 查询推送任务状态(排队 / 进行中 / 完成 / 失败) |
|
|
594
|
-
| 9 | `dsers_product_delete` | 从 DSers 导入列表中永久删除商品(不可恢复,需显式确认) |
|
|
595
|
-
| 10 | `dsers_import_list` | 浏览导入待推送列表,含成本价、售价、库存、加价状态、低库存预警 |
|
|
596
|
-
| 11 | `dsers_my_products` | 列出指定店铺已上架的商品,带供应商 URL 方便重导入 |
|
|
597
|
-
| 12 | `dsers_find_product` | DSers 商品池关键词/图片搜索,结果附带 `import_url` 可一键导入 |
|
|
598
|
-
| 13 | `dsers_sku_remap` | SKU 级替换已上架商品的供应商。精确模式(传 `new_supplier_url`)或发现模式(反向图搜 + 多因子打分)。先 `mode='preview'`,确认后再 `mode='apply'`。需要 `product:mapping` scope |
|
|
599
|
-
|
|
600
|
-
### 推送前安全校验
|
|
601
|
-
|
|
602
|
-
推送到店铺之前,工具会自动帮你检查常见问题:
|
|
603
|
-
|
|
604
|
-
- **直接拦截**(不让推):售价低于进货成本、零售价为 0、所有变体都没库存
|
|
605
|
-
- **警告提醒**(能推,但会提示你):利润率低于 10%、库存少于 5 件、售价低于 1 美金
|
|
606
|
-
|
|
607
|
-
有问题的话,AI 助手会告诉你具体是哪个变体出了什么问题。确定没问题的话可以用 `force_push` 强制推送。
|
|
608
|
-
|
|
609
|
-
### 定价规则冲突检测
|
|
610
|
-
|
|
611
|
-
如果你的 DSers 店铺自己启用了**定价规则**(基础/标准/高级),同时你又通过 MCP 设置了定价规则,推送会被**直接拦截**而不是仅警告。AI 助手会给出两个解决方案:
|
|
612
|
-
|
|
613
|
-
1. 在推送选项中设置 `pricing_rule_behavior='apply_store_pricing_rule'` 接受店铺端的定价规则
|
|
614
|
-
2. 在 DSers 店铺设置中关闭定价规则,使用 MCP 的定价
|
|
615
|
-
|
|
616
|
-
### 四个预设提示
|
|
617
|
-
|
|
618
|
-
MCP 客户端可直接展示给用户的工作流模板:
|
|
619
|
-
|
|
620
|
-
| 提示 | 说明 |
|
|
621
|
-
|------|------|
|
|
622
|
-
| `dsers_workflow_quick-import` | 一键导入单个商品并推送为草稿 |
|
|
623
|
-
| `dsers_workflow_bulk-import` | 批量导入 + 统一定价倍率 |
|
|
624
|
-
| `dsers_workflow_multi-push` | 一个商品推送到所有店铺 |
|
|
625
|
-
| `dsers_workflow_seo-optimize` | 导入后 AI 重写标题和描述做 SEO 优化,再推送 |
|
|
626
|
-
|
|
627
|
-
### 后续计划
|
|
628
|
-
|
|
629
|
-
- 商品池搜索增强 — 分类过滤、URL 反查、商品详情视图
|
|
630
|
-
- 更多店铺平台 — TikTok Shop、Etsy、eBay(凡是 DSers 已接入的)
|
|
631
|
-
- 订单级工具 — 履约状态、物流跟踪、订单同步
|
|
632
|
-
- 远程 MCP refresh-token 支持 — 延长 OAuth 会话有效期,免反复授权
|
|
633
|
-
|
|
634
|
-
有想法或需求?欢迎 [提 issue](https://github.com/lofder/dsers-mcp-product/issues) —— 非常欢迎其他开发者的建议和贡献。
|
|
635
|
-
|
|
636
|
-
### 常见问题
|
|
637
|
-
|
|
638
|
-
**DSers MCP Product 是什么?**
|
|
639
|
-
一个免费开源的 MCP 服务器,让 AI Agent(如 Claude、Cursor)自动完成从速卖通/Alibaba/1688 到 Shopify/Wix 店铺的商品导入全流程。不用手动复制商品数据,用自然语言对话就能操作。
|
|
640
|
-
|
|
641
|
-
**怎么用?**
|
|
642
|
-
在 Cursor 或 Claude Desktop 里输入"导入这个商品,加价 2.5 倍,推送到我的店铺",MCP 服务器自动完成抓取商品数据、应用定价规则、编辑变体、推送到店铺的全部流程。
|
|
643
|
-
|
|
644
|
-
**收费吗?**
|
|
645
|
-
完全免费。项目开源(MIT 协议),你只需要一个免费的 [DSers](https://www.dsers.com/partner/2044332769636515840) 账号和已连接的 Shopify 或 Wix 店铺。
|
|
646
|
-
|
|
647
|
-
**安全吗?需要提供密码吗?**
|
|
648
|
-
不需要。登录采用零密码浏览器认证——你在 DSers 官网登录,工具只接收会话令牌,密码永远不会经过 MCP 服务器。项目在 [SafeSkill](https://safeskill.dev/scan/@lofder/dsers-mcp-product) 安全扫描中获得 92/100 分。
|
|
649
|
-
|
|
650
|
-
**支持哪些 AI 客户端?**
|
|
651
|
-
Cursor、Claude Desktop、Claude Code、Claude Managed Agents、Windsurf,以及任何 MCP 兼容客户端。npm 包走 stdio transport,托管的远程服务端走 Streamable HTTP。
|
|
652
|
-
|
|
653
|
-
**应该用远程版还是本地装?**
|
|
654
|
-
如果你的 MCP 客户端支持 Streamable HTTP、不想折腾 Node.js,用**远程版**(`https://ai.silentrillmcp.com/dropshipping/mcp`);如果客户端只认 stdio(部分 Claude Desktop 版本)、想完全离线、或者需要传自定义环境变量,就用**本地 npm 包**。
|
|
655
|
-
|
|
656
|
-
**和 AliDropify、AutoDS 等 Dropshipping 工具有什么区别?**
|
|
657
|
-
大多数 Dropshipping 工具有自己的界面,需要点来点去。DSers MCP Product 完全不同——它直接连接你的 AI Agent,用对话代替点击来自动化工作流。而且完全开源免费,没有订阅分级。
|
|
658
|
-
|
|
659
|
-
**支持哪些商品来源?**
|
|
660
|
-
AliExpress、Alibaba.com、Accio.com(阿里的 AI 选品工具),以及 1688。1688 需要你的 DSers 账号开通 1688 供应商权限:打开 [DSers → 设置 → 供应商](https://app.dsers.com/) 绑定 1688 账号。
|
|
661
|
-
|
|
662
|
-
**用什么货币?**
|
|
663
|
-
AI 助手会用美元显示售价便于阅读,但实际定价按你店铺的本币应用。DSers 会按店铺配置的货币(Shopify / Wix)自动换算。按变体单独定价和固定售价都以店铺本币为准——拿不准的话问 AI 确认一下。
|
|
664
|
-
|
|
665
|
-
**能同时推送到多个店铺吗?**
|
|
666
|
-
可以。`dsers_store_push` 支持一条命令将商品推送到所有已连接的 Shopify 和 Wix 店铺,支持按店铺设置不同的定价和可见性。
|
|
667
|
-
|
|
668
|
-
**能不能跳过浏览器登录、直接写死 token?**
|
|
669
|
-
可以,headless / CI 环境设置 `DSERS_ACCESS_TOKEN`(和可选的 `DSERS_REFRESH_TOKEN`)环境变量即可跳过 OAuth。Token 来自任意机器上跑一次 `login` 后从 `~/.dsers-mcp/session.json` 里拷贝。交互式用户还是建议用 `npx @lofder/dsers-mcp-product login`——更安全,token 自动续期。
|
|
670
|
-
|
|
671
|
-
### 疑难排查
|
|
672
|
-
|
|
673
|
-
**推送返回 `persist_failed` 或 `CODEC` 错误**
|
|
674
|
-
v1.5.7 已修。确认版本是最新:`npm view @lofder/dsers-mcp-product version`。必要时用 `npx -y @lofder/dsers-mcp-product@latest` 重装。
|
|
675
|
-
|
|
676
|
-
**推送被拦截,提示"定价规则冲突"**
|
|
677
|
-
DSers 店铺自己开了定价规则,同时你又通过 MCP 设了定价规则。二选一:要么在推送选项里加 `pricing_rule_behavior='apply_store_pricing_rule'`(采纳店铺端规则),要么在 DSers 设置里关掉定价规则、让 MCP 管定价。详见上面[定价规则冲突检测](#定价规则冲突检测)小节。
|
|
678
|
-
|
|
679
|
-
**1688 链接导入失败,提示"不支持的来源"**
|
|
680
|
-
DSers 账号需要开通 1688 来源授权。去 [DSers 设置 → 供应商](https://app.dsers.com/) 绑定 1688 卖家账号。AliExpress 默认就能用,1688 需要手动开。
|
|
681
|
-
|
|
682
|
-
**`npx @lofder/dsers-mcp-product login` 打开浏览器但卡住**
|
|
683
|
-
登录流程需要 localhost 3001–3003 端口可用(OAuth 回调要用)。如果这几个端口被占(其他 MCP 服务、本地 dev server),先关掉,或者先执行 `PORT=3004` 再跑 login。
|
|
684
|
-
|
|
685
|
-
**远程版用一阵后返回 401**
|
|
686
|
-
OAuth access token 到期了。当前远程版还不自动续期——在 MCP 客户端里断开重连、重新授权就行。refresh token 支持在[后续计划](#后续计划)里。
|
|
687
|
-
|
|
688
|
-
**`npx dsers-mcp-product: command not found`(退出码 127)**
|
|
689
|
-
你在本地源码仓库里直接跑 `npx`,但没装过 npm 包。用 `node dist/cli.js login` 代替。`npx` 命令需要 `npm link` 或真的装过 npm 包才能解析到 binary。`dist/` 不存在的话先 `npm run build`。
|
|
690
|
-
|
|
691
|
-
### 其他版本
|
|
692
|
-
|
|
693
|
-
也提供 [Python 版本](https://github.com/lofder/dsers-mcp-product-py),作为功能对齐的精简子集,适合本地 stdio 部署。主要维护仍然是 TypeScript 版,优先用 TS。
|
|
694
|
-
|
|
695
|
-
### 许可证
|
|
696
|
-
|
|
697
|
-
MIT
|
package/README.zh-CN.md
ADDED
|
@@ -0,0 +1,372 @@
|
|
|
1
|
+
# DSers MCP Product — Dropshipping 自动化:用 AI 把商品从速卖通 / Alibaba 推到 Shopify 和 Wix
|
|
2
|
+
|
|
3
|
+
[](https://safeskill.dev/scan/@lofder/dsers-mcp-product)
|
|
4
|
+
[](https://smithery.ai/server/@dsersx/product-mcp)
|
|
5
|
+
[](https://www.npmjs.com/package/@lofder/dsers-mcp-product)
|
|
6
|
+
[](https://registry.modelcontextprotocol.io/servers/io.github.lofder/dsers-mcp-product)
|
|
7
|
+
[](https://glama.ai/mcp/servers/lofder/dsers-mcp-product)
|
|
8
|
+
|
|
9
|
+
> 开源 MCP 服务器,让 AI 自动完成 DSers 的选品、导入、批量编辑,并推送到 Shopify 或 Wix。
|
|
10
|
+
|
|
11
|
+
> [English](README.md) | **中文**
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
**DSers MCP Product** 是一个开源的 [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) 服务器,让 AI Agent 自动完成 [DSers](https://www.dsers.com/partner/2044332769636515840) 的整个商品流程 —— 从选品搜索到 Shopify 或 Wix 店铺上架。搜索 DSers 商品池、从速卖通 / Alibaba / [Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio) 导入商品、批量编辑变体、应用定价规则、推送到多个店铺 —— 只需一句话给你的 AI agent。
|
|
16
|
+
|
|
17
|
+
#### 能做什么?
|
|
18
|
+
|
|
19
|
+
- **选品搜索** — 在 DSers 商品池里按关键词或图片搜索,找到值得卖的商品
|
|
20
|
+
- **一句话导入** — 贴个商品链接,AI 助手自动导入到 DSers
|
|
21
|
+
- **浏览商品库** — 查看导入待推送列表和已上架商品,包含成本价、售价、加价状态
|
|
22
|
+
- **标题清理** — 把速卖通那些关键词堆砌的乱标题整理成人话
|
|
23
|
+
- **定价规则** — 加价倍率(比如 2.5 倍)、固定加价(比如 +5 美金)、固定售价(比如 9.99 美金)、划线价、按 SKU 单独定价
|
|
24
|
+
- **批量导入** — 一次丢一堆链接,全部导入
|
|
25
|
+
- **多店铺推送** — 一个商品一次推到你所有的 Shopify 和 Wix 店铺
|
|
26
|
+
- **安全校验** — 推送前自动拦截"低于成本价/零售价为 0/全变体零库存"三种情况;利润率低于 10%、单变体库存少于 5、售价低于 1 美金会弹警告
|
|
27
|
+
- **SEO 优化** — 让 AI 重写标题和描述,提高搜索排名后再推送
|
|
28
|
+
- **供应商替换(SKU Remap)** — SKU 级替换已上架商品的供应商,支持反向图搜自动找更便宜或有货的替代供应商
|
|
29
|
+
|
|
30
|
+
服务已托管在 [Vercel](https://ai.silentrillmcp.com/dropshipping/mcp),并发布到多个平台:
|
|
31
|
+
|
|
32
|
+
### 发布平台
|
|
33
|
+
|
|
34
|
+
| 平台 | 链接 |
|
|
35
|
+
|------|------|
|
|
36
|
+
| npm | [npmjs.com/package/@lofder/dsers-mcp-product](https://www.npmjs.com/package/@lofder/dsers-mcp-product) |
|
|
37
|
+
| MCP Registry(官方) | [registry.modelcontextprotocol.io](https://registry.modelcontextprotocol.io/servers/io.github.lofder/dsers-mcp-product) |
|
|
38
|
+
| Smithery | [smithery.ai/server/@dsersx/product-mcp](https://smithery.ai/server/@dsersx/product-mcp) |
|
|
39
|
+
| Glama.ai | [glama.ai/mcp/servers/lofder/dsers-mcp-product](https://glama.ai/mcp/servers/lofder/dsers-mcp-product) |
|
|
40
|
+
| mcp.so | [mcp.so/server/dsers-mcp-product](https://mcp.so/server/dsers-mcp-product) |
|
|
41
|
+
| mcpservers.org | [mcpservers.org](https://mcpservers.org) |
|
|
42
|
+
| MCP Marketplace | [mcp-marketplace.io](https://mcp-marketplace.io/server/io-github-lofder-dsers-mcp-product) |
|
|
43
|
+
| awesome-mcp-servers | [punkpeye/awesome-mcp-servers](https://github.com/punkpeye/awesome-mcp-servers) |
|
|
44
|
+
| Dev.to | [技术文章:I Built an MCP Server to Automate Dropshipping](https://dev.to/_95a3e57463e6442feacd0/i-built-an-mcp-server-to-automate-dropshipping-product-imports-3m5b) |
|
|
45
|
+
| Dev.to | [教程:How to Automate AliExpress to Shopify with AI](https://dev.to/_95a3e57463e6442feacd0/how-to-automate-aliexpress-to-shopify-product-import-with-ai-step-by-step-guide-3f5a) |
|
|
46
|
+
|
|
47
|
+
### 支持的商品来源
|
|
48
|
+
|
|
49
|
+
支持 **速卖通(AliExpress)**、**Alibaba.com** 和 **[Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio)** 的商品链接。把任意平台的商品链接丢给你的 AI 助手,它就能自动导入 DSers 并上架到你的店铺。(1688 链接也能识别,但需要你的 DSers 账号开通了 1688 来源权限。)
|
|
50
|
+
|
|
51
|
+
### Accio.com — AI 智能找商
|
|
52
|
+
|
|
53
|
+
[Accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio) 是阿里巴巴的 AI 选品助手。你用自然语言描述想找的商品(比如"5 美金以下的蓝牙耳机"),它会帮你在速卖通和阿里巴巴上搜索。
|
|
54
|
+
|
|
55
|
+
**怎么配合 DSers MCP 用:**
|
|
56
|
+
|
|
57
|
+
1. 打开 [accio.com](https://www.accio.com/login?sId=fsBYirNWqq7FyJFV4GnoXw%3D%3D&ic=IC407236504434&tenant=accio),用自然语言搜索你想要的商品。
|
|
58
|
+
2. 在搜索结果里浏览,看到感兴趣的商品**点击进去**看详情。
|
|
59
|
+
3. **复制浏览器地址栏的链接**,大概长这样:
|
|
60
|
+
`https://www.accio.com/c/xxx?productId=1005009871053792&ds=aliexpress.com`
|
|
61
|
+
4. 把链接丢给你的 AI 助手,比如说:*"帮我导入这个商品并上架:[粘贴链接]"*
|
|
62
|
+
5. 剩下的 AI 助手会自动搞定,不需要任何额外设置。
|
|
63
|
+
|
|
64
|
+
Accio 上搜出来的速卖通和阿里巴巴商品都能用。
|
|
65
|
+
|
|
66
|
+
### 文档
|
|
67
|
+
|
|
68
|
+
| 文档 | 说明 |
|
|
69
|
+
|------|------|
|
|
70
|
+
| [ARCHITECTURE.md](ARCHITECTURE.md) | 三层架构、目录结构、数据流 |
|
|
71
|
+
| [USAGE.md](USAGE.md) | 安装、客户端配置(Cursor、Claude Desktop)、使用场景 |
|
|
72
|
+
| [SKILL.md](SKILL.md) | AI agent 指令文件 — 工作流、规则、推送选项、错误处理 |
|
|
73
|
+
|
|
74
|
+
### 使用前提
|
|
75
|
+
|
|
76
|
+
- 一个 [DSers](https://www.dsers.com/partner/2044332769636515840) 账号(免费版就行)
|
|
77
|
+
- Shopify 或 Wix 店铺已经在 DSers 里绑定好了
|
|
78
|
+
- 一个支持 MCP 的 AI 客户端 — [Cursor](https://cursor.sh/)、[Claude Desktop](https://claude.ai/desktop)、[Claude Code](https://docs.claude.com/en/docs/claude-code/overview)、[Claude Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview)、[Codex CLI](https://github.com/openai/codex)、[Gemini CLI](https://github.com/google-gemini/gemini-cli)、[OpenClaw](https://docs.openclaw.ai/)、[VS Code Copilot](https://code.visualstudio.com/docs/copilot/chat/mcp-servers)(agent 模式)、[Windsurf](https://codeium.com/windsurf)、[Cline](https://cline.bot/)、[Zed](https://zed.dev/)、[Continue](https://continue.dev/) 或其他支持 MCP 的客户端
|
|
79
|
+
|
|
80
|
+
### 快速开始
|
|
81
|
+
|
|
82
|
+
**第 1 步:登录(一次性操作,会打开浏览器)**
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
npx @lofder/dsers-mcp-product login
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
浏览器会自动打开 DSers 官方登录页。你在 DSers 自己的网站上登录 —— 密码**完全不经过**本工具。登录后 session 加密保存到本地。
|
|
89
|
+
|
|
90
|
+
**第 2 步:添加到你的 MCP 客户端(不需要密码)**
|
|
91
|
+
|
|
92
|
+
下面这份标准 `mcpServers` JSON 可以直接用于 **Cursor、Windsurf、Cline、Zed、Continue、opencode 等绝大多数 MCP 客户端**:
|
|
93
|
+
|
|
94
|
+
```json
|
|
95
|
+
{
|
|
96
|
+
"mcpServers": {
|
|
97
|
+
"dsers-mcp-product": {
|
|
98
|
+
"command": "npx",
|
|
99
|
+
"args": ["-y", "@lofder/dsers-mcp-product"]
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
搞定。配置文件里不需要任何密码。
|
|
106
|
+
|
|
107
|
+
<details>
|
|
108
|
+
<summary><b>其他客户端 — Claude Desktop / Claude Code / Codex CLI / Gemini CLI / VS Code / OpenClaw</b></summary>
|
|
109
|
+
|
|
110
|
+
**Claude Desktop** — 编辑 `claude_desktop_config.json`(用上面同一份 JSON)。
|
|
111
|
+
|
|
112
|
+
**Claude Code**(CLI):
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
claude mcp add dsers -- npx -y @lofder/dsers-mcp-product
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
**Codex CLI** — 写入 `~/.codex/config.toml`(注意是 TOML,键名是 `mcp_servers` 下划线形式):
|
|
119
|
+
|
|
120
|
+
```toml
|
|
121
|
+
[mcp_servers.dsers]
|
|
122
|
+
command = "npx"
|
|
123
|
+
args = ["-y", "@lofder/dsers-mcp-product"]
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**Gemini CLI** — 写入 `~/.gemini/settings.json`:
|
|
127
|
+
|
|
128
|
+
```json
|
|
129
|
+
{
|
|
130
|
+
"mcpServers": {
|
|
131
|
+
"dsers": {
|
|
132
|
+
"command": "npx",
|
|
133
|
+
"args": ["-y", "@lofder/dsers-mcp-product"]
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
**VS Code(Copilot agent 模式)** — `mcp.json` 用的是 `servers`(不是 `mcpServers`):
|
|
140
|
+
|
|
141
|
+
```json
|
|
142
|
+
{
|
|
143
|
+
"servers": {
|
|
144
|
+
"dsers": {
|
|
145
|
+
"command": "npx",
|
|
146
|
+
"args": ["-y", "@lofder/dsers-mcp-product"]
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
**OpenClaw** — 一条命令写入 OpenClaw 配置:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
openclaw mcp set dsers '{"command":"npx","args":["-y","@lofder/dsers-mcp-product"]}'
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
</details>
|
|
159
|
+
|
|
160
|
+
**在线版(免安装):**
|
|
161
|
+
|
|
162
|
+
如果不想在本地安装,可以直接连接托管的 MCP 服务端 `https://ai.silentrillmcp.com/dropshipping/mcp`。支持 Streamable HTTP transport 的 MCP 客户端都能用,首次连接会引导你授权 DSers 账号。
|
|
163
|
+
|
|
164
|
+
```json
|
|
165
|
+
{
|
|
166
|
+
"mcpServers": {
|
|
167
|
+
"dropshipping": {
|
|
168
|
+
"url": "https://ai.silentrillmcp.com/dropshipping/mcp"
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
同时已收录到官方 [MCP Registry](https://registry.modelcontextprotocol.io/servers/io.github.lofder/dsers-mcp-product)。
|
|
175
|
+
|
|
176
|
+
**Claude Managed Agents ([文档](https://platform.claude.com/docs/en/managed-agents/overview)):**
|
|
177
|
+
|
|
178
|
+
通过 [Claude Agent SDK](https://platform.claude.com/docs/en/agent-sdk/mcp) 构建 7×24 自主运行的 dropshipping agent:
|
|
179
|
+
|
|
180
|
+
```python
|
|
181
|
+
from claude_agent_sdk import query, ClaudeAgentOptions
|
|
182
|
+
|
|
183
|
+
async for message in query(
|
|
184
|
+
prompt="帮商品 dp-123 在店铺 st-456 找个更便宜的供应商并更新映射",
|
|
185
|
+
options=ClaudeAgentOptions(
|
|
186
|
+
mcp_servers={
|
|
187
|
+
"dsers": {"command": "npx", "args": ["-y", "@lofder/dsers-mcp-product"]}
|
|
188
|
+
}
|
|
189
|
+
),
|
|
190
|
+
):
|
|
191
|
+
print(message)
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### 授权认证 — OAuth 2.1
|
|
195
|
+
|
|
196
|
+
你的 DSers 密码**完全不经过本工具**。登录过程是这样的:
|
|
197
|
+
|
|
198
|
+
1. 运行 `npx @lofder/dsers-mcp-product login`
|
|
199
|
+
2. 浏览器自动打开 DSers OAuth 授权页
|
|
200
|
+
3. 你在 DSers 网站上授权
|
|
201
|
+
4. 工具拿到 OAuth token,加密存到本地
|
|
202
|
+
5. 搞定 — 之后 MCP 直接能用,配置文件里不需要写任何密码
|
|
203
|
+
|
|
204
|
+
**Token 自动续期** — refresh token 会自动保持登录状态,你基本不需要重新登录。
|
|
205
|
+
|
|
206
|
+
**换账号?**
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
npx @lofder/dsers-mcp-product logout
|
|
210
|
+
npx @lofder/dsers-mcp-product login
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
> **开发者注:** headless / CI 环境支持通过 `DSERS_ACCESS_TOKEN` 和 `DSERS_REFRESH_TOKEN` 环境变量传入凭据。
|
|
214
|
+
|
|
215
|
+
> **从源码工作(不是从 npm 包跑)?** 登录用 `node dist/cli.js login`,**不是** `npx @lofder/dsers-mcp-product login`。后者要求 `dsers-mcp-product` binary 解析到 PATH,本地 workspace 没 `npm link`(或者没真正 npm install)的话会 `command not found` 直接退出码 127。先 `npm run build` 让 `dist/cli.js` 存在再跑。
|
|
216
|
+
|
|
217
|
+
### 使用示例
|
|
218
|
+
|
|
219
|
+
装好之后,直接用自然语言跟 AI 助手说就行:
|
|
220
|
+
|
|
221
|
+
> "帮我导入这个商品,推到我的 Shopify 店铺草稿:https://www.aliexpress.com/item/1005006372921430.html"
|
|
222
|
+
|
|
223
|
+
> "导入这个商品,加价 2.5 倍,然后推送:https://www.aliexpress.com/item/1005006372921430.html"
|
|
224
|
+
|
|
225
|
+
> "批量导入这 3 个商品,全部推到店铺:[链接1] [链接2] [链接3]"
|
|
226
|
+
|
|
227
|
+
> "帮我搜一下 5 美金以下的手机壳"
|
|
228
|
+
|
|
229
|
+
> "看下我的导入列表里有什么"
|
|
230
|
+
|
|
231
|
+
> "我已经推送了哪些商品到店铺?"
|
|
232
|
+
|
|
233
|
+
> "把这个商品推到我所有店铺"
|
|
234
|
+
|
|
235
|
+
> "帮我把标题和描述重写一下做 SEO 优化,然后推送"
|
|
236
|
+
|
|
237
|
+
AI 助手会自己判断调用哪个工具,你不需要知道工具名称或参数。
|
|
238
|
+
|
|
239
|
+
### 通过 Smithery 安装
|
|
240
|
+
|
|
241
|
+
```bash
|
|
242
|
+
npx @smithery/cli mcp add @dsersx/product-mcp --client cursor
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
或在 [smithery.ai/server/@dsersx/product-mcp](https://smithery.ai/server/@dsersx/product-mcp) 浏览和安装。
|
|
246
|
+
|
|
247
|
+
### 从源码安装
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
git clone https://github.com/lofder/dsers-mcp-product.git
|
|
251
|
+
cd dsers-mcp-product
|
|
252
|
+
npm install
|
|
253
|
+
npm run build
|
|
254
|
+
npm test
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### 十三个工具
|
|
258
|
+
|
|
259
|
+
| # | 工具 | 干什么的 |
|
|
260
|
+
|---|------|---------|
|
|
261
|
+
| 1 | `dsers_store_discover` | 列出已绑定店铺、配送方式、定价规则及可用能力 |
|
|
262
|
+
| 2 | `dsers_rules_validate` | 空跑定价/内容规则但不真正应用 — 提前抓 schema 错误 |
|
|
263
|
+
| 3 | `dsers_product_import` | 导入商品链接,可顺便应用规则,返回完整预览 |
|
|
264
|
+
| 4 | `dsers_product_preview` | 重新加载已导入商品的预览 — 标题、价格、变体、库存、已生效规则 |
|
|
265
|
+
| 5 | `dsers_product_update_rules` | 对已导入商品修改定价/标题/图片/变体/选项(增量合并,无需重新导入) |
|
|
266
|
+
| 6 | `dsers_product_visibility` | 在"隐藏草稿"和"上架展示"之间切换(推送前) |
|
|
267
|
+
| 7 | `dsers_store_push` | 推到 Shopify / Wix — 单个、批量、或一次扇出到多店铺 |
|
|
268
|
+
| 8 | `dsers_job_status` | 查询推送任务状态(排队 / 进行中 / 完成 / 失败) |
|
|
269
|
+
| 9 | `dsers_product_delete` | 从 DSers 导入列表中永久删除商品(不可恢复,需显式确认) |
|
|
270
|
+
| 10 | `dsers_import_list` | 浏览导入待推送列表,含成本价、售价、库存、加价状态、低库存预警 |
|
|
271
|
+
| 11 | `dsers_my_products` | 列出指定店铺已上架的商品,带供应商 URL 方便重导入 |
|
|
272
|
+
| 12 | `dsers_find_product` | DSers 商品池关键词/图片搜索,结果附带 `import_url` 可一键导入 |
|
|
273
|
+
| 13 | `dsers_sku_remap` | SKU 级替换已上架商品的供应商。精确模式(传 `new_supplier_url`)或发现模式(反向图搜 + 多因子打分)。先 `mode='preview'`,确认后再 `mode='apply'`。需要 `product:mapping` scope |
|
|
274
|
+
|
|
275
|
+
### 推送前安全校验
|
|
276
|
+
|
|
277
|
+
推送到店铺之前,工具会自动帮你检查常见问题:
|
|
278
|
+
|
|
279
|
+
- **直接拦截**(不让推):售价低于进货成本、零售价为 0、所有变体都没库存
|
|
280
|
+
- **警告提醒**(能推,但会提示你):利润率低于 10%、库存少于 5 件、售价低于 1 美金
|
|
281
|
+
|
|
282
|
+
有问题的话,AI 助手会告诉你具体是哪个变体出了什么问题。确定没问题的话可以用 `force_push` 强制推送。
|
|
283
|
+
|
|
284
|
+
### 定价规则冲突检测
|
|
285
|
+
|
|
286
|
+
如果你的 DSers 店铺自己启用了**定价规则**(基础/标准/高级),同时你又通过 MCP 设置了定价规则,推送会被**直接拦截**而不是仅警告。AI 助手会给出两个解决方案:
|
|
287
|
+
|
|
288
|
+
1. 在推送选项中设置 `pricing_rule_behavior='apply_store_pricing_rule'` 接受店铺端的定价规则
|
|
289
|
+
2. 在 DSers 店铺设置中关闭定价规则,使用 MCP 的定价
|
|
290
|
+
|
|
291
|
+
### 四个预设提示
|
|
292
|
+
|
|
293
|
+
MCP 客户端可直接展示给用户的工作流模板:
|
|
294
|
+
|
|
295
|
+
| 提示 | 说明 |
|
|
296
|
+
|------|------|
|
|
297
|
+
| `dsers_workflow_quick-import` | 一键导入单个商品并推送为草稿 |
|
|
298
|
+
| `dsers_workflow_bulk-import` | 批量导入 + 统一定价倍率 |
|
|
299
|
+
| `dsers_workflow_multi-push` | 一个商品推送到所有店铺 |
|
|
300
|
+
| `dsers_workflow_seo-optimize` | 导入后 AI 重写标题和描述做 SEO 优化,再推送 |
|
|
301
|
+
|
|
302
|
+
### 后续计划
|
|
303
|
+
|
|
304
|
+
- 商品池搜索增强 — 分类过滤、URL 反查、商品详情视图
|
|
305
|
+
- 更多店铺平台 — TikTok Shop、Etsy、eBay(凡是 DSers 已接入的)
|
|
306
|
+
- 订单级工具 — 履约状态、物流跟踪、订单同步
|
|
307
|
+
- 远程 MCP refresh-token 支持 — 延长 OAuth 会话有效期,免反复授权
|
|
308
|
+
|
|
309
|
+
有想法或需求?欢迎 [提 issue](https://github.com/lofder/dsers-mcp-product/issues) —— 非常欢迎其他开发者的建议和贡献。
|
|
310
|
+
|
|
311
|
+
### 常见问题
|
|
312
|
+
|
|
313
|
+
**DSers MCP Product 是什么?**
|
|
314
|
+
一个免费开源的 MCP 服务器,让 AI Agent(如 Claude、Cursor)自动完成从速卖通/Alibaba/1688 到 Shopify/Wix 店铺的商品导入全流程。不用手动复制商品数据,用自然语言对话就能操作。
|
|
315
|
+
|
|
316
|
+
**怎么用?**
|
|
317
|
+
在 Cursor 或 Claude Desktop 里输入"导入这个商品,加价 2.5 倍,推送到我的店铺",MCP 服务器自动完成抓取商品数据、应用定价规则、编辑变体、推送到店铺的全部流程。
|
|
318
|
+
|
|
319
|
+
**收费吗?**
|
|
320
|
+
完全免费。项目开源(MIT 协议),你只需要一个免费的 [DSers](https://www.dsers.com/partner/2044332769636515840) 账号和已连接的 Shopify 或 Wix 店铺。
|
|
321
|
+
|
|
322
|
+
**安全吗?需要提供密码吗?**
|
|
323
|
+
不需要。登录采用零密码浏览器认证——你在 DSers 官网登录,工具只接收会话令牌,密码永远不会经过 MCP 服务器。项目在 [SafeSkill](https://safeskill.dev/scan/@lofder/dsers-mcp-product) 安全扫描中获得 92/100 分。
|
|
324
|
+
|
|
325
|
+
**支持哪些 AI 客户端?**
|
|
326
|
+
Cursor、Claude Desktop、Claude Code、Claude Managed Agents、Codex CLI、Gemini CLI、OpenClaw、VS Code Copilot(agent 模式)、Windsurf、Cline、Zed、Continue,以及任何 MCP 兼容客户端。npm 包走 stdio transport,托管的远程服务端走 Streamable HTTP。
|
|
327
|
+
|
|
328
|
+
**应该用远程版还是本地装?**
|
|
329
|
+
如果你的 MCP 客户端支持 Streamable HTTP、不想折腾 Node.js,用**远程版**(`https://ai.silentrillmcp.com/dropshipping/mcp`);如果客户端只认 stdio(部分 Claude Desktop 版本)、想完全离线、或者需要传自定义环境变量,就用**本地 npm 包**。
|
|
330
|
+
|
|
331
|
+
**和 AliDropify、AutoDS 等 Dropshipping 工具有什么区别?**
|
|
332
|
+
大多数 Dropshipping 工具有自己的界面,需要点来点去。DSers MCP Product 完全不同——它直接连接你的 AI Agent,用对话代替点击来自动化工作流。而且完全开源免费,没有订阅分级。
|
|
333
|
+
|
|
334
|
+
**支持哪些商品来源?**
|
|
335
|
+
AliExpress、Alibaba.com、Accio.com(阿里的 AI 选品工具),以及 1688。1688 需要你的 DSers 账号开通 1688 供应商权限:打开 [DSers → 设置 → 供应商](https://app.dsers.com/) 绑定 1688 账号。
|
|
336
|
+
|
|
337
|
+
**用什么货币?**
|
|
338
|
+
AI 助手会用美元显示售价便于阅读,但实际定价按你店铺的本币应用。DSers 会按店铺配置的货币(Shopify / Wix)自动换算。按变体单独定价和固定售价都以店铺本币为准——拿不准的话问 AI 确认一下。
|
|
339
|
+
|
|
340
|
+
**能同时推送到多个店铺吗?**
|
|
341
|
+
可以。`dsers_store_push` 支持一条命令将商品推送到所有已连接的 Shopify 和 Wix 店铺,支持按店铺设置不同的定价和可见性。
|
|
342
|
+
|
|
343
|
+
**能不能跳过浏览器登录、直接写死 token?**
|
|
344
|
+
可以,headless / CI 环境设置 `DSERS_ACCESS_TOKEN`(和可选的 `DSERS_REFRESH_TOKEN`)环境变量即可跳过 OAuth。Token 来自任意机器上跑一次 `login` 后从 `~/.dsers-mcp/session.json` 里拷贝。交互式用户还是建议用 `npx @lofder/dsers-mcp-product login`——更安全,token 自动续期。
|
|
345
|
+
|
|
346
|
+
### 疑难排查
|
|
347
|
+
|
|
348
|
+
**推送返回 `persist_failed` 或 `CODEC` 错误**
|
|
349
|
+
v1.5.7 已修。确认版本是最新:`npm view @lofder/dsers-mcp-product version`。必要时用 `npx -y @lofder/dsers-mcp-product@latest` 重装。
|
|
350
|
+
|
|
351
|
+
**推送被拦截,提示"定价规则冲突"**
|
|
352
|
+
DSers 店铺自己开了定价规则,同时你又通过 MCP 设了定价规则。二选一:要么在推送选项里加 `pricing_rule_behavior='apply_store_pricing_rule'`(采纳店铺端规则),要么在 DSers 设置里关掉定价规则、让 MCP 管定价。详见上面[定价规则冲突检测](#定价规则冲突检测)小节。
|
|
353
|
+
|
|
354
|
+
**1688 链接导入失败,提示"不支持的来源"**
|
|
355
|
+
DSers 账号需要开通 1688 来源授权。去 [DSers 设置 → 供应商](https://app.dsers.com/) 绑定 1688 卖家账号。AliExpress 默认就能用,1688 需要手动开。
|
|
356
|
+
|
|
357
|
+
**`npx @lofder/dsers-mcp-product login` 打开浏览器但卡住**
|
|
358
|
+
登录流程需要 localhost 3001–3003 端口可用(OAuth 回调要用)。如果这几个端口被占(其他 MCP 服务、本地 dev server),先关掉,或者先执行 `PORT=3004` 再跑 login。
|
|
359
|
+
|
|
360
|
+
**远程版用一阵后返回 401**
|
|
361
|
+
OAuth access token 到期了。当前远程版还不自动续期——在 MCP 客户端里断开重连、重新授权就行。refresh token 支持在[后续计划](#后续计划)里。
|
|
362
|
+
|
|
363
|
+
**`npx dsers-mcp-product: command not found`(退出码 127)**
|
|
364
|
+
你在本地源码仓库里直接跑 `npx`,但没装过 npm 包。用 `node dist/cli.js login` 代替。`npx` 命令需要 `npm link` 或真的装过 npm 包才能解析到 binary。`dist/` 不存在的话先 `npm run build`。
|
|
365
|
+
|
|
366
|
+
### 其他版本
|
|
367
|
+
|
|
368
|
+
也提供 [Python 版本](https://github.com/lofder/dsers-mcp-product-py),作为功能对齐的精简子集,适合本地 stdio 部署。主要维护仍然是 TypeScript 版,优先用 TS。
|
|
369
|
+
|
|
370
|
+
### 许可证
|
|
371
|
+
|
|
372
|
+
MIT
|
package/dist/cli.js
CHANGED
|
@@ -155,11 +155,12 @@ async function startServer() {
|
|
|
155
155
|
/* Entrypoint */
|
|
156
156
|
/* ------------------------------------------------------------------ */
|
|
157
157
|
function printHelp() {
|
|
158
|
-
log(
|
|
158
|
+
log(`dsers-mcp-product v${PKG_VERSION} — MCP server for DSers dropshipping product management\n`);
|
|
159
159
|
log("Usage:");
|
|
160
160
|
log(" npx @lofder/dsers-mcp-product Start the MCP server (stdio)");
|
|
161
161
|
log(" npx @lofder/dsers-mcp-product login Authenticate with DSers via OAuth");
|
|
162
162
|
log(" npx @lofder/dsers-mcp-product logout Clear saved session");
|
|
163
|
+
log(" npx @lofder/dsers-mcp-product --version Print version and exit");
|
|
163
164
|
log(" npx @lofder/dsers-mcp-product --help Show this help message\n");
|
|
164
165
|
log("For more info: https://github.com/lofder/dsers-mcp-product");
|
|
165
166
|
}
|
|
@@ -167,6 +168,9 @@ const cmd = process.argv[2]?.toLowerCase();
|
|
|
167
168
|
if (cmd === "--help" || cmd === "-h" || cmd === "help") {
|
|
168
169
|
printHelp();
|
|
169
170
|
}
|
|
171
|
+
else if (cmd === "--version" || cmd === "-v" || cmd === "version") {
|
|
172
|
+
process.stdout.write(`${PKG_VERSION}\n`);
|
|
173
|
+
}
|
|
170
174
|
else if (cmd === "login") {
|
|
171
175
|
handleLogin().catch((e) => {
|
|
172
176
|
log(`Error: ${e.message ?? e}`);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lofder/dsers-mcp-product",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"mcpName": "io.github.lofder/dsers-mcp-product",
|
|
6
6
|
"description": "Dropshipping automation with AI — import AliExpress/Alibaba products to Shopify & Wix via DSers. Open-source MCP server.",
|