Kitchen MCP
π³ Kitchen MCP
Your digital kitchen, powered by AI. Track what you have, discover what you can cook, and get guided through every recipe β step by step, timer by timer.
Whether you're a home cook managing a busy kitchen or a developer building AI-powered cooking assistants, Kitchen MCP gives you the structured foundation to make it real.
π What is this?
Kitchen MCP is a local-first Model Context Protocol server that connects an AI assistant to your kitchen. It knows your inventory, your recipes, your equipment, your restrictions, and your preferences β and it helps you cook better with all of it.
The AI never guesses. The server is always the source of truth.
β¨ Features
Feature | Status | Description |
π¦ Inventory Management | β | Track food by lot, location, expiry, and state (sealed, opened, cooked, frozen) |
π Recipe Engine | β | Create, version, scale, and validate recipes with ingredients, steps, and equipment |
π― Smart Matching | β | Find the best recipes based on what you have, your restrictions, and your taste |
π¨βπ³ Cooking Sessions | β | Start a session, follow guided steps, track ingredient usage, get help when things go wrong |
β±οΈ Kitchen Timers | β | Create, pause, resume, and extend timers tied to cooking steps |
π« Dietary Restrictions | β | Set allergies, intolerances, religious and ethical restrictions; server blocks unsafe recipes |
πΆοΈ Taste Preferences | β | Set spice heat, saltiness, sweetness on a 0-10 scale; recipes scored to match |
π Equipment Catalog | β | Register stoves, pressure cookers, mixers, refrigerators; server checks compatibility |
βοΈ Unit Conversion | β | Convert between grams, kilograms, milliliters, teaspoons, tablespoons, cups, and more |
π Shopping Lists | π | Generate shopping needs from recipes and current inventory |
π Meal Planning | π | Plan meals for the week based on preferences, expiry, and inventory |
β° Expiry Tracking | π | Get notified before food goes bad, use expiring items first |
π Quick Start
π Prerequisites
Node.js >= 20
npm
β¬οΈ Install
git clone https://github.com/craftpip/kitchen-mcp.git
cd kitchen-mcp
npm installβΆοΈ Run (stdio)
npm startπ Run (HTTP)
npm run dev -- --httpServer listens on http://0.0.0.0:3100/mcp.
π³ Docker
docker compose build && docker compose up -dData persists in the kitchen-mcp_kitchen-data volume.
π€ Usage with AI Assistants
Add to your MCP client (like OpenCode, Claude Desktop, etc.):
{
"mcp": {
"kitchen": {
"type": "remote",
"url": "http://localhost:3100/mcp"
}
}
}Once connected, the AI can:
Ask | What happens | |
ποΈ | "What do I have?" | Checks inventory, shows what's in stock |
π½οΈ | "What can I cook for lunch?" | Matches recipes to your inventory and preferences |
π¨βπ³ | "Start cooking the egg curry" | Creates session, guides through each step |
β±οΈ | "Set a 10-minute timer" | Creates kitchen timer, tracks it |
π¦ | "Add 1kg of rice to the pantry" | Adds inventory lot with full tracking |
π« | "I'm allergic to peanuts" | Blocks all peanut-containing recipes |
π οΈ 66 Tools
Category | π§ | What it does |
π System | 2 | Health check, capabilities |
πΊοΈ Locations | 3 | Rooms, shelves, cabinets, drawers |
π₯ Ingredients | 4 | Catalog, aliases, search |
π¦ Inventory | 7 | Lots, transactions, expiry tracking |
π Equipment | 6 | Appliances, calibration, availability |
βοΈ Measurements | 3 | Unit conversion, household containers |
π Recipes | 9 | CRUD, versioning, scaling, availability |
π« Restrictions | 3 | Allergies, intolerances, dietary rules |
πΆοΈ Preferences | 3 | Spice heat, saltiness, sweetness |
π― Matching | 1 | Recipe scoring engine |
π¨βπ³ Sessions | 16 | Cooking lifecycle, step tracking |
β±οΈ Timers | 9 | Kitchen timers with full control |
ποΈ Architecture
Kitchen MCP follows a strict principle: the server is the authority.
ποΈ SQLite with WAL mode for reliability
π All state changes go through structured tools
π Recipe versions are immutable once used in sessions
π¦ Inventory deductions happen via transactions, never direct overwrites
π Every action is audit-logged
The AI interprets natural language, picks the right tools, and explains results. The server stores facts, validates requests, and enforces rules. Neither side does the other's job.
π§βπ» Development
# Typecheck
npx tsc --noEmit
# Build
npm run build
# Test
npm test
# Dev (HTTP mode)
npm run dev -- --httpπ Project Structure
src/
βββ π οΈ server/tools/ # 13 tool files, 66 tools
βββ ποΈ domain/ # Services and types per domain
βββ βοΈ infrastructure/ # Database, audit, idempotency, logging
βββ π¦ shared/ # Response envelope, errors, IDs, timeπ License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/craftpip/kitchen-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server