ifood-mcp
非官方。 与 iFood 无关联,未获得 iFood 的认可或支持。并非 merchant-api Partners 门户。消费者网页界面可能随时更改,恕不另行通知。
默认绝不支付。 除非启用了
IFOOD_ALLOW_MUTATIONS并且explicit_user_intent为 true,否则ifood_checkout不会执行任何操作。
WAF: 从 Node 访问
www.ifood.com.br/site-api会被 Cloudflare 拦截。即使家用浏览器的 JWT 可用,搜索/首页/GraphQL 请求在数据中心 IP 上仍可能收到 Akamai 的 Access Denied(访问被拒绝)。这些路由并未作为 401 已验证路由提供。
60 秒完成设置
npx -y ifood-mcp-unofficial setup
npx -y ifood-mcp-unofficial auth start --email you@email.com
npx -y ifood-mcp-unofficial auth complete --code 123456 --email you@email.com
npx -y ifood-mcp-unofficial doctor备用方案(无 OTP):以登录状态打开 ifood.com.br → DevTools → Network → 任一个 marketplace.ifood.com.br 请求 → 复制 Authorization,然后:
npx -y ifood-mcp-unofficial auth --from-header "Bearer eyJ…"Stdio 代码片段。这里不要设置 IFOOD_ALLOW_MUTATIONS:
{
"mcpServers": {
"ifood": {
"command": "npx",
"args": ["-y", "ifood-mcp-unofficial"]
}
}
}Related MCP server: 99 MCP
工具
类型 | 工具 |
读取 · 我的 |
|
读取 · 订单 |
|
读取 · 浏览 |
|
元信息 |
|
受控购物车 |
|
受控支付 |
|
仅意图 |
|
HTTP(可选,回环)
npx -y ifood-mcp-unofficial --http绑定 127.0.0.1 并检查 Origin。这是 DNS 重绑定缓解措施,并非公共服务器。
测试
npm test无需真实登录 iFood。
Available Tools
33 toolsifood_add_to_cartAdd items to iFood cartCDestructive
POST /v1/carts on cw-marketplace (401 JSON no-jwt). Item subpaths 404. Dual-gated. Does not checkout.
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | ||
| address_id | No | ||
| merchant_id | Yes | ||
| response_format | No | markdown | |
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_benefitsiFood benefitsBRead-onlyIdempotent
Wallet benefits and coupons. Read-only. Does not apply a coupon.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_capabilitiesiFood capabilitiesBRead-onlyIdempotent
What this unofficial MCP can read and which writes stay gated.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | markdown |
ifood_categoriesiFood categoriesBRead-onlyIdempotent
Top-level categories near a point. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| latitude | Yes | ||
| longitude | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_checkoutPlace iFood orderADestructive
FAIL-CLOSED. Charges money on wsloja checkout. Requires IFOOD_ALLOW_MUTATIONS and explicit_user_intent.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | Yes | ||
| response_format | No | markdown | |
| checkout_payload | Yes | ||
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_connection_statusiFood connection statusCRead-onlyIdempotent
Local doctor: token present, mutations off by default, unofficial consumer surface.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | markdown |
ifood_contact_methodsiFood contact methodsBRead-onlyIdempotent
Verified emails and phones. Redacted by default.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_create_addressCreate iFood addressCDestructive
POST /v1/customers/me/addresses (401 JSON no-jwt). Requires explicit_user_intent. PUT/DELETE :id 404.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| number | No | ||
| street | No | ||
| latitude | Yes | ||
| longitude | Yes | ||
| complement | No | ||
| neighborhood | No | ||
| response_format | No | markdown | |
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_create_cartCreate iFood cartADestructive
Gated write on cw-marketplace. Requires IFOOD_ALLOW_MUTATIONS and explicit_user_intent. Does not checkout.
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | ||
| address_id | No | ||
| merchant_id | Yes | ||
| response_format | No | markdown | |
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_customer_meiFood profileBRead-onlyIdempotent
Authenticated customer profile. Identity redacted by default.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_filter_optionsiFood search filtersBRead-onlyIdempotent
Public filter catalog (200 without auth). Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_get_cartGet iFood cartBRead-onlyIdempotent
Inspect a cart on cw-marketplace. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_get_orderGet iFood orderBRead-onlyIdempotent
One order by id (v3). Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_get_order_etaiFood order ETABRead-onlyIdempotent
Dedicated /eta URL 404. Reads the live order payload. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_get_order_invoiceiFood order invoiceCRead-onlyIdempotent
Dedicated /invoice /nfe URLs 404. Reads the live order payload. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_get_order_receiptiFood order receiptARead-onlyIdempotent
Dedicated /receipt URL 404. Reads the live order payload. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_homeiFood home feedBRead-onlyIdempotent
Localized home cards. Read-only. May WAF from datacenter IPs.
| Name | Required | Description | Default |
|---|---|---|---|
| latitude | Yes | ||
| longitude | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_identitiesiFood external identitiesBRead-onlyIdempotent
Allowlisted GET /v1/customers/me/external-identities. Identity redacted. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_list_active_ordersList active iFood ordersBRead-onlyIdempotent
GET /v4/customers/me/orders?status=ONGOING (401 JSON without jwt). Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| size | No | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_list_addressesList iFood addressesBRead-onlyIdempotent
Saved delivery addresses. Street/phone/email redacted by default.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_list_ordersList iFood ordersCRead-onlyIdempotent
Past orders (v4). Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| size | No | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_list_payment_methodsList iFood payment methodsBRead-onlyIdempotent
Saved wallet methods. Last-four redacted. Does not charge.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_logoutLogout iFood MCPADestructiveIdempotent
Clears ~/.ifood-mcp/tokens.json. Requires explicit_user_intent.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | markdown | |
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_loyalty_cardsiFood loyaltyCRead-onlyIdempotent
Club / stamps. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_merchant_infoiFood merchant infoARead-onlyIdempotent
Fees, hours, rating via unofficial GraphQL. Read-only. May WAF from datacenter IPs.
| Name | Required | Description | Default |
|---|---|---|---|
| merchant_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_merchant_payment_methodsMerchant payment methodsCRead-onlyIdempotent
How a restaurant accepts payment. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| merchant_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_previous_itemsPrevious items at merchantCRead-onlyIdempotent
Items you ordered before at this merchant. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| merchant_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_privacy_auditiFood privacy auditCRead-onlyIdempotent
Redaction defaults and fail-closed checkout.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | markdown |
ifood_reviewsiFood reviewsCRead-onlyIdempotent
Merchant reviews. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| merchant_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_searchSearch iFoodARead-onlyIdempotent
Search restaurants/items near a point. Read-only. May WAF from datacenter IPs.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | ||
| term | Yes | ||
| latitude | Yes | ||
| longitude | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
ifood_set_delivery_methodSet iFood delivery methodCDestructive
Gated cart write. DEFAULT / PRIORITY / TAKEOUT.
| Name | Required | Description | Default |
|---|---|---|---|
| method | Yes | ||
| cart_id | Yes | ||
| response_format | No | markdown | |
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_set_payment_methodSet iFood cart paymentADestructive
Gated cart write. Does not charge.
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | Yes | ||
| response_format | No | markdown | |
| payment_method_ids | Yes | ||
| explicit_user_intent | No | Must be true after the user explicitly asked for this write. |
ifood_track_orderTrack iFood orderBRead-onlyIdempotent
Dedicated /tracking URLs 404. Reads the live GET /v3/customers/me/orders/:id payload instead. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | ||
| privacy_mode | No | ||
| response_format | No | markdown |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
8 tool updates
v0.1.5- Added
ifood_add_to_cart - Added
ifood_create_address - Added
ifood_get_order_eta - Added
ifood_get_order_invoice - Added
ifood_get_order_receipt - Added
ifood_identities - Added
ifood_list_active_orders - Added
ifood_track_order
25 tool updates
v0.1.1- First observed
ifood_benefits - First observed
ifood_capabilities - First observed
ifood_categories - First observed
ifood_checkout - First observed
ifood_connection_status - First observed
ifood_contact_methods - First observed
ifood_create_cart - First observed
ifood_customer_me - First observed
ifood_filter_options - First observed
ifood_get_cart - First observed
ifood_get_order - First observed
ifood_home - First observed
ifood_list_addresses - First observed
ifood_list_orders - First observed
ifood_list_payment_methods - First observed
ifood_logout - First observed
ifood_loyalty_cards - First observed
ifood_merchant_info - First observed
ifood_merchant_payment_methods - First observed
ifood_previous_items - First observed
ifood_privacy_audit - First observed
ifood_reviews - First observed
ifood_search - First observed
ifood_set_delivery_method - First observed
ifood_set_payment_method
TDQS
Scored across 33 tools
Most tools target distinct resources or actions, and the descriptions clarify boundaries. The order-related tools (list_orders, get_order, track_order, get_order_eta, get_order_receipt, get_order_invoice) overlap somewhat since several read the same live order payload, though each extracts a different slice.
All tools share the ifood_ prefix and snake_case, but the verb_noun pattern is inconsistent: some use action verbs (list_orders, get_order, create_cart), while many read-only tools are bare nouns (ifood_benefits, ifood_reviews, ifood_categories, ifood_merchant_info). The naming is readable but not uniform.
33 tools is substantially above the well-scoped range, and many are narrow read-only variations around orders and customer data. While iFood is a broad domain, the surface feels heavier than necessary and could be consolidated.
The server covers customer profile, addresses, orders, search, cart, and checkout well, including gated writes. However, there are notable gaps such as no cart item removal, no order cancellation, and no update/delete for addresses, which limits common lifecycle workflows.
Maintenance
Related MCP Connectors
Insights for your iFood store right in your AI assistant's chat. Generate charts of sales and payout
Search live store shelves, verify delivery windows, and run instant AI agent checkouts.
Connect AI to store orders, products and inventory with scoped access and human approvals.
Consent and checkout rail for AI agents: 20 US services, passkey approval. Sandbox: simulated data.
Related MCP Servers
- AlicenseCqualityBmaintenanceLets users search nearby stores and products, inspect their Rappi cart, manage saved addresses, and track orders locally, with payment and checkout actions disabled by default unless explicitly enabled and confirmed. It uses an undocumented Rappi API and protects privacy through redaction and local token storage.4225 npmMIT
- AlicenseBqualityBmaintenanceEnables AI agents to get 99Pop and 99Moto fare estimates, ride history, and live tracking while keeping credentials local and ride requests fail-closed by default.1459 npm1MIT
- AlicenseCqualityBmaintenanceProvides AI agents with access to Zé Delivery's product catalog, search, and order tracking, with order placement and cancellation available only after explicit user consent and opt-in.2212 npmMIT
- AlicenseAqualityCmaintenanceEnables an AI assistant to browse restaurants and menus, manage a cart, reorder past orders, review checkout details, and place food delivery orders, returning a payment link to complete payment.13MIT