Install
$ agentstack add mcp-ivo-toby-mcp-picnic ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
[](https://mseep.ai/app/ivo-toby-mcp-picnic)
MCP Picnic - AI-Powered Grocery Shopping Assistant
[](https://smithery.ai/server/@ivo-toby/mcp-picnic)
An intelligent Model Context Protocol (MCP) server that enables AI assistants to interact with Picnic, the online supermarket delivery service. This server transforms your AI assistant into a smart grocery shopping companion that can help you plan meals, manage your shopping cart, track deliveries, and optimize your grocery shopping experience.
What is MCP Picnic?
MCP Picnic is a bridge between AI assistants (like Claude, ChatGPT, or other MCP-compatible tools) and Picnic's grocery delivery service. It provides:
- 🛒 Smart Shopping: Search products, manage your cart, and place orders through natural conversation
- 🍽️ Meal Planning: Get AI-powered meal plans with automatic shopping list generation
- 💰 Budget Management: Shop within your budget with cost-conscious recommendations
- 🚚 Delivery Tracking: Monitor your orders and optimize delivery schedules
- 🥗 Dietary Support: Find products that match your dietary restrictions and health goals
- 📱 Complete Integration: Access all Picnic features through your AI assistant
Supported Countries
- 🇳🇱 Netherlands
- 🇩🇪 Germany
- 🇫🇷 France
Key Features
🤖 AI-Powered Shopping Tools
- Product Search: Find any product in Picnic's catalog
- Cart Management: Add, remove, and modify items in your shopping cart
- Order Tracking: Monitor delivery status and driver location
- Account Management: Access your profile, payment methods, and order history
🎯 Intelligent Prompts
- Meal Planner: Create weekly meal plans with automatic shopping lists
- Budget Shopping: Stay within budget while maintaining quality
- Quick Dinners: Find fast meal solutions for busy schedules
- Healthy Eating: Get nutrition-focused product recommendations
- Special Occasions: Plan for parties, holidays, and gatherings
- Pantry Restocking: Maintain essential household supplies
- Recipe Recreation: Find ingredients for specific recipes
- Dietary Substitutions: Get alternatives for dietary restrictions
How to Use
Prerequisites
- A Picnic account (available in Netherlands, Germany, or France)
- An MCP-compatible AI assistant (Claude Desktop, Continue, etc.)
- Node.js 18+ installed on your system
Quick Start
- Install the server:
npm install -g mcp-picnic
- Configure Claude Desktop to use the MCP server:
macOS: Edit ~/Library/Application Support/Claude/claude_desktop_config.json Windows: Edit %APPDATA%\Claude\claude_desktop_config.json
Add this configuration:
{
"mcpServers": {
"picnic": {
"command": "npx",
"args": ["-y", "mcp-picnic"],
"env": {
"PICNIC_USERNAME": "your-picnic-email@example.com",
"PICNIC_PASSWORD": "your-picnic-password",
"PICNIC_COUNTRY_CODE": "NL"
}
}
}
}
Important:
- Replace
your-picnic-email@example.comandyour-picnic-passwordwith your actual Picnic account credentials. - Set
PICNIC_COUNTRY_CODEto"DE"for Germany,"FR"for France, or"NL"for the Netherlands (default).
- Restart Claude Desktop completely
- Complete 2FA (if enabled on your account) - ask your MCP client/assistant to call the
picnic_generate_2fa_codetool, then provide the received code so it can callpicnic_verify_2fa_code. See the [Authentication](#authentication) section for details.
- Start using it - you should see a 🔨 hammer icon in the input area:
"I want to plan meals for this week and order groceries from Picnic"
Example Conversations
Meal Planning:
User: "Plan healthy meals for 2 people for 5 days, budget €75"
AI: I'll help you create a healthy meal plan! First, let me log into your Picnic account...
Quick Shopping:
User: "I need ingredients for pasta carbonara tonight"
AI: Let me search for carbonara ingredients on Picnic and add them to your cart...
Delivery Tracking:
User: "When is my grocery delivery arriving?"
AI: Let me check your current deliveries and their status...
Use Cases
Here are some practical scenarios where MCP Picnic can transform your grocery shopping experience:
📖 Recipe Browsing
Scenario: Picking a 20-minute recipe from the Picnic cookbook and inspecting its ingredients
User: "Show me some quick weeknight recipes from Picnic and pick a chicken one"
AI Actions:
1. Uses picnic_browse_recipes (no category) to list cookbook highlights and available category page IDs
2. Uses picnic_browse_recipes with category="20minuten" to fetch all recipes in the 20-minute category
3. Picks one with chicken from the title and uses picnic_get_recipe for the recipe id
4. Reads back the ingredients list, pantry items, cooking steps and recipe tips
5. Optionally uses picnic_save_recipe to save it for later
🍽️ Smart Meal Planning
Scenario: Planning a week's worth of healthy meals for a family of 4
User: "Plan 7 dinners for 4 people, focusing on Mediterranean diet, budget €100"
AI Actions:
1. Uses picnic_search to find Mediterranean ingredients
2. Uses picnic_get_suggestions for recipe ideas
3. Uses picnic_add_to_cart to build shopping list
4. Uses picnic_get_cart to verify total cost
5. Uses picnic_get_delivery_slots to schedule delivery
🛒 Intelligent Shopping Assistant
Scenario: Recreating a specific recipe with dietary substitutions
User: "I want to make lasagna but need gluten-free and dairy-free alternatives"
AI Actions:
1. Uses picnic_search to find gluten-free pasta
2. Uses picnic_get_suggestions for dairy-free cheese alternatives
3. Uses picnic_get_product_details to check ingredient details
4. Uses picnic_add_to_cart to add suitable products
5. Provides cooking tips and substitution ratios
📦 Delivery Optimization
Scenario: Managing multiple deliveries and tracking orders
User: "What's the status of all my orders and when will they arrive?"
AI Actions:
1. Uses picnic_get_deliveries to list all current orders
2. Uses picnic_get_delivery_position for real-time tracking
3. Uses picnic_get_delivery_scenario for driver details
4. Suggests optimal delivery slots using picnic_get_delivery_slots
5. Sends invoice emails using picnic_send_delivery_invoice_email
💰 Budget-Conscious Shopping
Scenario: Shopping within a strict budget while maintaining quality
User: "I have €50 for groceries this week, help me maximize value"
AI Actions:
1. Uses picnic_search to find budget-friendly staples
2. Uses picnic_get_product_details to inspect prices, package sizes, and promotions
3. Uses picnic_get_cart to track running total
4. Uses picnic_remove_from_cart if budget exceeded
5. Uses picnic_get_wallet_transactions to track spending patterns
🏠 Household Management
Scenario: Managing shopping lists for different family members
User: "Create separate shopping lists for weekly groceries and party supplies"
AI Actions:
1. Uses picnic_search to find weekly grocery staples
2. Uses picnic_search to find party-specific items
3. Uses picnic_get_product_details to check pack sizes and ingredients
4. Uses picnic_add_to_cart when ready to order
5. Uses picnic_get_cart to review totals before checkout
🎉 Event Planning
Scenario: Planning a dinner party for 12 guests
User: "I'm hosting a dinner party for 12 people next Saturday, help me plan"
AI Actions:
1. Uses picnic_search to find appetizer, main course, and dessert ingredients
2. Uses picnic_get_suggestions for wine pairings
3. Uses picnic_get_delivery_slots to schedule Friday delivery
4. Uses picnic_set_delivery_slot to book optimal time
5. Uses picnic_get_product_details to check product availability and sizes
🥗 Health & Dietary Management
Scenario: Managing specific dietary requirements (diabetes, allergies)
User: "Find low-carb options for a diabetic-friendly weekly menu"
AI Actions:
1. Uses picnic_search with specific dietary keywords
2. Uses picnic_get_product_details to check nutritional information
3. Uses picnic_get_suggestions for healthy alternatives
4. Uses picnic_add_to_cart for approved items only
5. Tracks nutritional goals across multiple meals
📱 Smart Reordering
Scenario: Automatically reordering household essentials
User: "Reorder my usual weekly essentials and add some new seasonal items"
AI Actions:
1. Uses picnic_get_user_details to check purchase history
2. Uses picnic_get_wallet_transactions to identify regular purchases
3. Uses picnic_search to find seasonal products
4. Uses picnic_add_to_cart for both regular and new items
5. Uses picnic_get_delivery_slots for convenient scheduling
🎯 Price Comparison & Optimization
Scenario: Finding the best value products across categories
User: "Compare prices for organic vs conventional produce this week"
AI Actions:
1. Uses picnic_search for both organic and conventional items
2. Uses picnic_get_product_details to compare prices and sizes
3. Uses picnic_get_suggestions for similar brands and products
4. Uses picnic_get_cart to compare basket totals
5. Provides detailed cost analysis and recommendations
🚚 Delivery Experience Management
Scenario: Optimizing delivery experience and providing feedback
User: "Track my delivery and rate the service quality"
AI Actions:
1. Uses picnic_get_delivery_position for real-time tracking
2. Uses picnic_get_delivery_scenario for driver communication
3. Uses picnic_rate_delivery after completion
4. Uses picnic_send_delivery_invoice_email for records
5. Uses picnic_get_order_status to confirm final order state
💳 Financial Tracking
Scenario: Managing grocery budget and payment methods
User: "Show me my grocery spending patterns and optimize my payment setup"
AI Actions:
1. Uses picnic_get_wallet_transactions for spending analysis
2. Uses picnic_get_wallet_transaction_details for detailed breakdowns
3. Uses picnic_get_payment_profile to review payment methods
4. Provides insights on spending trends and budget optimization
5. Suggests cost-saving strategies based on purchase history
These use cases demonstrate how MCP Picnic transforms simple grocery shopping into an intelligent, personalized experience that saves time, money, and effort while ensuring you never miss essential items or optimal deals.
Setup Instructions
Option 1: Install from NPM (Recommended)
# Install globally
npm install -g mcp-picnic
# Or install locally in your project
npm install mcp-picnic
Option 2: Build from Source
# Clone the repository
git clone https://github.com/ivo-toby/mcp-picnic.git
cd mcp-picnic
# Install dependencies
npm install
# Build the project
npm run build
# Link globally (optional)
npm link
Option 3: Docker / Docker Compose
# 1) Create .env with your Picnic credentials
cat > .env : YOUR_TOKEN` (defaults to `x-mcp-token`)
- Authorization header bearer token: `Authorization: Bearer YOUR_TOKEN`
Example requests:
```bash
curl -H "x-mcp-token: YOUR_TOKEN" "http://localhost:3000/mcp"
curl -H "Authorization: Bearer YOUR_TOKEN" "http://localhost:3000/sessions"
If the token is missing or invalid, the server responds with 401 Unauthorized.
MCP Client Configuration
Claude Desktop
Configuration File Locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Configuration:
{
"mcpServers": {
"picnic": {
"command": "npx",
"args": ["-y", "mcp-picnic"],
"env": {
"PICNIC_USERNAME": "your-picnic-email@example.com",
"PICNIC_PASSWORD": "your-picnic-password",
"PICNIC_COUNTRY_CODE": "NL"
}
}
}
}
Important:
- Replace the placeholder credentials with your actual Picnic account details
- Set
PICNIC_COUNTRY_CODEto"DE"for Germany,"FR"for France, or"NL"for the Netherlands (default)
Setup Steps:
- Open Claude Desktop
- Go to Claude menu → Settings (not the in-app settings)
- Click "Developer" in the left sidebar
- Click "Edit Config" to open the configuration file
- Add the configuration above
- Save the file and restart Claude Desktop
- Look for the 🔨 hammer icon in the input area
Continue (VS Code)
Add to your Continue configuration:
{
"mcpServers": [
{
"name": "picnic",
"command": "npx",
"args": ["-y", "mcp-picnic"],
"env": {
"PICNIC_USERNAME": "your-picnic-email@example.com",
"PICNIC_PASSWORD": "your-picnic-password",
"PICNIC_COUNTRY_CODE": "NL"
}
}
]
}
Note: Set PICNIC_COUNTRY_CODE to "DE" for Germany or "FR" for France. Netherlands accounts can omit this field (defaults to "NL").
Authentication
The server uses the credentials configured in your environment variables:
- Required: Set
PICNIC_USERNAMEandPICNIC_PASSWORDin your MCP configuration - Session Persistence: After successful authentication, your session is saved to
~/.picnic-session.jsonand reused across restarts. You can customize this path with thePICNIC_SESSION_FILEenvironment variable.
Two-Factor Authentication (2FA)
If your Picnic account has 2FA enabled, complete the verification flow using MCP tools:
- Call
picnic_generate_2fa_codeto send a verification code (usually SMS). - Call
picnic_verify_2fa_codewith the received OTP code.
> Important: In Docker, the server itself cannot "chat" or type the code for you. Your MCP client (Claude Desktop, Continue, etc.) must trigger these tools.
To avoid repeated 2FA challenges and container restart loops, persist PICNIC_SESSION_FILE to a Docker volume. When 2FA is pending, the server stays up so your client can complete picnic_generate_2fa_code and picnic_verify_2fa_code.
Security Note: Credentials are used only for Picnic API authentication. The session token is stored locally at PICNIC_SESSION_FILE; the password is never stored on disk.
Available Tools
The server provides comprehensive access to Picnic's functionality through 30+ specialized tools:
Authentication & Account Management
picnic_generate_2fa_code- Generate 2FA verification code (SMS/other channels)picnic_verify_2fa_code- Verify 2FA code for authenticationpicnic_get_user_details- Get current user profile informationpicnic_get_user_info- Get user information including feature toggles
Note: Authentication is handled automatically using credentials from environment variables (PICNIC_USERNAME and PICNIC_PASSWORD). No manual login is required.
Product Discovery & Search
picnic_search- Search for products by name or keywordspicnic_get_suggestions- Get product suggestions based on querypicnic_get_product_details- Get detailed information about a specific productpicnic_get_image- Get product images in various sizes (tiny to extra-large)
Note: picnic_get_categories is not available. The underlying picnic-api package removed getCategories() in v4; category browsing would need a new Fusion page implementation.
Recipe & Meal Planning
picnic_browse_recipes- Browse Picnic recipes, including category page IDs and category-specific listingspicnic_get_recipe- Get details for a specific recipepicnic_get_recipe_ingredients- Extract recipe ingredientspicnic_get_multiple_recipe_ingredients- Extract ingredients from multiple recipespicnic_build_shopping_list- Build a consolidated shopping listpicnic_find_meal_combinations- Find meal combinations within constraints- **`picnicaddrecip
…
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: ivo-toby
- Source: ivo-toby/mcp-picnic
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.