# Dada Now Delivery MCP

> Dada Now Delivery integrates Dada Now's on-demand local logistics network directly into your AI client. Your agent can schedule full deliveries, calculate real-time routing fees, manage pickup hubs, and track order status—all from natural conversation. It gives non-technical staff the ability to coordinate complex, multi-step delivery workflows.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** dada, dada-now, delivery, instant-delivery, logistics, shipping

## Description

Your AI model suddenly acts like a field operations manager for local couriers. Instead of logging into a separate portal or calling an agent, your client handles logistics directly. You can tell it where goods need to go and instantly get an estimated cost using the fee calculator before actually creating the order. Need to update a pickup point? Just ask it to register a new shop hub. It manages everything from scheduling deliveries to adding tips for riders, all while maintaining contact with the live network data. Because this MCP sits in the Vinkius catalog, your agent stays connected no matter which AI client you use—Claude, Cursor, or Windsurf. This gives operations teams immediate control over complex delivery processes without needing to write a single line of integration code.

## Tools

### add_complaint
Sends a formal complaint regarding a specific delivery driver's performance.

### add_order
Creates and dispatches a brand new Dada local delivery order.

### add_shop
Registers a completely new physical location or shop to serve as a pickup hub.

### add_tip
Adds a specific monetary tip payment to an active delivery order.

### cancel_order
Immediately cancels a scheduled or dispatched delivery run.

### get_city_code
Retrieves the necessary Dada City Codes required to process any order request.

### query_order_fee
Estimates and returns the total delivery cost before an actual order is placed.

### query_order_status
Gets the current, live tracking status of any active shipment.

### readd_order
Reactivates a delivery order that has expired or failed to complete its route.

### update_shop
Modifies the details for an existing, registered shop or pickup station.

## Prompt Examples

**Prompt:** 
```
Estimate the cost to deliver order JSON object `...` using Dada.
```

**Response:** 
```
I requested the quote from the `query_order_fee` API. The estimated delivery toll is ¥ 12.00. Are we proceeding to dispatch?
```

**Prompt:** 
```
Add a new store pickup point named 'Central Hub' at origin 'Shop1'.
```

**Response:** 
```
The shop information has been effectively updated on the Dada Network API.
```

## Capabilities

### Initiate and manage deliveries
Schedule new orders for local pickup or drop-off, track existing shipments live, and cancel dispatches when needed.

### Calculate logistics costs
Estimate the full delivery fee before committing to an order by querying the route data.

### Administer store hubs
Register new pickup locations or modify details for existing partner shops in the network.

### Handle operational feedback
Automatically add monetary tips to orders or submit formal complaints about driver performance.

## Use Cases

### New Client Onboarding
A sales rep speaks to a prospective client and needs an instant quote. The agent calls the tool first to run `query_order_fee`, giving the prospect a precise price estimate immediately, letting them know exactly what's involved before sending any formal paperwork.

### Dispute Resolution
A customer complains about late delivery. The agent doesn't just apologize; it uses `query_order_status` to check the real-time location and then uses `add_complaint` to formally report the delay, making the complaint actionable.

### Network Expansion
The operations team needs a new pickup point in the district center. Instead of filling out a multi-page developer form, they simply tell their agent to use `add_shop` with the new address and name, which registers it instantly.

### Handling Failed Deliveries
An order fails mid-route. Instead of waiting for a human operator, the agent spots the failure status and runs `readd_order`, bringing the shipment back into active dispatch without manual intervention.

## Benefits

- You can dispatch couriers directly from a customer chat. No need for the customer to submit a web form; your agent handles `add_order` immediately.
- Before committing an order, use `query_order_fee` to calculate exact costs and give the user immediate price transparency. This prevents bad orders right out of the gate.
- The system supports dynamic operational adjustments. If there's a delay, your AI can automatically add a tip using `add_tip` or file a formal complaint via `add_complaint`.
- Need to expand service areas? You can tell your agent to register new pickup points using `add_shop`, making the process conversational instead of manual form filling.
- It gives non-technical staff control over core logistics. They can manage everything from tracking status with `query_order_status` to re-activating a failed shipment with `readd_order`.

## How It Works

The bottom line is, you pass credentials once, and your entire AI workflow can access complex, secure logistics functions immediately.

1. Sign up for the Dada Now Developer Program and gather your App Key, Secret, and Source ID.
2. Add those credentials safely into Vinkius. The platform handles the complex signing rules so your AI client never sees cryptography details.
3. Your AI agent uses the tools to execute logistics actions—like checking fees or adding a new order—and gets real-time responses back.

## Frequently Asked Questions

**How do I use the add_order tool with Dada Now Delivery?**
You tell your agent to create an order. The agent will first need necessary location codes, so it may call `get_city_code` before running `add_order` to ensure all parameters are correct.

**Can I update a shop using the update_shop tool?**
Yes. The `update_shop` tool lets you modify existing station details, so you don't have to re-register the entire location if only one detail changed.

**What is the difference between query_order_fee and add_order?**
`query_order_fee` just gives an estimate—it reads data. `add_order` actually sends the dispatch request to the network, creating a live order.

**How do I handle tips or complaints after delivery?**
For post-delivery actions, use `add_tip` if you want to add money to an existing order, or use `add_complaint` to file a formal report about the driver.

**How do I use the `add_shop` tool if my pickup location needs to be registered first?**
You must run `add_shop` initially, providing all required hub details. Once that shop is successfully registered, your AI agent can reference its new ID for subsequent deliveries or updates.

**My delivery failed or expired; how does the `readd_order` tool help me resume it?**
The `readd_order` function lets you resubmit an order that timed out, was canceled by the driver, or otherwise failed. You just need the original dispatch details to get the process moving again.

**Before I use `add_order`, should I check city codes with the `get_city_code` tool?**
Yes. Running `get_city_code` first ensures your order payload uses valid geographical identifiers. This prevents common submission errors related to location mapping and routing.

**How do I get real-time location updates using the `query_order_status` tool?**
You pass the specific order ID to this function, and it returns the current live status of the dispatch. Your AI agent can then surface this tracking information directly to the user.

**Is the MD5 signature abstracted?**
Yes! The parameters like `timestamp`, `app_key`, `v`, and `format` are automatically concatenated. The backend performs the `MD5` check and injects the `signature` transparently to the LLM context, yielding flawless delivery logs.