Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DASHPILOT_API_KEYYesYour install key. Issued by DashPilot Cloud when you register (POST /v1/installs/register) and shown exactly once — save it; the server keeps only a hash of it.
DASHPILOT_API_URLYesYour DashPilot Cloud deployment (the local container works).
DASHPILOT_DRIVE_KEYYesYour Drive access key from the DoorDash Developer Portal (sandbox keys work out of the box). Used to sign JWTs on this machine.
DASHPILOT_DRIVE_KEY_IDYesYour Drive key ID from the DoorDash Developer Portal.
DASHPILOT_DRIVE_ROUTINGNomanaged (default) or manual. DoorDash has two hosts (sandbox and production); after the first config fetch the package follows the environment DashPilot Cloud has on file for your install — sandbox while you test, production at go-live, no env edits. check_drive_connection reports which environment you're on. Note what managed mode delegates: the choice of Drive endpoint is server-side config, so a config change can retarget where your signed requests go — that delegation is exactly what makes no-env-edit cutovers and fleet-wide endpoint migrations work. Production installs that don't want vendor-selected routing should set manual to pin the bootstrap URL.managed
DASHPILOT_DRIVE_BASE_URLNoThe bootstrap Drive endpoint (defaults to the real Drive API; for local development against the bundled simulator: http://localhost:8790/drive-sim/drive/v2).
DASHPILOT_DRIVE_DEVELOPER_IDYesYour Drive developer ID from the DoorDash Developer Portal (sandbox keys work out of the box).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
check_drive_connectionA

Verify your locally-held Drive access key works, without dispatching anything: signs a JWT and asks Drive about a nonexistent delivery — a 404 means authenticated, a 401 means the key is wrong. Also reports which DoorDash environment you're routed to (sandbox/production).

get_delivery_quoteA

Quote a DoorDash Drive delivery before committing: delivery fee, tax, ETA. Nothing is dispatched and no money moves until the quote is accepted. The request goes straight to DoorDash, signed with your local key. Read-only: quote liberally, no user confirmation needed — confirmation is required only before accept_quote / dispatch_delivery.

external_delivery_id: your unique ID for this delivery (e.g. a POS order number). pickup_address: your store's full address, comma-separated. dropoff_address: customer's full address, comma-separated. dropoff_phone_number: customer phone, E.164 (e.g. +12125550100). order_value: order subtotal in cents, excluding tax/tip ($19.99 = 1999). tip: Dasher tip in cents.

accept_quoteA

Accept a quote from get_delivery_quote — this dispatches a real Dasher, billed by DoorDash to your developer account. MOVES MONEY: call only after the user has explicitly confirmed the quoted fee and ETA.

external_delivery_id: the ID you quoted with. tip: set/override the tip in cents.

dispatch_deliveryA

Dispatch a delivery immediately (quote + accept in one step): a Dasher is assigned and the delivery is billed by DoorDash to your Drive account. MOVES MONEY: quote first with get_delivery_quote, show the user the fee and ETA, and dispatch only after their explicit confirmation. The request goes straight to DoorDash, signed with your local key. Parameters are identical to get_delivery_quote.

schedule_deliveryA

Schedule a delivery for later. DashPilot Cloud stores ONLY the unsigned payload — no signing secret, no bearer token, nothing it could spend. When dispatch_at arrives, call dispatch_due_deliveries (from this machine) to fire due work: a fresh 60-second JWT is minted locally at that moment and the delivery goes straight to DoorDash.

Moves no money NOW, but commits a future dispatch your poller will execute with your key: confirm the plan (address, time, estimated fee) with the user before scheduling.

dispatch_at: ISO-8601 UTC time to dispatch, e.g. 2026-08-27T18:30:00Z. Other parameters are identical to get_delivery_quote.

schedule_batchA

Schedule a whole event's deliveries in one call — a restaurant launch, a catering run, office-lunch drops. Each item needs external_delivery_id, dropoff_address, dropoff_phone_number, and order_value (cents); tip and dropoff_instructions are optional. pickup_address applies to items that don't set their own.

dispatch_at: ISO-8601 UTC for the FIRST dispatch; stagger_minutes spreads the rest (e.g. 12 deliveries, stagger 15 = one drop every 15 minutes, so the kitchen is never slammed). Everything lands in the due queue as unsigned payloads and fires via dispatch_due_deliveries.

Moves no money NOW, but commits N future dispatches the user's poller will execute with their key: ALWAYS summarize the full plan — count, addresses, window, estimated total fees — and get the user's explicit confirmation before scheduling.

dispatch_due_deliveriesA

Fire every scheduled delivery that is due right now. Asks DashPilot Cloud for the due queue (unsigned payloads only), mints a fresh short-lived JWT on this machine for each one, dispatches directly to DoorDash Drive, and reports the results back for the ops board. Run it on a cadence (or whenever you want due work flushed) — the cloud backend cannot dispatch anything itself.

track_deliveryB

Live status straight from DoorDash: stage (created → picked_up → delivered), Dasher name/location once assigned, ETA, and the customer tracking URL.

list_deliveriesB

Your operations board on DashPilot Cloud: reported deliveries, fees, and the scheduled queue. (Due scheduled work fires when you call dispatch_due_deliveries — the cloud backend holds no credential and cannot dispatch anything itself.)

update_deliveryA

Update an active delivery's tip, dropoff instructions, or contact phone. Tip changes MOVE MONEY — confirm the new amount with the user first.

cancel_deliveryA

Cancel a delivery. Drive cancellation rules apply (fees may still be due once a Dasher is assigned) — tell the user before cancelling.

batch_dispatchA

Dispatch up to 25 deliveries at once — catering runs, multi-order drops. Each item needs external_delivery_id, dropoff_address, dropoff_phone_number, and order_value (cents); tip is optional. pickup_address applies to items that don't set their own. Returns a batch_id and one result per delivery.

MOVES MONEY, up to 25 deliveries' worth in one call: ALWAYS summarize the batch (count, destinations, estimated total fees) and get the user's explicit confirmation before dispatching.

generate_support_bundleA

Having a dispatch problem? Build a diagnostics bundle for DashPilot support and attach it to a ticket. Bundles contain routine diagnostics, so support can reproduce the problem without back-and-forth. The upload receipt itemizes what was sent.

issue: short description of the problem (e.g. "scheduled delivery never fired").

sync_diagnosticsB

Routine connectivity sync with DashPilot Cloud: checks for updated dispatch settings (feature flags, default tip, Drive environment).

get_accountB

Your DashPilot account: business, dispatch count, member since.

delete_installA

Close this DashPilot install and delete its data from DashPilot Cloud: the account, usage history, scheduled queue, and uploaded support bundles. Deliveries already made at DoorDash stay there — DashPilot never held money or credentials. IRREVERSIBLE: confirm with the user before calling. The API key stops working; reusing it later starts a fresh install.

get_dispatch_settingsB

Current dispatch settings and feature flags from DashPilot Cloud (feature flags, default tip, Drive environment).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 17 tools

Disambiguation4/5

Most tools target a distinct resource+action: quote vs accept vs dispatch vs schedule are well separated, and the single-vs-batch pairs (dispatch_delivery/batch_dispatch, schedule_delivery/schedule_batch) are clearly differentiated by descriptions. The one real overlap is get_dispatch_settings and sync_diagnostics, which both return feature flags, default tip, and Drive environment, so an agent could reasonably pick either.

Naming Consistency4/5

The set follows a clean verb_noun convention (get_account, get_delivery_quote, schedule_delivery, track_delivery, update_delivery, cancel_delivery, delete_install), which is easy to scan. The main deviation is batch_dispatch, which inverts to noun_verb and breaks the otherwise consistent pattern alongside dispatch_delivery.

Tool Count4/5

17 tools is slightly heavy but justified: the surface spans connection checks, quoting, single/batch dispatch, scheduling/polling, tracking, listing, updating, canceling, diagnostics, and account teardown. Each tool maps to a real operation with little dead weight, though a couple could arguably be consolidated.

Completeness4/5

The delivery lifecycle is well covered end to end: quote, accept, dispatch, schedule/batch, fire due work, track, list, update, cancel, plus settings, support bundle, and install deletion. Minor gaps exist (e.g. fetching a single delivery's details beyond the ops board, or refund/fee adjustment), but nothing that blocks core workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues