Dropshipping & DSers Agent MCP
π The Professional Dropshipping MCP Server for DSers Automation.
What it can do
- Dsers Store Discover: Retrieve available stores and supported rules for the connected DSers account. Call this first β the response contains store IDs and configuration needed by all subsequent operat
- Dsers Rules Validate: 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
- Dsers Product Import: 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_ur
What data it sees
Do you need an account
An API key from the service settings is required
π The Professional Dropshipping MCP Server for DSers Automation.
Import products from AliExpress, 1688, and Alibaba directly to Shopify or Wix with one AI command. Designed for professional e-commerce operations.
Key Features:
β’ Multi-Source Import: Seamlessly sync from AliExpress, Alibaba, and 1688.
β’ Bulk Variant Editing: Manage pricing rules and SKU filters effortlessly.
β’ Smart Content: Automatically clean titles and descriptions for better SEO.
β’ Multi-Store Push: Push one product to multiple Shopify and Wix stores at once.
β’ AI-Driven: Built for next-gen dropshipping workflows (OpenClaw, Cursor, Claude, Windsurf).
Server tool list (9)
Raw names from tools/list. Only developers need these.
| dsers_store_discover | Retrieve 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. |
| dsers_rules_validate | 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). |
| dsers_product_import | 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. |
| dsers_product_preview | 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. |
| dsers_product_update_rules | 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. |
| dsers_product_visibility | 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. |
| dsers_store_push | 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. |
| dsers_job_status | 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. |
| dsers_product_delete | 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. |