配送协议服务器

一个连接DoorDash Drive API与MCP兼容客户端的模型上下文协议(MCP)服务器,提供配送报价、创建配送、查询状态等功能。

  • by amannm
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 amannm/doordash-mcp

使用说明

DoorDash MCP服务器

最小模型上下文协议(MCP)服务器,将DoorDash Drive API与兼容MCP的客户端桥接。

特性

  • 创建_交付_报价:获取取货/卸货地点的交货报价
  • 创建_交付:创建新的交付请求
  • get_delivery:检查现有交付的状态
  • 取消交货:取消待处理的交付
  • 接受_交付_报价:接受报价,并可选择包含提示
  • update_deliver:更新交货地址、时间或其他详细信息

先决条件

  1. DoorDash Drive API访问权限(联系Doorash寻求业务合作伙伴关系)
  2. Node.js 12+
  3. 所需的环境变量:
    • DOORDASH_DEVELOPER_ID
    • DOORDASH_KEY_ID
    • DOORDASH_SIGNING_SECRET

安装

git clone https://github.com/amannm/doordash-mcp.git
cd doordash-mcp
npm install

用法

作为MCP服务器

{
  "mcpServers": {
    "doordash": {
      "command": "node",
      "args": ["/path/to/doordash-mcp/index.js"],
      "env": {
        "DOORDASH_DEVELOPER_ID": "your_developer_id",
        "DOORDASH_KEY_ID": "your_key_id", 
        "DOORDASH_SIGNING_SECRET": "your_signing_secret"
      }
    }
  }
}

直接使用

export DOORDASH_DEVELOPER_ID=your_developer_id
export DOORDASH_KEY_ID=your_key_id
export DOORDASH_SIGNING_SECRET=your_signing_secret

node index.js

api参考

创建_交付_报价

在不创建实际交付的情况下获取交付报价。

参数:

  • external_delivery_id (必填):唯一标识符
  • pickup_address (必填):完整取件地址
  • dropoff_address (必填):完整投递地址
  • pickup_business_name:取件公司名称
  • pickup_phone_number:取件联系电话
  • pickup_instructions:特殊提货说明
  • dropoff_business_name:还车业务名称
  • dropoff_phone_number:还车联系电话
  • dropoff_instructions:特殊投放说明
  • order_value:订单价值(美分)

创建_交付

创建实际的交货请求。

参数: 同 create_delivery_quote

get_delivery

检查现有交付的状态。

参数:

  • external_delivery_id (必填):要检查的交货ID

取消交货

取消待处理的交货。

参数:

  • external_delivery_id (必填):要取消的交货ID

建筑

此MCP服务器充当最小网桥:

MCP Client <-> DoorDash MCP Server <-> DoorDash SDK <-> DoorDash Drive API

该实现最大限度地减少了MCP协议和DoorDash SDK之间的转换,以最少的处理传递请求。

许可证

麻省理工学院