Dropshipping MCP Dsers
@lofder
About Dropshipping MCP Dsers
AI-powered dropshipping automation: import products from AliExpress, Alibaba, and Accio.com to Shopify & Wix via DSers. 9 tools + 4 prompts for bulk import, pricing rules, SEO optimization, safety checks, and multi-store push. Zero-password login — your credentials never pass thr
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"dsers-mcp-product": {
"command": "npx",
"args": [
"-y",
"@lofder/dsers-mcp-product"
]
}
}
}Tools
13Retrieve available stores and supported rules for the connected DSers account. Call this first — the response contains store IDs and configuration needed by all subsequent operations. Returns: stores (each with id, name, platform, ship[]), rules (pricing modes, content, images). ae_expired means AliExpress re-authorization is needed but does NOT block imports — proceed normally. plan_issue only appears if the DSers subscription has a real problem (expired, suspended). After calling this tool, proceed to the next step (import, preview, etc.) — do NOT retry discover.
Check and normalize a rules object against the provider's capabilities before importing. Use this to verify pricing, content, and image rules are valid and see exactly which ones will be applied. Returns: effective_rules_snapshot (what will actually be applied), warnings (adjustments made), errors (blocking issues that must be fixed before calling dsers_product_import). Extreme pricing values (multiplier >100x, fixed_markup >$500, fixed_price >$10,000) produce warnings. HTML description fields are validated against script injection.
Import product(s) from supplier URL(s) into the DSers import list and return a preview. Supports AliExpress, Alibaba, and Accio.com URLs. Provide source_url (single) or source_urls_json (batch). Optionally apply rules at import time via rules_json or flat params. EXPIRED/LOST JOB_ID: Re-import with source_url — DSers finds the existing draft (no duplicate). To UPDATE rules on an existing import, use dsers_product_update_rules instead. SINGLE RESPONSE: compact preview with all variants [name, sell, qty], price_summary, active_rules. BATCH RESPONSE: summary mode (default) returns job_id + key metadata per product (~100 tokens each). Use batch_detail='full' for complete previews. Use dsers_product_preview for individual details.
Reload preview for an import job. Two modes: compact (default) returns [name, sell, qty] for ALL variants — lightweight. full returns [name, sell, compare_at, cost, qty, supplier_qty] for 3 variants by default. Always includes price_summary: {sell:{min,max}, cost:{min,max}, zero_stock_count, low_stock_count, variants_count}. Key fields: sell_price (store listing price, $), cost (supplier price, $), compare_at_price (strikethrough, $). options: array of {name, values[], values_count} — values truncated to 10 by default, set show_all_options=true for full list. active_rules: currently applied rules (always present, {} if none). Use variant_detail='full' when agent needs compare_at or cost columns. Set include_images=true to add per-variant image_url and per-option-value imgUrl — useful for visual SKU matching across suppliers.
Update pricing, content, images, or variant rules on an already-imported product. Rules are merged incrementally: pricing/images/variant_overrides replace by family; content merges by field (set title_prefix without losing description). To clear a content field, send it as empty string or null (e.g. title_prefix:''). To remove an entire family, pass null (e.g. rules_json='{"pricing":null}'). option_edits are always fully replaced (ordered operations, not mergeable). OPTION_EDITS actions: rename_option {action,option_name,new_name} — rename e.g. Color→Style. rename_value {action,option_name,value_name,new_name} — rename a value within an option. remove_value {action,option_name,value_name} — remove value and DELETE all variants with that value. remove_option {action,option_name} — remove entire option dimension. RESPONSE: compact preview with active_rules showing all currently applied rules. If rule persistence to DSers backend fails, job status is set to persist_failed and subsequent push will be blocked. Retry the rule update or re-import the product.
Change the visibility mode of a prepared job before pushing it to the store. Call this between dsers_product_import and dsers_store_push to switch between draft and published. Returns: job_id, status, visibility_mode.
Push one or more prepared import drafts to the connected Shopify or Wix store(s). SAFETY: Automatic pre-push validation checks pricing (blocks if sell price < cost or $0) and stock (blocks if all variants have zero inventory). Warnings are raised for low margin (<10%), low stock (<5 units), or very low price (<$1). If blocked, fix pricing rules or use force_push=true ONLY after explaining the risk to the user. Three modes: (1) Single push — provide job_id + target_store. (2) Batch push — provide job_ids_json with an array of job IDs or objects; takes priority over job_id. (3) Multi-store push — provide job_id + target_stores_json to push one product to multiple stores. SAFETY RESPONSE: If checks fail, response includes 'blocked' (array of reasons push was rejected — must fix before retrying) and/or 'warnings' (array of risk alerts — push proceeds but user should be informed). blocked = hard stop (e.g. sell below cost), warnings = soft alert (e.g. low margin). On success, returns per-job: job_id, status, target_store, visibility_applied, push_options_applied, job_summary, warnings.
Check the current status of an import or push job. Status lifecycle: preview_ready → push_requested → completed or failed. Returns: job_id, status, target_store, push_status (if pushed), warnings.
Permanently delete a product from the DSers import list. IRREVERSIBLE — the product cannot be recovered after deletion. Requires explicit confirmation (confirm=true) to execute. If called without confirm=true, returns a confirmation prompt — show this to the user. SCOPE: Only removes the product from DSers import list (pre-push staging area). Products already pushed to Shopify/Wix stores are NOT affected — to remove a store listing, use the Shopify/Wix admin directly. BUSINESS CONTEXT: Deleting from import list means losing the supplier mapping (link between the store product and the AliExpress/Alibaba supplier). If the user wants to re-import later, they will need the original supplier URL. AGENT PROTOCOL: Before calling with confirm=true, always: 1) Show the user the product title and supplier URL. 2) Warn that this cannot be undone. 3) Get explicit user consent (e.g. 'yes, delete it'). Never set confirm=true without the user's explicit approval.
Browse the DSers import list with enriched variant data. Returns per item: import_item_id, title, image, sell_price_range, cost_range, currency, variant_count, total_stock, push_status, supplier, source_url, tags. no_markup=true when sell equals cost (no pricing rule applied). low_stock_warning counts variants with stock <= 5. Use import_item_id with dsers_product_preview for full details or dsers_product_delete to remove. This is the staging area before push. To see products already on your store, use dsers_my_products. To search for new products, use dsers_find_product. Note: DSers API returns a minimum of 20 items per page. If page_size < 20, results are truncated client-side.
Browse products already pushed to a store. Requires store_id (from dsers_store_discover). Returns compact items with: dsers_product_id, title, image, sell_price (min/max in $), cost (min/max in $), status (Draft/Active), supplier, supplier_url. Prices are in dollars (converted from cents). Shows products already pushed to a specific store. To see products waiting to be pushed, use dsers_import_list. Note: DSers API returns a minimum of 20 items per page. If page_size < 20, results are truncated client-side.
Search the DSers product pool (AliExpress supplier catalog) for products to import by keyword or by image URL (visual search). Returns products that can be directly imported via dsers_product_import using the import_url field. Use search_after from the response to get the next page of results. Results include import_url for direct use with dsers_product_import. After importing, use dsers_import_list to browse, then dsers_store_push to push. Note: results may overlap between pages — deduplicate by product_id if needed. Empty or whitespace-only keywords are rejected. When results exceed the limit (especially for image search), response includes truncated_from showing the original count before truncation.
Replace the supplier on a store product with SKU-level variant matching. DEFAULTS TO mode='preview' which is read-only and safe to call without confirmation — only mode='apply' actually writes to DSers. TWO discovery paths: (A) STRICT — caller provides new_supplier_url and the tool swaps to that exact supplier; (B) DISCOVER — omit new_supplier_url and the tool reverse-image-searches the DSers pool using seed images from the current product, ranks candidates via sku-matcher + multi-factor scoring, and auto-picks the best replacement. Use discover mode when the current supplier is broken/out-of-stock and you don't have a specific replacement URL in hand. WORKFLOW: (1) Call with mode='preview' to see the match plan, scoreBreakdown, tier-isolated top_candidates and the planned pool[] history additions — nothing is written. (2) Review the diffs, then call again with mode='apply' and the same params to persist. auto_confidence threshold defaults to 70 (conservative). Lower at your own risk — DSers does NOT validate supplier payload correctness; data errors only surface at order fulfillment time. Returns: path (A_strict or B_discover), summary (swapped/kept_old/unmatched/skipped counts), mapping_type, diffs (per-variant decision + before/after), discovery.top_candidates (discover mode only), pool_additions (PoolEntry[] that apply will append to mapping.pool[] as history), warnings, errors. When applied: also returns process_status from DSers post-write polling. Requires the product:mapping OAuth scope. Get store_id from dsers_store_discover first.
Overview
What is Dropshipping MCP Dsers?
Dropshipping MCP Dsers is an MCP server that integrates with the DSers dropshipping platform to import products from AliExpress, Alibaba, and Accio.com, manage pricing rules, and push products to Shopify and Wix stores via AI-driven workflows. It is designed for dropshippers using DSers.
How to use Dropshipping MCP Dsers?
Install and log in once with npx @lofder/dsers-mcp-product login, then add the server to your MCP client config (no credentials needed). After setup, tell your AI a command like “Import this product and push to my store: [URL]” to trigger one of the four built-in prompts.
Key features of Dropshipping MCP Dsers
- One-click import from AliExpress, Alibaba, or Accio.com
- Pricing rules: markup multiplier, fixed markup, compare-at/sale prices
- Batch import multiple products from a list of URLs
- Multi-store push to all Shopify and Wix stores at once
- Pre-push safety checks block below-cost pricing, zero price, zero stock
- Pricing rule conflict detection with DSers store-level rules
- AI-driven SEO optimization of title and description before pushing
- Zero-password login — credentials never touch the tool
Use cases of Dropshipping MCP Dsers
- Quickly import a single AliExpress product and push it as a draft to a connected store
- Batch import dozens of products with a consistent markup multiplier
- Push one product to multiple Shopify and Wix stores simultaneously
- Import a product, let AI rewrite its title and description for SEO, then push live
- Safely test pricing rules and product titles before applying them to any store
FAQ from Dropshipping MCP Dsers
Which e‑commerce platforms are supported?
Shopify and Wix stores connected to your DSers account are supported.
How does login work?
Login is browser‑based and requires no password input to the tool. Run npx @lofder/dsers-mcp-product login once — credentials never reach the server.
What pricing rules can I set?
You can set a markup multiplier (e.g., 2.5x), a fixed markup (e.g., +$5), and configure compare‑at / sale prices.
Can I import multiple products at once?
Yes. Use the batch import tool (dsers_product_import with a list of URLs) or the bulk‑import workflow prompt.
Are there safety checks before pushing?
Yes. The server blocks pushes that would result in below‑cost pricing, zero price, or zero stock, and detects conflicts between MCP rules and DSers store‑level pricing rules.
Frequently asked questions
Which e‑commerce platforms are supported?
Shopify and Wix stores connected to your DSers account are supported.
How does login work?
Login is browser‑based and requires no password input to the tool. Run `npx @lofder/dsers-mcp-product login` once — credentials never reach the server.
What pricing rules can I set?
You can set a markup multiplier (e.g., 2.5x), a fixed markup (e.g., +$5), and configure compare‑at / sale prices.
Can I import multiple products at once?
Yes. Use the batch import tool (`dsers_product_import` with a list of URLs) or the bulk‑import workflow prompt.
Are there safety checks before pushing?
Yes. The server blocks pushes that would result in below‑cost pricing, zero price, or zero stock, and detects conflicts between MCP rules and DSers store‑level pricing rules.
Basic information
More Other MCP servers

DeepMark
DeepMark helps teachers deliver rapid, consistent marking with meaningful feedback for every student — in a fraction of the time. What once took a week, now takes one free period.
Codelf
unbugA search tool helps dev to solve the naming things problem.

Figs, Relationship Expert
Figs O'Sullivan, LMFTCouples therapist Figs O'Sullivan (LMFT, 17 years, endorsed by Sue Johnson, creator of EFT) inside your AI. Ask relationship questions answered from his clinical writing, name the pattern in a fight, get a three-step rep
Inbox Zero AI
elie222The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
FastMCP v2 🚀
jlowin🚀 The fast, Pythonic way to build MCP servers and clients.
Comments