Zé Delivery MCP
This MCP server gives an AI agent read-only access to Zé Delivery's catalog and order data, plus fail-closed, explicitly enabled write actions.
Inspect local state:
ze_connection_status,ze_capabilities, andze_privacy_auditreport token presence, mutation gating, and redaction defaults.Browse catalog:
ze_list_categories,ze_list_groups, andze_searchlist categories, root product groups, and search products (read-only; no order placement).View account/orders:
ze_order_historyandze_track_ordershow past orders and order status, with street/phone/GPS details redacted.Optional response/privacy controls: most tools accept
response_format(markdown/json) andprivacy_mode(summary/structured/raw).Gated writes:
ze_place_orderandze_cancel_orderdo nothing unlessZE_ALLOW_MUTATIONSis set andexplicit_user_intentis true; guest tokens cannot charge.Intent-only local action:
ze_logoutdeletes the local token file only whenexplicit_user_intentis true.Tracking/order tools are read-only and do not expose courier phone or GPS polylines.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Zé Delivery MCP search for Brahma 350ml and show estimated delivery time"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Unofficial. Not affiliated with, endorsed by, or supported by Zé Delivery or Ambev. The consumer GraphQL at
api.ze.delivery/public-apican change without notice.
Never pays by default.
ze_place_orderandze_cancel_orderdo nothing unlessZE_ALLOW_MUTATIONSis enabled andexplicit_user_intentis true. Guest tokens cannot charge. Street, phone, email and GPS/latlng polylines are redacted.
Setup in 60 seconds
npx -y ze-mcp-unofficial setup
npx -y ze-mcp-unofficial auth --from-header "Bearer eyJ…"
npx -y ze-mcp-unofficial doctorToken is not OAuth. Capture a consumer request to api.ze.delivery → copy the Authorization header. Catalog/search still run without a token; pay tools stay blocked.
Stdio snippet (Claude Desktop, Cursor, Grok Bot). Do not set mutations in the snippet:
{
"mcpServers": {
"ze": {
"command": "npx",
"args": ["-y", "ze-mcp-unofficial"]
}
}
}See examples/claude-desktop.json and examples/grok-bot.md.
Related MCP server: mcp-kroger
Skill or MCP
Same package, two doors. MCP registers tools on stdio/HTTP. The skill is the workflow (search → stop before order) and can drive the same tools through the CLI when the client has no MCP:
npx -y ze-mcp-unofficial call ze_search --json '{"query":"brahma"}'Gates are identical. Copy skill/SKILL.md into your agent skills dir (~/.agents/skills/ze/ or Claude/Grok equivalent).
Tools
Kind | Tools |
Read · catalog |
|
Read · cart / pay |
|
Read · account |
|
Meta |
|
Gated cart |
|
Gated pay (mutations and intent) |
|
Intent only |
|
HTTP (optional, loopback)
Default transport is stdio. Streamable HTTP binds 127.0.0.1 and checks Origin against http://127.0.0.1:<port> (override with ZE_MCP_ALLOWED_ORIGIN). This is DNS-rebinding mitigation, not a public server.
npx -y ze-mcp-unofficial --http
# GET http://127.0.0.1:3000/health
# POST http://127.0.0.1:3000/mcpSecurity
Tokens live in ~/.ze-mcp/tokens.json (0600). They are not in git, the npm tarball, or default examples. Full notes: SECURITY.md. Agents: llms.txt.
Tests
npm testNo live Zé login required.
Available Tools
22 toolsze_apply_couponApply Zé coupon (gated)BDestructive
applyCoupon(couponCode: String!). Dual-gated. Does not checkout.
Inputs: coupon_code (required), response_format, explicit_user_intent.
ze_bulk_add_to_cartBulk add to Zé cart (gated)BDestructive
bulkAddToCart(bulkAddToCartInput). Dual-gated plus fail-closed 18+ confirmation. Does not checkout.
Inputs: bulk_add_to_cart_input (required), response_format, confirmed_legal_age, explicit_user_intent.
ze_cancel_orderCancel a Zé order (gated)ADestructive
Fail-closed. Needs ZE_ALLOW_MUTATIONS and explicit_user_intent. Guest tokens cannot charge.
Inputs: order_id (required), response_format, explicit_user_intent.
ze_capabilitiesZé capabilitiesBRead-onlyIdempotent
What this unofficial MCP can read and which writes stay gated.
Inputs: response_format.
ze_checkout_previewZé checkout previewARead-onlyIdempotent
Read-only loadCheckout query. Does not run the manageCheckout mutation and does not charge.
Inputs: privacy_mode, response_format.
ze_clear_cart_itemsClear Zé cart items (gated)CDestructive
clearCartItems. Dual-gated. Does not checkout.
Inputs: response_format, explicit_user_intent.
ze_complete_checkoutComplete Zé checkout (gated pay)BDestructive
completeCheckout needs access token (401 without). Dual-gated plus 18+ confirmation.
Inputs: input, response_format, confirmed_legal_age, explicit_user_intent.
ze_connection_statusZé connection statusCRead-onlyIdempotent
Local doctor: token present, mutations off by default, unofficial Zé Delivery GraphQL.
Inputs: response_format.
ze_get_cartInspect Zé cartCRead-onlyIdempotent
loadCart { cart { id } }. Field names other than cart failed GraphQL validation.
Inputs: privacy_mode, response_format.
ze_list_categoriesList Zé catalog categoriesARead-onlyIdempotent
Read-only listCategories on the unofficial public GraphQL. Does not place an order.
Inputs: privacy_mode, response_format.
ze_list_groupsList Zé root product groupsARead-onlyIdempotent
Read-only listRootProductGroups (Ofertas, Cervejas, …). Does not place an order.
Inputs: privacy_mode, response_format.
ze_list_payment_methodsZé payment methodsCRead-onlyIdempotent
listPaymentMethods (200 with internal error without a full session). Last-four redacted. Does not charge.
Inputs: privacy_mode, response_format.
ze_load_categoryLoad a Zé categoryDRead-onlyIdempotent
Read-only loadCategory (live 200 with checkout-information-not-found without session).
Inputs: category_id (required), privacy_mode, response_format.
ze_load_checkoutZé loadCheckoutARead-onlyIdempotent
Read-only loadCheckout. Does not complete payment.
Inputs: privacy_mode, response_format.
ze_logoutClear local Zé tokenADestructiveIdempotent
Deletes ~/.ze-mcp/tokens.json. Requires explicit_user_intent.
Inputs: response_format, explicit_user_intent.
ze_order_historyZé order historyARead-onlyIdempotent
Past consumer orders. Read-only. Street/phone/GPS redacted.
Inputs: privacy_mode, response_format.
ze_place_orderPlace a Zé order (gated)ADestructive
Fail-closed. Needs ZE_ALLOW_MUTATIONS and explicit_user_intent. Guest tokens cannot charge. Default examples never enable this.
Inputs: input, response_format, confirmed_legal_age, explicit_user_intent.
ze_privacy_auditZé privacy auditARead-onlyIdempotent
Shows redaction defaults (street/phone/GPS) and that place-order is off unless both gates are set.
Inputs: response_format.
ze_product_detailZé product detailCRead-onlyIdempotent
loadProduct(id) with category. Read-only.
Inputs: product_id (required), privacy_mode, response_format.
ze_rate_orderRate a Zé orderCDestructive
rateOrder(orderNumber, rating). Requires explicit_user_intent. Does not charge.
Inputs: rating (required), order_id (required), response_format, explicit_user_intent.
ze_searchSearch Zé productsARead-onlyIdempotent
Read-only searchProducts(queryTerm) on the unofficial GraphQL. Does not add to cart.
Inputs: query (required), privacy_mode, response_format.
ze_track_orderTrack a Zé orderBRead-onlyIdempotent
loadOrder(orderNumber). Status only. Does not return GPS polylines or courier phone.
Inputs: order_id (required), privacy_mode, response_format.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 22 tools
Several tools overlap in purpose: ze_checkout_preview and ze_load_checkout both describe the same read-only loadCheckout operation, and ze_place_order versus ze_complete_checkout has unclear boundaries around checkout versus order placement. The three meta tools (ze_connection_status, ze_capabilities, ze_privacy_audit) also cover similar ground, and ze_list_groups/ze_list_categories/ze_load_category are not clearly differentiated.
The ze_ prefix and snake_case are consistent, and many names follow verb_noun (ze_search, ze_apply_coupon, ze_cancel_order). However, there is a mix of noun-phrase names like ze_order_history, ze_product_detail, ze_connection_status, ze_capabilities, and ze_privacy_audit, plus ze_checkout_preview inverts the verb-object order. The pattern is readable but not consistently applied.
22 tools is on the heavy side for the apparent scope, especially with duplicate checkout-reading tools and several overlapping meta/status tools. The count feels padded rather than deliberately minimal, though not so large as to be overwhelming.
Core browsing and ordering flows exist, but there are major gaps: ze_get_cart only returns the cart id, not its contents, and there is no remove-item or update-quantity tool. There is also no login flow to complement ze_logout, and order tracking deliberately omits details like GPS and courier info, leaving agents unable to fully support cart management or order follow-up.
Maintenance
Related MCP Connectors
Search live store shelves, verify delivery windows, and run instant AI agent checkouts.
Directory of APIs, merchants, and tools AI agents can actually use.
Agent-native product catalog: 300M+ products, 150,000+ stores, deliver_to ranking.
AI-agent product catalog: search, lookup & purchase routing over verified merchant data.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI agents to search for products, manage shopping carts, and place grocery orders on Instacart using browser automation. It includes comprehensive tools for store discovery, product searching, and secure checkout with explicit user confirmation.1176 npm11MIT
- AlicenseAqualityDmaintenanceEnables AI agents to search products, manage shopping carts, clip digital coupons, check fuel points, schedule delivery/pickup, and place grocery orders with Kroger.1551 npm2MIT
- AlicenseCqualityBmaintenanceEnables AI agents to access iFood orders, addresses, restaurants, and cart locally, with fail-closed checkout requiring explicit opt-in.3335 npm1MIT
- AlicenseBqualityBmaintenanceEnables AI agents to search ClickBus places and trips, view booking history, and track bookings while keeping credentials local, with booking and cancellation actions blocked by default until explicitly enabled.1423 npmMIT