io.github.markswendsen-code/instacart MCP Server
io.github.markswendsen-code/instacart
Let AI agents search, add to cart, and place Instacart orders autonomously.
What is the io.github.markswendsen-code/instacart MCP server?
The @striderlabs/mcp-instacart MCP server enables AI agents to manage grocery shopping on Instacart by searching products, browsing stores, adding items to cart, placing orders, and tracking deliveries. It uses browser automation with persistent session management and automatic multi-factor authentication handling.
This server integrates Instacart with AI agents, allowing them to autonomously handle grocery shopping tasks. You can search for products, browse store availability, add items to cart with special instructions, place orders with delivery time selection, and track order status. It maintains encrypted persistent login sessions so agents stay authenticated across restarts.
How to install io.github.markswendsen-code/instacart
Copy-paste configuration for popular MCP clients.
INSTACART_EMAILrequiredInstacart email for authentication
INSTACART_PASSWORDrequiredsecretInstacart account password
Tools & capabilities
Tools this server exposes to the agent.
search_products— Search for products by name or category with location filteringget_store_products— Browse a store's product offerings by categoryadd_to_cart— Add items to cart with quantities and special instructionsplace_order— Place an order with delivery time, address, and special instructionstrack_order— Track order status with real-time delivery updatesinstacart_login— Authenticate with Instacart accountinstacart_status— Verify authentication status
Use cases
- Autonomously order groceries for delivery at a specified time without manual intervention
- Search for specific products across multiple stores and compare availability
- Reorder favorite items saved in your Instacart account automatically
- Place orders with special delivery instructions like "ring doorbell twice"
- Track active orders and receive real-time delivery status updates
io.github.markswendsen-code/instacart MCP server FAQ
It's an MCP server that lets AI agents like Claude autonomously manage Instacart grocery shopping—searching products, adding to cart, placing orders, and tracking deliveries using browser automation.
Yes, the server itself is MIT-licensed and free. You need an active Instacart account to place orders, which follows Instacart's standard pricing.
Add the server to your Claude Desktop config file with the npx command `npx -y @striderlabs/mcp-instacart`, then restart Claude. On first login, set `INSTACART_HEADLESS=false` to see the browser window for authentication.
No. The server uses browser automation with persistent session storage. You log in once through a visible browser window, and your encrypted session is saved locally—your password is never stored.
Yes, the server automatically handles MFA via SMS or email during login and maintains the authenticated session across restarts.
Node.js 18 or higher is required. The server is tested and compatible with Claude Desktop and Claude API (claude-3.5-sonnet and later).
README (reference)
Source of truth, from the repository.
@striderlabs/mcp-instacart
Order groceries via Instacart using AI agents
Part of Strider Labs — action execution for personal AI agents.
Get Started in 2 Minutes
For Claude Desktop Users
- Add this to your Claude Desktop config:
{
"mcpServers": {
"instacart": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-instacart"]
}
}
}
- Restart Claude.
- Tell Claude: "Order my usual groceries for delivery tomorrow morning"
Your agent can now place orders. That's it.
Installation (NPM)
npm install @striderlabs/mcp-instacart
Or with npx directly:
npx @striderlabs/mcp-instacart
Features
- 🛒 Search for products by name or category
- 📦 Browse stores and product availability
- 🏪 Add to cart with quantities and special requests
- 💳 Place orders with delivery time selection
- 📍 Track orders with real-time status
- 🔐 Persistent sessions - stay logged in across restarts
- 🔄 Automatic MFA - handles multi-factor authentication
- 📱 Per-user credentials - encrypted session storage
- ⭐ Saved items - order your favorites faster
Tested & Compatible
| Component | Version | Status |
|---|---|---|
| MCP SDK | ^1.0.0 | ✅ |
| Node.js | 18+ | ✅ |
| Claude Desktop | Latest | ✅ |
| Claude (API) | claude-3.5-sonnet+ | ✅ |
| Anthropic SDK | ^0.20+ | ✅ |
Metrics
- Weekly downloads: 271 (Apr 10-17, 2026) — Top grocery connector (+330% growth)
- Status: ✅ Live in production
- Reliability: 85%+ task completion rate
- Discovery: npm, mcpservers.org, ClawHub, PulseMCP, Glama, LobeHub
Available Elsewhere
- npm: npmjs.com/@striderlabs/mcp-instacart
- Claude Plugins: Search "Strider Labs" in Claude
- mcpservers.org: Strider Labs Instacart
- Full Strider Labs: github.com/striderlabsdev/striderlabs
How It Works
For Agents
Your agent can use these capabilities:
// Search for products
products = search_products({
query: "organic milk",
location: "San Francisco, CA"
})
// Browse a store's offerings
store_products = get_store_products({
store_id: "whole_foods_sf",
category: "Dairy"
})
// Add to cart
add_to_cart({
product_id: "organic_milk_gallon",
quantity: 2,
special_instructions: "Cold stock, please"
})
// Place an order
order = place_order({
delivery_time: "tomorrow morning",
delivery_address: "123 Main St, San Francisco, CA",
special_instructions: "Ring the doorbell twice"
})
// Track delivery
status = track_order({ order_id: order.order_id })
Session Management
- Each user has encrypted, persistent credentials
- Automatic OAuth token refresh
- MFA handling (SMS/email)
- Sessions survive agent restarts
Reliability
- 85%+ task completion rate
- Automated UI change detection (connectors update when Instacart changes)
- Fallback paths for failures
- 24/7 monitoring + alerting
Authentication
The MCP server uses a persistent browser profile (~/.strider/instacart/browser-profile) so your login session survives server restarts automatically.
First-time login
- Set
INSTACART_HEADLESS=falsein your MCP server config so the browser window is visible:
{
"mcpServers": {
"instacart": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-instacart"],
"env": { "INSTACART_HEADLESS": "false" }
}
}
}
- Restart Claude / your MCP client.
- Ask Claude to run
instacart_login— a real browser window will open. - Log in to Instacart inside that window.
- Run
instacart_statusto confirm authentication. - Remove
INSTACART_HEADLESS(or set it back totrue) and restart — the saved profile keeps you logged in.
How login detection works
Authentication is verified by navigating to /account and confirming the page resolves without a redirect to /login or /authentication (positive detection). This is more reliable than checking for the absence of a "Log in" button.
Configuration
Environment Variables
# Show browser window (required for first-time login)
INSTACART_HEADLESS=false # default: true (headless)
Self-Hosted
# Clone the repo
git clone https://github.com/striderlabsdev/mcp-instacart
cd mcp-instacart
# Install dependencies
npm install
# Start the server
npm start
# Your agent can now connect to localhost:3000
Architecture
How We Connect
This connector uses browser automation (Playwright) to interact with Instacart, because Instacart doesn't have a public API. Here's why that's safe and reliable:
- User-controlled: Your agent only accesses your own Instacart account
- Session-based: We store your login session securely, not your password
- Change-aware: We detect Instacart UI changes and alert immediately
- Fingerprinting: We use realistic browser profiles to avoid bot detection
- Rate-limited: We respect Instacart's infrastructure with appropriate delays
Security
- Credentials stored encrypted in your local
.envor secure vault - Sessions isolated per user
- No data sent to third parties
- MIT Licensed — audit the code yourself
Support
Contributing
We welcome contributions! Areas of interest:
- Bug reports and fixes
- Feature requests (new stores, categories, etc.)
- Performance improvements
- Documentation enhancements
See CONTRIBUTING.md for guidelines.
License
MIT — Free to use, modify, and distribute. See LICENSE for details.
Built by Strider Labs — Making AI agents actually useful.
Related MCP servers

io.github.markswendsen-code/kroger
MCP server for Kroger - search products, manage cart, place grocery orders

io.github.markswendsen-code/opentable
MCP server for OpenTable - let AI agents book restaurant reservations and manage dining autonomously

io.github.markswendsen-code/panera
MCP server for Panera Bread - browse menu, customize orders, place pickup

io.github.markswendsen-code/southwest
MCP server for Southwest Airlines - search flights, manage bookings

io.github.markswendsen-code/spotify
MCP server for Spotify - let AI agents control playback, search music, and manage playlists

io.github.markswendsen-code/tacobell
MCP server for Taco Bell - browse menu, customize orders, place pickup