loading…
Search for a command to run...
loading…
Enables AI assistants to interact with AnyList for managing shopping lists, recipes, and meal planning. Users can retrieve recipe details, add ingredients to li
Enables AI assistants to interact with AnyList for managing shopping lists, recipes, and meal planning. Users can retrieve recipe details, add ingredients to lists, and schedule meals on their AnyList calendar.
A Model Context Protocol (MCP) server that connects AI assistants to AnyList — giving them access to your shopping lists, recipes, and meal plans.
Clone this repository:
git clone <this-repo> anylist-mcp
cd anylist-mcp
Install dependencies:
npm install
Build:
npm run build
The server requires your AnyList credentials as environment variables:
| Variable | Description |
|---|---|
ANYLIST_EMAIL |
Your AnyList account email |
ANYLIST_PASSWORD |
Your AnyList account password |
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"anylist": {
"command": "node",
"args": ["/path/to/anylist-mcp/dist/index.js"],
"env": {
"ANYLIST_EMAIL": "[email protected]",
"ANYLIST_PASSWORD": "your-password"
}
}
}
}
Run the server via stdio transport:
[email protected] ANYLIST_PASSWORD=secret node dist/index.js
Or for development:
[email protected] ANYLIST_PASSWORD=secret npm run dev
| Tool | Description |
|---|---|
get_lists |
List all shopping lists with item counts |
get_list_items |
Get all items on a specific list |
add_item_to_list |
Add a freeform item to a list (with duplicate checking) |
add_ingredient_to_list |
Add a recipe ingredient to a list with proper categorization |
| Tool | Description |
|---|---|
get_recipes |
List all recipes, optionally filtered by name |
get_recipe_details |
Get full recipe details including ingredients and steps |
| Tool | Description |
|---|---|
add_recipe_ingredients_to_list |
Add all ingredients from a recipe to a list |
add_ingredients_to_list |
Batch add ingredients from multiple recipes to a list |
| Tool | Description |
|---|---|
get_meal_plan |
Get meal plan events for a date range (defaults to current week) |
add_meal_plan_event |
Schedule a recipe or event on a specific day |
add_item_to_listAdd a freeform item to a shopping list. If the item already exists and is checked off, it will be unchecked instead of duplicated.
item_name (required) — Name of the itemlist_name (required) — Target list namequantity (optional) — e.g. "2 lbs", "3"add_ingredient_to_listAdd a specific ingredient from a recipe to a shopping list. Uses AnyList's ingredient handler for proper categorization, and matches against existing or recently used items.
recipe_name or recipe_id (one required) — The recipe to pull fromingredient_name (required) — Ingredient name (case-insensitive, partial match)list_name (optional, default: "Groceries") — Target listadd_recipe_ingredients_to_listAdd all ingredients from a single recipe to a list. Handles duplicates: skips items already present, unchecks previously checked-off items.
recipe_name or recipe_id (one required)list_name (optional, default: "Groceries")add_ingredients_to_listBatch version — add ingredients from multiple recipes at once. Deduplicates across recipes.
recipe_names or recipe_ids (one required, array)list_name (optional, default: "Groceries")get_recipe_detailsGet full recipe details including ingredients (with name, quantity, and notes) and preparation steps.
recipe_name or recipe_id (one required)add_meal_plan_eventSchedule a recipe or titled event on the meal plan calendar.
date (required) — YYYY-MM-DD formatrecipe_name or recipe_id (optional) — Recipe to scheduletitle (optional) — Event title (used if no recipe, or as override)label (optional) — e.g. "Breakfast", "Lunch", "Dinner"ISC
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"anylist-mcp-server": {
"command": "npx",
"args": []
}
}
}