ifood-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IFOOD_ALLOW_MUTATIONS | No | Set to 'true' to enable mutation tools such as ifood_checkout. By default, checkout does nothing unless this is enabled and explicit_user_intent is true. | false |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ifood_connection_statusC | Local doctor: token present, mutations off by default, unofficial consumer surface. |
| ifood_capabilitiesB | What this unofficial MCP can read and which writes stay gated. |
| ifood_privacy_auditC | Redaction defaults and fail-closed checkout. |
| ifood_customer_meB | Authenticated customer profile. Identity redacted by default. |
| ifood_list_addressesB | Saved delivery addresses. Street/phone/email redacted by default. |
| ifood_contact_methodsB | Verified emails and phones. Redacted by default. |
| ifood_identitiesB | Allowlisted GET /v1/customers/me/external-identities. Identity redacted. Read-only. |
| ifood_list_ordersC | Past orders (v4). Read-only. |
| ifood_get_orderB | One order by id (v3). Read-only. |
| ifood_list_active_ordersB | GET /v4/customers/me/orders?status=ONGOING (401 JSON without jwt). Read-only. |
| ifood_track_orderB | Dedicated /tracking URLs 404. Reads the live GET /v3/customers/me/orders/:id payload instead. Read-only. |
| ifood_get_order_etaB | Dedicated /eta URL 404. Reads the live order payload. Read-only. |
| ifood_get_order_receiptA | Dedicated /receipt URL 404. Reads the live order payload. Read-only. |
| ifood_get_order_invoiceC | Dedicated /invoice /nfe URLs 404. Reads the live order payload. Read-only. |
| ifood_loyalty_cardsC | Club / stamps. Read-only. |
| ifood_benefitsB | Wallet benefits and coupons. Read-only. Does not apply a coupon. |
| ifood_list_payment_methodsB | Saved wallet methods. Last-four redacted. Does not charge. |
| ifood_filter_optionsB | Public filter catalog (200 without auth). Read-only. |
| ifood_reviewsC | Merchant reviews. Read-only. |
| ifood_previous_itemsC | Items you ordered before at this merchant. Read-only. |
| ifood_get_cartB | Inspect a cart on cw-marketplace. Read-only. |
| ifood_merchant_payment_methodsC | How a restaurant accepts payment. Read-only. |
| ifood_searchA | Search restaurants/items near a point. Read-only. May WAF from datacenter IPs. |
| ifood_homeB | Localized home cards. Read-only. May WAF from datacenter IPs. |
| ifood_categoriesB | Top-level categories near a point. Read-only. |
| ifood_merchant_infoA | Fees, hours, rating via unofficial GraphQL. Read-only. May WAF from datacenter IPs. |
| ifood_create_cartA | Gated write on cw-marketplace. Requires IFOOD_ALLOW_MUTATIONS and explicit_user_intent. Does not checkout. |
| ifood_add_to_cartC | POST /v1/carts on cw-marketplace (401 JSON no-jwt). Item subpaths 404. Dual-gated. Does not checkout. |
| ifood_create_addressC | POST /v1/customers/me/addresses (401 JSON no-jwt). Requires explicit_user_intent. PUT/DELETE :id 404. |
| ifood_set_delivery_methodC | Gated cart write. DEFAULT / PRIORITY / TAKEOUT. |
| ifood_set_payment_methodA | Gated cart write. Does not charge. |
| ifood_checkoutA | FAIL-CLOSED. Charges money on wsloja checkout. Requires IFOOD_ALLOW_MUTATIONS and explicit_user_intent. |
| ifood_logoutA | Clears ~/.ifood-mcp/tokens.json. Requires explicit_user_intent. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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.