PantryPilot
Integrates with Amazon Alexa+ for voice-driven pantry management and with Amazon Bedrock for generating recipes and weekly meal plans that prioritize soonest-expiring ingredients.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PantryPilotwhat can I cook tonight with what's expiring soon?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PantryPilot: an Alexa+ MCP server that fights food waste
Track: Alexa+ (self-hosted MCP server, Streamable HTTP) | Mini challenge: AWS Builder (Amazon Bedrock)
"Alexa, add six eggs that expire in ten days."
"What's expiring soon?"
"What can I cook tonight?"
"Plan my dinners for the week."
PantryPilot gives Alexa+ a persistent household pantry plus Bedrock-powered recipes that use the soonest-expiring food first — reducing food waste one voice command at a time.
Tools (all voice-first: short, speakable, no markdown)
Tool | What Alexa says |
| "Add 6 eggs that expire in 10 days" |
| "Use 2 eggs" |
| "What's in my pantry?" |
| "What's expiring this week?" |
| "What can I cook tonight?" → Bedrock (preference-aware) |
| "Add milk to my shopping list" |
| "Read my shopping list" |
| "Plan my dinners for the week" → Bedrock (preference-aware) |
| "What did I use this week?" |
| "I don't eat coriander" / "I'm vegetarian" |
| "What are my dietary preferences?" |
| "Plan pasta carbonara for Tuesday" |
| "What's on my meal plan this week?" |
Related MCP server: mealplan-mcp
Quick start (local)
# 1. Clone and set up
git clone https://github.com/abhisuman2001/pantrypilot-alexa-mcp.git
cd pantrypilot-alexa-mcp
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # macOS / Linux
pip install -r requirements.txt
# 2. Configure AWS credentials (needed for Bedrock)
cp .env.example .env # then fill in your values
# AWS_ACCESS_KEY_ID=...
# AWS_SECRET_ACCESS_KEY=...
# AWS_REGION=us-east-1
# BEDROCK_MODEL_ID=amazon.nova-micro-v1:0 (enable in Bedrock console first)
# MCP_API_KEY= # optional: leave blank for local dev
# 3. Run
.venv\Scripts\python server.py # http://localhost:8000/mcpThe server starts with CORS enabled so the web simulator works out of the box.
Web Simulator (demo asset)
Open simulator/index.html in a browser while the server is running:
file:///path/to/pantry-pilot/simulator/index.htmlFeatures:
Alexa-style voice chat UI (dark mode, animated ring)
One-click quick actions for all 9 tools
Forms for Add Item / Use Item / Add to Shopping List
🎤 Web Speech API voice input (Chrome/Edge)
Natural language parsing: "add 6 eggs expire 10 days", "what can I cook?", etc.
Settings panel: configure server URL + API key
MCP Inspector
npx -y @modelcontextprotocol/inspector
# Connect with Streamable HTTP → http://localhost:8000/mcpRun tests
.venv\Scripts\pytest tests/ -v
# 86 passedEnvironment variables
Variable | Default | Description |
|
| HTTP port |
|
| SQLite file path |
|
| Bedrock region |
|
| Model (enable in console) |
|
| Pantry owner when no header present |
| (empty) | Bearer token; empty = auth disabled |
Privacy & Terms
Served inline by the App Runner deployment:
Privacy Policy:
https://kykh233phz.us-east-1.awsapprunner.com/privacyTerms of Use:
https://kykh233phz.us-east-1.awsapprunner.com/termsHealth check:
https://kykh233phz.us-east-1.awsapprunner.com/health
Deploy (Docker → AWS App Runner)
# One-command deploy (builds, pushes to ECR, creates App Runner service):
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\deploy.ps1Live deployment:
Service URL:
https://kykh233phz.us-east-1.awsapprunner.comMCP endpoint:
https://kykh233phz.us-east-1.awsapprunner.com/mcpECR image:
448049796441.dkr.ecr.us-east-1.amazonaws.com/pantrypilot:latest
Alexa+ Registration
TODO(verify): registration steps pending — see track Resources page.
The MCP endpoint to register is: https://<your-domain>/mcpSubmission checklist
All 13 tools callable via MCP Inspector and web simulator
pytestpasses (86 tests)Bedrock called in
suggest_recipeandweekly_meal_plan(preference-aware, with offline fallback)Bearer-token auth (
MCP_API_KEY), input validation, no stack traces exposedDeployed over HTTPS —
https://kykh233phz.us-east-1.awsapprunner.com/mcpPrivacy policy and Terms of Use served at
/privacyand/termsset_preferences,schedule_meal,get_meal_scheduleadded (Step 9)Redeploy to App Runner with new tools
Demo video recorded (≤ 3 min, voice demo first) — record and link here
Devpost description written — see SUBMISSION.md
Friction log completed (+10% bonus) — see FRICTION_LOG.md (7 items, severity + workaround + suggestion each)
This server cannot be deployed
Maintenance
Related MCP Connectors
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
MCP server for Pinchwork - an agent-to-agent task marketplace with credits-based economy
Unlock the power of food transparency with our Open Food Facts MCP server. Easily look up any food
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceMCP server for MealMastery AI meal planning that enables users to manage meal plans, recipes, and grocery lists through natural language conversation with AI agents like Claude.17 npmMIT
- AlicenseBqualityDmaintenanceMCP server for meal planning and grocery list generation, enabling recipe storage, meal plan creation, and automated grocery lists with ignored ingredients.82MIT
- FlicenseAqualityDmaintenanceMCP server that provides cooking recipe lookup, classification, and weekly meal planning based on dietary restrictions and allergies.5-
- FlicenseNot gradedqualityDmaintenanceA smart pantry MCP server that gives Claude live access to your pantry ingredients, enabling ingredient tracking, recipe suggestions, and expiry management through natural language.-