# Dada Now / 达达 MCP MCP

> Dada Now / 达达 connects your agent directly to China's massive on-demand delivery network. You can manage entire local logistics operations—from registering new shops to tracking couriers in real time and calculating dynamic shipping fees—all without touching a developer portal.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** on-demand-delivery, courier-tracking, logistics-management, order-fulfillment, last-mile-delivery

## Description

This MCP lets your AI client act like an actual dispatch coordinator for local deliveries. Instead of logging into separate dashboards or wrestling with complex forms, you just talk to your agent. Your agent handles everything from placing a new delivery order to checking the status of existing shipments and even figuring out if a shop station needs updating.

It's built for people running e-commerce fulfillment or managing local retail supply chains in China. You get accurate, real-time data—like precise fee estimates based on distance and cargo size, or the live contact info for an assigned courier. Because Vinkius hosts this MCP, you connect your preferred AI client once to access Dada Now's full operational capabilities. It gives your agent one single source of truth for complex local movements.

## Tools

### add_shop
Registers a new shop station location in the system.

### cancel_order
Cancels an existing delivery order and logs the reason for cancellation.

### create_order
Places a new on-demand delivery order with specific details.

### get_order_detail
Retrieves the current status and history for any given order ID.

### get_shop_detail
Fetches detailed information about a specific shop station or location.

### list_supported_cities
Provides a list of all cities supported by the delivery platform and their required codes.

### query_delivery_fee
Calculates an estimated fee for a specific delivery route based on distance and value.

### update_shop_info
Modifies metadata, like contact details or operating hours, for an existing shop station.

## Prompt Examples

**Prompt:** 
```
Calculate the delivery fee for a order from shop 'S001' to '123 Park Ave, Shanghai'.
```

**Response:** 
```
I've calculated the delivery fee. For a 2km trip with a 50 CNY cargo value, the estimated fee is 8.50 CNY. Would you like to proceed and place this order now?
```

**Prompt:** 
```
Check the status of Dada order 'ORD88210934'.
```

**Response:** 
```
The status for order `ORD88210934` is 'Transporter Accepted'. The courier, 'Wang Ming', is currently at the shop picking up the items. I'll alert you once he starts the delivery.
```

**Prompt:** 
```
Show me the details for shop station 'SH_STORE_01'.
```

**Response:** 
```
I've retrieved the details for shop `SH_STORE_01`. It is currently 'Online' and operating in the Jing'an District of Shanghai. The contact person is 'Zhang Wei'. Would you like me to update any contact information for this station?
```

## Capabilities

### Manage Shop Locations
Register new shop stations and update existing metadata for all your locations.

### Handle Order Lifecycles
Place new delivery orders, check their real-time status, or cancel them with a recorded reason.

### Estimate Shipping Costs
Calculate the exact delivery fee required for any route based on distance and cargo value.

### Track Deliveries Live
Monitor a courier's progress and get their current contact information while an order is out for delivery.

## Use Cases

### A new shop needs to open up.
The Operations Manager tells their agent, 'We're opening a station at X.' The agent uses add_shop, registers the details, and confirms the location is ready for deliveries. They then use get_shop_detail later to confirm the contact person.

### Urgent order tracking needed.
A customer calls about an item that's late. The agent uses get_order_detail immediately, finds the status is 'Transporter Accepted,' and reports back who the courier is and when they started moving.

### Budgeting for a new route.
Before committing to fulfilling an order, the team asks the agent to query_delivery_fee. The agent provides the cost estimate instantly, preventing budget overruns before create_order is even called.

## Benefits

- Stop guessing delivery costs. Use query_delivery_fee to get real-time fee estimates for any route, so you know the budget before placing an order.
- Never lose track of a shipment again. The get_order_detail tool gives instant status updates and courier tracking info right in your chat window.
- Scale your network without calling support. You can register new shop stations using add_shop or update their details with update_shop_info, all through natural conversation.
- Handle exceptions smoothly. If a shipment fails, you can cancel_order and the agent tracks why it was canceled—critical for accountability.
- Build reliable workflows. Your AI client connects to this MCP via Vinkius, giving you one place to manage everything from creating an order (create_order) to listing all possible cities (list_supported_cities).

## How It Works

The bottom line is that your agent becomes your dedicated, always-on dispatch team, handling data requests instantly.

1. Subscribe to this MCP, providing your Dada App Key, App Secret, and Source ID (Merchant ID).
2. Connect your agent through Claude, Cursor, or any compatible client.
3. Start giving natural language commands—like 'What is the fee for a trip from Shop A?' or 'Create an order for item X.'—and get real-time logistics responses.

## Frequently Asked Questions

**How do I find out if a city is supported using list_supported_cities?**
You simply ask the agent to run list_supported_cities. It gives you the full list of cities and their unique codes, so you never have to guess the proper format for an address.

**Can I change a shop's operating hours using update_shop_info?**
Yes, that’s what it does. You tell your agent which shop ID needs updating and what new metadata to use, and the tool applies the changes directly.

**What is the difference between create_order and get_order_detail?**
create_order places the actual order into the system. get_order_detail reads that order back out to tell you what happened with it later on.

**I need to place an order for a new shop location.**
You should use add_shop first. This registers the station in the system, giving you the necessary ID before you can use that location to create any orders or get details.

**What do I need to know about using the `add_shop` tool to register a new station?**
You must provide the complete shop's metadata when using `add_shop`. This includes location details, contact information, and operational status. The agent registers this data within your connected Dada account.

**How do I use the `query_delivery_fee` tool to calculate an estimate?**
To get a fee quote, specify the origin shop ID, destination address, and estimated cargo value. The tool returns a real-time cost based on distance and package weight.

**When should I use `cancel_order`, and what information does it require?**
Use `cancel_order` when an order needs to be stopped mid-process. You must supply the specific Order ID and a mandatory reason for cancellation.

**If I only have a Shop ID, how do I retrieve all of its metadata using `get_shop_detail`?**
Simply provide the unique Shop ID to the agent. It retrieves all current details, such as contact persons and operational status, instantly.

**How do I find my Dada App Key, Secret, and Source ID?**
Log in to the [Dada Developer Portal](https://newopen.imdada.cn/), register your application to get the App Key and App Secret. Your Source ID (Merchant ID) is visible in your merchant account profile after registration.

**What is the 'origin_shop_id'?**
The `origin_shop_id` is a custom unique identifier you define for your shop when adding it to Dada. It should match the ID you use in your own system to coordinate operations between platforms.

**Can I query delivery prices before placing an order?**
Yes! Use the `query_delivery_fee` tool to calculate the cost. If you're happy with the price, you can immediately use the returned `deliveryNo` with the `create_order_after_query` tool to confirm the delivery.