LabscoMCP early access ↗
AriOlivMCP SERVER

Ifood MCP

Order food on iFood from an AI assistant — search restaurants, read menus and reviews, build a cart and check out — over Brazil's largest delivery platform's consumer API.

by AriOliv ↗Food, Dining & DeliveryCommunity

LABSCO SUMMARY

Checkout is a real order, and the API is unofficial.

The last tool in the chain places the order and charges your saved payment method, so it is worth being deliberate about how much of the sequence the assistant runs unattended. The OAuth mode is the better setup for more than one reason: real login rather than tokens scraped from DevTools, and tokens that never touch disk. Expect breakage when iFood changes its site, since there is no published API here to depend on.

What it is

An unofficial MCP server for iFood, wrapping the consumer website's API. It goes the whole way from discovery to checkout: an assistant can find açaí near your coordinates, read the menu and the reviews, build a cart and place the order. Not affiliated with iFood, and the endpoints it uses can change without notice.

What you get

  • Discovery — ifood_search by term and location, ifood_filter_options for the available filters, ifood_home for the localized feed, ifood_browse_page, ifood_categories
  • Merchants — ifood_merchant_info for fees, hours, rating and address, ifood_merchant_catalog for the full menu with prices and add-ons, ifood_item_detail, ifood_reviews, ifood_merchant_payment_methods, and ifood_customer_merchant_items for what you have ordered there before
  • Your account — ifood_customer_me, ifood_addresses (which carry coordinates), ifood_contact_methods, ifood_external_identities
  • Orders — ifood_orders_list, ifood_order_detail, ifood_reorder to pre-fill a cart from a past order
  • Loyalty and money — ifood_loyalty_cards, ifood_benefits for coupons and promotions near a location, ifood_payment_methods
  • Cart and checkout — ifood_cart_create, ifood_cart_set_delivery_method for DEFAULT, PRIORITY or TAKEOUT, ifood_cart_set_payment_method, ifood_checkout as the final step
  • 25 tools in total, backing both transports identically

Requirements

An active iFood account and Node.js ≥ 20; clone the repository and npm run build. Two ways to authenticate. The HTTP mode runs an OAuth 2.1 flow with iFood's real OTP login — generate an MCP_JWT_SECRET of at least 32 characters, set PORT, start it, and register http://localhost:3001/mcp as an HTTP server; the browser handles the six-digit code that arrives by WhatsApp, SMS or email. The stdio mode instead needs four values you copy out of browser DevTools — IFOOD_ACCESS_TOKEN, IFOOD_ACCOUNT_ID, IFOOD_DEVICE_ID and IFOOD_SESSION_ID. In HTTP mode the iFood tokens stay in memory and are refreshed in the background, so a process restart means logging in again. Package @aol/ifood-mcp, MIT.

Setup effort

Build from source — git clone https://github.com/AriOliv/ifood-mcp.git