Chipotle API: Get nearest menu
Finds the nearest open Chipotle that takes online orders for a city, address, or ZIP code and returns its address, distance, today's hours and the pickup menu with prices, calories and photos.
Unofficial. Not affiliated with or endorsed by Chipotle.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Location, required
location City, address, or ZIP code near the Chipotle, for example Denver, CO or 80202.
Denver, CO
Input as JSON
{ "location": "Denver, CO"}Output
{ "menu_items": [ { "price": 68, "calories": "910 cal", "currency": "USD", "item_name": "Family Meal - Smoked Serrano Steak", "page_link": "https://www.chipotle.com/#menu" , "photo_link": "https://www.chipotle.com/content/dam/chipotle/menu/menu-items/cmg-7018-smoked-serrano-steak/web-desktop/order.png" , "menu_section": "Family Meals" }, { "price": 52, "calories": "1080 cal", "currency": "USD", "item_name": "Family Meal - Chicken", "page_link": "https://www.chipotle.com/#menu" , "photo_link": "https://www.chipotle.com/content/dam/chipotle/menu/menu-items/cmg-6601-chicken/web-desktop/order.png" , "menu_section": "Family Meals" }, { "price": 63, "calories": "900 cal", "currency": "USD", "item_name": "Family Meal - Steak", "page_link": "https://www.chipotle.com/#menu" , "photo_link": "https://www.chipotle.com/content/dam/chipotle/menu/menu-items/cmg-6602-steak/web-desktop/order.png" , "menu_section": "Family Meals" } ], "restaurant": { "name": "California", "address": "1600 California St Unit 7, Denver CO 80202-3700", "today_hours": "10:00 AM - 10:00 PM", "distance_miles": 0.72, "restaurant_number": 9 }}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"chipotle.com/get_menu","input":{"location":"Denver, CO"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "chipotle.com/get_menu" , "input": { "location": "Denver, CO" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "chipotle.com/get_menu" , "input": { "location": "Denver, CO" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run chipotle.com/get_menu# with {"location":"Denver, CO"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "location" ], "properties": { "location": { "type": "string", "description": "City, address, or ZIP code near the Chipotle, for example Denver, CO or 80202." } }}Output schema
{ "type": "object", "required": [ "restaurant", "menu_items" ], "properties": { "menu_items": { "type": "array", "items": { "type": "object", "required": [ "menu_section", "item_name", "price", "currency", "calories", "photo_link", "page_link" ], "properties": { "price": { "type": "number" }, "calories": { "type": [ "string", "null" ] }, "currency": { "type": "string" }, "item_name": { "type": "string" }, "page_link": { "type": "string" }, "photo_link": { "type": [ "string", "null" ] }, "menu_section": { "type": "string" } } } }, "restaurant": { "type": "object", "required": [ "name", "address", "distance_miles", "today_hours", "restaurant_number" ], "properties": { "name": { "type": "string" }, "address": { "type": "string" }, "today_hours": { "type": [ "string", "null" ] }, "distance_miles": { "type": "number" }, "restaurant_number": { "type": "integer", "x-fous-developer": true } } } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
chipotle.com/get_menu- Returns
- restaurant name, address, distance, today's hours, restaurant number, menu items with prices, calories, photo links
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method chipotle.com/get_menu with the inputs above.
Ask your agent
- Find the closest open Chipotle near Denver, CO that does online pickup and show me its menu with prices and calories
- What's the nearest Chipotle to ZIP 80202 taking online orders, and what are its hours today?
- I need a Chipotle near 1600 Pennsylvania Ave NW, Washington DC that accepts pickup orders; give me the address and distance
- Look up the closest Chipotle to Austin, TX and list the menu items with calorie counts and photos
- Which Chipotle within reach of 94103 is open right now for online ordering, and what does its pickup menu cost?
See more
Finds McDonald's restaurants within 50 miles of a US city, address or ZIP code, nearest first. Each result includes today's hours, services and directions. Open-now status follows the listed hours.
mcdonalds.com/search_restaurantsGets the delivery menu, prices, rating and delivery details of the nearest matching Uber Eats restaurant at a city or address. For a city, a central listed address is used; delivery fees may reflect guest promotions, and rating counts may be rounded.
ubereats.com/get_restaurant_menuFinds Starbucks cafés near a city, address or ZIP code, nearest first, with whether each is open now, today's local hours and amenities; optionally only cafés open now.
starbucks.com/search_storesFinds DoorDash restaurants delivering to a street address or ZIP code, optionally for a cuisine or dish, in DoorDash's search order. Fees and times reflect guest offers; the numeric fee is null when DoorDash shows no amount.
doordash.com/search_restaurantsFind restaurants delivering to an address in Uber Eats guest browsing order. Fees can be conditional for new users; displayed rating counts may be rounded.
ubereats.com/search_restaurantsFinds the US Costco warehouses nearest a city, address or ZIP code, with today's and weekly hours, gas station hours, services and posted gas prices.
costco.com/search_warehousesFinds OpenTable restaurants with bookable slots within two hours of the selected time in a city or neighborhood, in OpenTable search order, optionally for one cuisine. Examines up to 300 listings; availability may change.
opentable.com/search_available_tablesGets a restaurant's public OpenTable profile by name or OpenTable link and city, including ratings, details, menu and photo links. Ratings and other fields can be missing when the restaurant does not publish them.
opentable.com/get_restaurant