关于 dashpilot-mcp
dashpilot-mcp 是面向使用 DoorDash Drive 的餐馆和商店的 MCP 服务,可报价、派送、预约并追踪配送。Drive 凭据和 JWT 在本机处理,派送等重要操作须经明确确认。
主要功能
- 01查询配送费、税费和预计时间
- 02派送单笔或批量订单
- 03预约单笔或错峰批量配送
- 04追踪状态、Dasher 和预计时间
- 05更新小费或说明并取消配送
适用场景
- 01派送前核算订单费用
- 02预约餐饮配送或开业活动
- 03追踪配送并分享跟踪链接
MCP 相关
它向 MCP 客户端提供 DoorDash Drive 配送操作,以及 DashPilot Cloud 的预约和账户工具。工具注释区分只读操作与需要确认的操作。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx doordash-dashpilot-mcpDASHPILOT_API_URLDashPilot Cloud service endpoint — defaults to the hosted instance; set only for local developmentDASHPILOT_API_KEY密钥Install key issued by DashPilot Cloud when you register the installDASHPILOT_DRIVE_DEVELOPER_IDDeveloper ID from the DoorDash Developer Portal (sandbox keys work out of the box)DASHPILOT_DRIVE_KEY_ID密钥Key ID from the DoorDash Developer PortalDASHPILOT_DRIVE_KEY密钥Drive signing secret from the DoorDash Developer Portal — used only on this machine to sign short-lived JWTsDASHPILOT_DRIVE_ROUTINGmanaged (default) or manual — whether the config's routing block may switch this install between DoorDash's own sandbox and production hosts本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
17收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
doordash-dashpilot-mcp
为 AI Agent 提供 DoorDash Drive 自动化:报价配送、调度 Dashers、追踪实时状态,并安排从单次餐饮配送到整场新品发布之夜的各种活动——适用于使用 DoorDash Drive 提供配送服务的餐厅和商店,所有操作都可通过 IDE 或 Agent 客户端完成。
你可以询问:“在 DoorDash 上安排我的餐厅开业活动——整个晚上配送 12 单”,Agent 就会规划整场活动,向你展示包含预估费用的完整方案,并且只有在你确认后才会安排配送。
非官方项目。 与 DoorDash, Inc. 无关联、未获其认可,也不受其控制。DashPilot 是轻量级调度工具:它使用你企业的 Drive 访问密钥调用 Drive API。配送由 DoorDash 完成,费用由 DoorDash 计入你的开发者账户;DashPilot 不处理账单,也绝不经手资金——它只是一个即用即弃的工具,而不是企业需要依赖的平台。
MCP 会在本地为 Drive 签署 JWT,并直接调用 DoorDash 的接口来获取报价、调度配送、追踪状态、更新和取消订单。它生成的令牌只会发送到 DoorDash,不会发送到其他任何地方。DashPilot Cloud 只会接收 (a) 用于更新运营看板的使用情况报告,以及 (b) 针对已安排的配送接收的未签名载荷——配送到期时,本软件包会获取到期队列,在此处生成一个新的 60 秒 JWT,并直接调度配送。
安装
需要 Python ≥ 3.11。使用 uv:
{
"mcpServers": {
"dashpilot": {
"command": "uvx",
"args": ["doordash-dashpilot-mcp"],
"env": {
"DASHPILOT_API_URL": "https://dashpilot6de8ccea-dashpilot.functions.fnc.fr-par.scw.cloud",
"DASHPILOT_API_KEY": "dp_your_issued_key"
}
}
}
}
然后将 Drive 凭据放入项目目录中的 .env 文件(软件包启动时会读取该文件;请像往常一样避免将其纳入版本控制):
# .env
DASHPILOT_DRIVE_DEVELOPER_ID=dd_dev_…
DASHPILOT_DRIVE_KEY_ID=dd_key_…
DASHPILOT_DRIVE_KEY=…
DASHPILOT_DRIVE_BASE_URL=http://localhost:8790/drive-sim/drive/v2 # local dev only
DASHPILOT_API_URL— DashPilot Cloud 服务。默认使用托管实例(https://dashpilot6de8ccea-dashpilot.functions.fnc.fr-par.scw.cloud);若要使用本地开发容器,请将其指向http://localhost:8790。DASHPILOT_API_KEY— 安装密钥。向 DashPilot Cloud 注册时会签发(POST /v1/installs/register),并且只会完整显示一次——请妥善保存;服务器只保留其哈希值。DASHPILOT_DRIVE_*— 从 DoorDash Developer Portal 获取的 Drive 访问密钥(沙盒密钥开箱即用)。用于在本机签署 JWT。密钥保存在.env中,而非 MCP 客户端配置中,因此无需将密钥重复写入你同步的每个客户端配置文件。DASHPILOT_DRIVE_BASE_URL— 初始 Drive 端点(默认指向真实的 Drive API;若要在本地开发时使用随附的模拟器:http://localhost:8790/drive-sim/drive/v2)。DASHPILOT_DRIVE_ROUTING—managed(默认)或manual。DoorDash 有两个主机(沙盒和生产环境);首次获取配置后,软件包会使用 DashPilot Cloud 为你的安装记录的环境——测试时使用沙盒,上线时切换到生产环境,无需修改环境变量。check_drive_connection会报告你当前使用的环境。托管模式委托的是端点选择,且选择范围受到限制:配置只能在 DoorDash 自有的沙盒和生产环境主机(或随附的本地回环模拟器)之间切换此安装——任何指向其他位置的路由配置都会被忽略,因此配置变更无法将已签名的 Drive 请求指向 DoorDash 不运营的主机。如果安装时不希望进行任何委托,可以设置manual,将端点固定为初始 URL。
首次运行时,请询问你的 Agent:“检查我的 Drive 连接”——它会通过一次无副作用的签名调用验证密钥,并告知你当前使用的环境。
自主权模型:只有在你同意后,资金才会流动
Agent 是规划者,而不是花钱者。MCP 协议会为每个工具添加注释(readOnlyHint / destructiveHint),这样你的客户端可以自动批准安全的工具,并始终就其他工具征求你的确认:
| Agent 可独立执行 | Agent 需要你明确确认的操作 |
|---|---|
| 报价(费用、税费、预计送达时间)——可随时查询报价 | 派单任何内容(accept_quote、dispatch_delivery、batch_dispatch) |
实时追踪、运营看板、账户、设置、诊断信息同步(sync_diagnostics) | 更改小费和取消订单(update_delivery、cancel_delivery) |
| 规划活动并向你展示完整计划 | 安排派送(schedule_delivery、schedule_batch)——安排派送不会立即动用资金,但会提交一项未来的派单任务,轮询器会使用你的密钥执行该任务 |
上传诊断信息(generate_support_bundle)——回执会列出发送的部分(部分名称和总大小,不包含字段内容) |
dispatch_due_deliveries 是已确认计划的执行器:它执行的所有任务都已在安排时确认,因此无需再次确认。定期运行它,到期任务便会自动执行。
你可以提出的请求
- “为订单 #1001 报价,送到 350 5th Ave” —
get_delivery_quote(费用、税费、预计送达时间) - “派送吧” —
accept_quote,或使用dispatch_delivery一步完成报价和接受 - “安排下午 6:30 的餐饮配送” —
schedule_delivery,然后dispatch_due_deliveries会使用新的本地 JWT 执行到期任务 - “安排我的发布之夜:配送 12 份,每 15 分钟一单,从下午 6 点开始” —
schedule_batch(最多 50 单,错峰安排) - “现在派送这 12 份办公室午餐” —
batch_dispatch(一次最多 25 单) - “订单 #1001 到哪儿了?” —
track_delivery(状态、Dasher、预计送达时间、追踪 URL——信息直接来自 DoorDash) - “显示今天的看板” —
list_deliveries - “把 #1001 的小费增加 $2” —
update_delivery - “取消 #1002” —
cancel_delivery
有关资金的问题,请前往你的 DoorDash 开发者门户——DoorDash 会直接向你收费;DashPilot 没有账单功能。
服务器级策略要求 Agent 始终先报出费用,并在派单前征求你的确认;工具注释还能让你的客户端强制执行这一要求,而不只是依赖信任。
工具
| 工具 | 用途 | 对接服务 |
|---|---|---|
check_drive_connection | 验证你的本地 Drive 密钥(无副作用) | DoorDash Drive |
get_delivery_quote | 配送费用、税费、预计送达时间——此时尚未执行任何操作 | DoorDash Drive |
accept_quote | 接受报价——派出真实的 Dasher | DoorDash Drive |
dispatch_delivery | 一步完成报价和接受 | DoorDash Drive |
schedule_delivery | 延迟派单——仅存储未签名的载荷 | DashPilot Cloud |
schedule_batch | 安排整场活动(最多 50 单,在时间窗口内错峰安排) | DashPilot Cloud |
dispatch_due_deliveries | 轮询到期队列,在本地签名(60 秒 JWT)并派单 | Drive + DashPilot Cloud |
track_delivery | 实时状态、Dasher 信息、预计送达时间、追踪 URL | DoorDash Drive |
update_delivery | 小费 / 说明 / 联系电话 | DoorDash Drive |
cancel_delivery | 取消(适用 Drive 的取消规则) | DoorDash Drive |
batch_dispatch | 一次最多派送 25 单 | DoorDash Drive |
list_deliveries | 运营看板 + 已安排队列 | DashPilot Cloud |
get_account | 企业信息、派单数量、加入时间 | DashPilot Cloud |
get_dispatch_settings | 功能标志和派单设置 | DashPilot Cloud |
generate_support_bundle | 用于支持工单的诊断信息包 | DashPilot Cloud |
sync_diagnostics | 常规连接同步——会话握手的一部分 | DashPilot Cloud |
delete_install | 关闭此安装——删除其 DashPilot Cloud 数据(不可撤销) | DashPilot Cloud |
安全与隐私说明
- 仅使用 stdio 传输;此软件包不会打开网络侦听器。
- 两个出站 URL:
DASHPILOT_API_URL(DashPilot Cloud)和DASHPILOT_DRIVE_BASE_URL(DoorDash)。在环回地址之外,两者都必须使用https://;绝不会跟随重定向。 - 你的 Drive 访问密钥从项目
.env文件(或环境变量)中读取,并在此计算机上用于签署 JWT。 - 崩溃报告采用结构化形式:工具调用失败时,此软件包会保留一条脱敏记录(工具名称、错误代码、参数 形状 — 字符串和数字会替换为其类型,因此地址、电话号码、密钥或自由文本都不会被带入)。选择发送支持包时,其中会包含脱敏记录。
- 计划投递以未签名负载形式存储。不会存入任何持有者令牌;后端无法自行分发任何内容。到期任务会在你使用持有密钥的计算机运行
dispatch_due_deliveries时触发 — 零保管的代价是,分发时必须有你自己的设备处于运行状态。 - 安全页面披露了一项固定的签到:此软件包每天会 ping 一次你的 DashPilot Cloud 部署的健康检查端点,以便在安装失效时通知你 — 这是不附带令牌和凭据的普通连通性请求;验证后即丢弃,绝不存储。你的状态文件会记录当天已触发的签到。除此之外:没有遥测、没有分析,也没有安装脚本。
开发
uv sync
uv run pytest
DASHPILOT_API_URL=http://localhost:8790 uv run dashpilot-mcp
MCP Registry
mcp-name: io.github.dashpilot-labs/dashpilot-mcp
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。