{
  "markdown": "# @striderlabs/mcp-ubereats\n\n[![npm](https://img.shields.io/npm/v/@striderlabs/mcp-ubereats)](https://www.npmjs.com/package/@striderlabs/mcp-ubereats)\n[![MCP Registry](https://img.shields.io/badge/MCP-Registry-blue)](https://registry.modelcontextprotocol.io/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)\n\nMCP server for Uber Eats — let AI agents search restaurants, browse menus, place orders, and track deliveries.\n\nBuilt by [Strider Labs](https://striderlabs.ai).\n\n## Features\n\n- Search restaurants by name, cuisine, or food type\n- Browse full menus with item details and prices\n- Add items to cart with quantity and special instructions\n- Clear cart and start fresh\n- Place orders with a mandatory confirmation step\n- Track active order status and delivery progress\n- Persistent sessions — stay logged in across restarts\n\n## Installation\n\n```bash\nnpm install -g @striderlabs/mcp-ubereats\n```\n\nOr run directly with npx:\n\n```bash\nnpx @striderlabs/mcp-ubereats\n```\n\n## Configuration\n\nAdd to your MCP client configuration (e.g., Claude Desktop `~/Library/Application Support/Claude/claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"ubereats\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@striderlabs/mcp-ubereats\"]\n    }\n  }\n}\n```\n\n## Authentication\n\nThis connector uses Playwright browser automation. On first use:\n\n1. Call `ubereats_status` — it will return a login URL\n2. Open the URL in your browser and log in to Uber Eats\n3. Run `ubereats_status` again to verify the session was saved\n4. Session cookies are stored at `~/.strider/ubereats/cookies.json`\n5. Sessions persist automatically across restarts\n\nTo log out or reset your session:\n\n```\nubereats_logout\n```\n\n## Available Tools\n\n### Session Management\n\n| Tool | Description |\n|------|-------------|\n| `ubereats_status` | Check login status; returns login URL if not authenticated |\n| `ubereats_login` | Get the login URL to open in a browser |\n| `ubereats_logout` | Clear stored session cookies (log out) |\n\n### Delivery\n\n| Tool | Description |\n|------|-------------|\n| `ubereats_set_address` | Set delivery address before searching |\n\n### Restaurants & Menus\n\n| Tool | Description |\n|------|-------------|\n| `ubereats_search` | Search restaurants by name, food type, or cuisine |\n| `ubereats_get_restaurant` | Get restaurant details and full menu |\n\n### Cart & Ordering\n\n| Tool | Description |\n|------|-------------|\n| `ubereats_add_to_cart` | Add an item to cart with quantity and special instructions |\n| `ubereats_view_cart` | View current cart contents and totals |\n| `ubereats_clear_cart` | Remove all items from cart |\n| `ubereats_checkout` | Preview or place the order (`confirm=true` to place) |\n| `ubereats_track_order` | Track an active order's status and ETA |\n\n## Example Usage\n\n### Check login status\n\n```json\n{\n  \"tool\": \"ubereats_status\"\n}\n```\n\n### Set delivery address\n\n```json\n{\n  \"tool\": \"ubereats_set_address\",\n  \"arguments\": {\n    \"address\": \"123 Main St, San Francisco, CA 94102\"\n  }\n}\n```\n\n### Search for restaurants\n\n```json\n{\n  \"tool\": \"ubereats_search\",\n  \"arguments\": {\n    \"query\": \"sushi\",\n    \"cuisine\": \"japanese\"\n  }\n}\n```\n\n### Get restaurant menu\n\n```json\n{\n  \"tool\": \"ubereats_get_restaurant\",\n  \"arguments\": {\n    \"restaurantId\": \"nobu-restaurant-sf\"\n  }\n}\n```\n\n### Add to cart\n\n```json\n{\n  \"tool\": \"ubereats_add_to_cart\",\n  \"arguments\": {\n    \"restaurantId\": \"nobu-restaurant-sf\",\n    \"itemName\": \"Spicy Tuna Roll\",\n    \"quantity\": 2,\n    \"specialInstructions\": \"No wasabi please\"\n  }\n}\n```\n\n### Preview order before placing\n\n```json\n{\n  \"tool\": \"ubereats_checkout\",\n  \"arguments\": {\n    \"confirm\": false\n  }\n}\n```\n\n### Place the order\n\n```json\n{\n  \"tool\": \"ubereats_checkout\",\n  \"arguments\": {\n    \"confirm\": true\n  }\n}\n```\n\n### Track order\n\n```json\n{\n  \"tool\": \"ubereats_track_order\",\n  \"arguments\": {\n    \"orderId\": \"abc123\"\n  }\n}\n```\n\n## Typical Workflow\n\n```\n1. ubereats_status          — check if logged in\n2. ubereats_set_address     — set where to deliver\n3. ubereats_search          — find restaurants\n4. ubereats_get_restaurant  — browse the menu\n5. ubereats_add_to_cart     — add items\n6. ubereats_view_cart       — review cart\n7. ubereats_checkout        — preview (confirm=false), then place (confirm=true)\n8. ubereats_track_order     — track delivery\n```\n\n## Requirements\n\n- Node.js 18+\n- Playwright (Chromium browser auto-installed on first run)\n- An active Uber Eats account with a saved payment method\n\n## How It Works\n\n1. **Headless Chrome** — Playwright runs a real browser in the background\n2. **Stealth mode** — Browser fingerprint mimics a real user to avoid detection\n3. **Cookie persistence** — Login sessions are saved and reloaded automatically\n4. **Structured responses** — All tool outputs are JSON for easy parsing\n\n## Security\n\n- Session cookies stored locally at `~/.strider/ubereats/cookies.json`\n- No credentials are stored — authentication uses the browser-based Uber login flow\n- Cookies never leave your machine\n\n## Limitations\n\n- Uber Eats must be available in your region\n- Menu customizations (modifiers, options) may require additional interaction\n- Order placement requires a valid payment method on your Uber Eats account\n- Dynamic pricing and availability may differ from what is displayed\n\n## Development\n\n```bash\ngit clone https://github.com/markswendsen-code/mcp-ubereats.git\ncd mcp-ubereats\nnpm install\nnpm run build\nnpm start\n```\n\n## License\n\nMIT © [Strider Labs](https://striderlabs.ai)\n\n## Related\n\n- [@striderlabs/mcp-doordash](https://www.npmjs.com/package/@striderlabs/mcp-doordash) — DoorDash MCP connector\n- [@striderlabs/mcp-gmail](https://www.npmjs.com/package/@striderlabs/mcp-gmail) — Gmail MCP connector\n- [Model Context Protocol](https://modelcontextprotocol.io) — Learn more about MCP\n",
  "bytes": 5824,
  "sha": "42834c52cb1500fecc0351242e4dad6ad77c5fb3c530cf60f1c957f5542de3ab",
  "repo_slug": "markswendsen-code/mcp-ubereats",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_markswendsen_code_ubereats_2c576ab8/readme"
}