An MCP server that gives your AI agent (Claude Code, Claude Desktop, Cursor, ChatGPT, or any other MCP client) access to your Cooklang recipe collection. Recipes stay as plain .cook and .menu files…
cook-mcp is an MCP project maintained in the cook-md/cook-mcp repository. The maintainer describes its purpose as “An MCP server that gives your AI agent (Claude Code, Claude Desktop, Cursor, ChatGPT, or any other MCP client) access to your Cooklang recipe collection…”. Read the project documentation for the complete scope.
The documented npm package is @cookmd/mcp. The configuration below comes from the maintainer’s example; adapt its paths and account values to your environment.
The example declares COOK_RECIPES_DIR. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| list_recipes | List recipes, meal plans or report templates (kind: recipe, menu, template, all) |
| read_recipe | Read a recipe or menu: source plus parsed ingredients, cookware, steps and metadata; optional scaling |
| search_recipes | Search names and contents, optionally filtered by tag |
| validate | Check a file, a folder, the whole collection, or unsaved content for errors and broken references |
| write_recipe | Save a .cook recipe (validated first) |
| write_menu | Save a .menu meal plan (validated first) |
| write_config | Save config/aisle.conf, config/pantry.conf, or a .jinja report template under reports/ or config/reports/ |
| shopping_list | Build a shopping list from recipes and/or menus: merges duplicates, groups by aisle, subtracts the pantry |
| pantry_list | Show the pantry, by section |
| pantry_expiring | Items expiring soon |
| pantry_depleted | Items at or below their low-stock threshold |
| pantry_recipes | Which recipes you can cook with what is in the pantry |
| pantry_update | Add, update or remove pantry items |
| render_report | Render a jinja report template against a recipe or menu (plain templates need no login) |
| login | Start a cook.md device login; shows a code and a URL |
| auth_status | Show login status, plan and import allowance |
| get_nutrition | Nutrition facts for one ingredient amount |
| aggregate_nutrition | Sum nutrition across many ingredient lines |
| lookup_ingredient | Fuzzy-search the ingredient catalog |
| convert_units | Convert between units (volume to mass needs a density) |
| check_category | Check whether an ingredient belongs to a category |
| branded_lookup | Look up a packaged product by barcode or text |
| reference_intakes | Daily reference-intake tables (RDA/DV) |
| import_recipe | Convert a web page, photos or pasted text to Cooklang |
{
"mcpServers": {
"cook": {
"command": "npx",
"args": [
"-y",
"@cookmd/mcp"
],
"env": {
"COOK_RECIPES_DIR": "/path/to/recipes"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| COOK_RECIPES_DIR | Declared in the maintainer’s client configuration. | Check documentation |
Control Ableton Live from Claude, Cursor or Codex with LOM tools, device knowledge and recipes.
Compose an account grouping recipe.
Compose an account grouping recipe
Compose an account grouping recipe.
Restaurant management API for meni.ge owners: manage menus, locations, orders, and settings.
Family meal planning run by your agent: weekly dinners, household votes, grocery list minus pantry.