Israel Grocery MCP
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., "@Israel Grocery MCP Compare prices for milk and eggs across both stores"
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.
Israel Grocery MCP
Unified Model Context Protocol (MCP) server for Israeli grocery shopping — Shufersal + Tiv Taam with cross-store price comparison, recipe-driven cart automation, and an extensible plugin architecture for future stores.
Features
Cross-store search — search both Shufersal and Tiv Taam simultaneously
Price comparison — see side-by-side pricing for any product or full recipe
Smart recipe shopping — parse any recipe, find the best deals across stores, and add items to the cheapest cart automatically
Split-cart recommendations — buy each ingredient from wherever it's cheapest and see your total savings
Preference system — set a preferred store, shopping strategy (cheapest / preferred / quality), organic preference, brand blacklisting, and more
Diagnostics tool —
diagnose()surfaces HTTP errors, response shapes, and session state
Related MCP server: Tiv Taam MCP Server
Setup
1. Install uv
curl -Ls https://astral.sh/uv/install.sh | sh2. Install dependencies
cd israelgrocery
uv sync3. Install Playwright (required for Shufersal browser login)
uv run playwright install chromium4. Configure environment (optional)
cp .env.example .env
# Edit .env as neededRunning the server
uv run israelgrocery-mcpClaude Desktop configuration
{
"mcpServers": {
"israelgrocery": {
"command": "uv",
"args": ["--directory", "/path/to/israelgrocery", "run", "israelgrocery-mcp"]
}
}
}Available MCP Tools
Tool | Description |
| Show login status for all stores |
| Log in to Tiv Taam |
| Open browser for Shufersal login |
| Live session validation |
| Shopping preferences |
| Search across stores |
| Price comparison for an item |
| View cart(s) |
| Add to a specific cart |
| Parse recipe ingredients |
| Full recipe cost comparison |
| Automated recipe shopping |
| Debug API connections |
Example prompts for Claude
"Compare prices for eggs and milk across both stores"
"I want to make shakshuka — find all the ingredients and tell me where to buy them cheapest"
"Add this pasta recipe to my Tiv Taam cart: [paste recipe]"
"Buy each ingredient from wherever it's cheapest and show me the savings"
"Search for chicken breast on both stores"
Shopping strategies
Strategy | Behaviour |
| Each item is bought from whichever store has the lower price |
| Always use your set preferred store unless it has no match |
| Prefer the highest-confidence product match regardless of price |
Adding a new store
Create
src/stores/mystore.pyimplementingBaseStoreRegister it in
src/stores/__init__.py→build_registry()Add config in
src/config.pyDone — all existing tools automatically include the new store
Running tests
uv run pytest tests/ -vAvailable Tools
14 toolsadd_recipe_to_cartA
Parse a recipe, find best-matching products, and add them to a cart.
Args:
recipe_text: Recipe text or URL.
store_id: Which store to add to ("shufersal" or "tivtaam").
If omitted, uses your preferred_store or the cheapest per item.
strategy: "cheapest" — buy each item from its cheapest store.
"preferred_store" — use your preferred_store for everything.
"single_store" — use store_id for everything (requires store_id).
confirm_all: If True, add low-confidence matches without pausing.
Inputs: recipe_text (required), store_id, strategy, confirm_all. Returns: result
add_to_cartB
Add a specific product to a store's cart.
Args:
store_id: "shufersal" or "tivtaam".
product_id: The product ID from search results.
quantity: Number of units (default: 1).
Inputs: store_id (required), product_id (required), quantity. Returns: result
check_loginA
Perform a live login check for one or all stores.
Args:
store_id: "shufersal" or "tivtaam", or omit for all.
Inputs: store_id. Returns: result
compare_pricesC
Compare prices for a product across all connected stores.
Args:
query: What you're looking for (e.g. "eggs", "chicken breast").
Inputs: query (required). Returns: result
compare_recipeA
Parse a recipe and compare ingredient prices across all connected stores.
Shows which store is cheapest overall and where to buy each item for the best deal.
Args:
recipe_text: Recipe text or URL.
Inputs: recipe_text (required). Returns: result
diagnoseA
Run a full diagnostic for one or all stores.
Shows session status, raw API response, and parsed result count.
Args:
store_id: "shufersal" or "tivtaam" — omit to check all.
test_query: Simple English word to test search (default: "eggs").
Inputs: store_id, test_query. Returns: result
login_shufersalA
Open a browser window for Shufersal login.
Complete the sign-in on shufersal.co.il and the session will be captured automatically.
Requires Playwright: run `uv run playwright install chromium` once.
Inputs: no named parameters. Returns: result
login_statusA
Show the login status for all configured grocery stores.
Inputs: no named parameters. Returns: result
login_tivtaamC
Log in to Tiv Taam with email and password.
Args:
email: Your Tiv Taam account email address.
password: Your Tiv Taam account password.
Inputs: email (required), password (required). Returns: result
plan_recipe_ingredientsB
Parse a recipe and list the ingredients that will be searched for.
Args:
recipe_text: Recipe text with ingredients list, or a URL to a recipe page.
Inputs: recipe_text (required). Returns: result
search_productsA
Search for products across all (or selected) grocery stores.
Args:
query: Search term (English or Hebrew).
stores: Limit to specific stores, e.g. ["tivtaam"] or ["shufersal", "tivtaam"].
max_results: Max results per store (default: 8).
Inputs: query (required), stores, max_results. Returns: result
set_preferencesB
Set your shopping preferences.
Args:
preferred_store: Default store ("shufersal" or "tivtaam"). None = always compare.
shopping_strategy: "cheapest" | "preferred_store" | "quality"
prefer_organic: Prefer organic products when available.
prefer_budget: Prefer sale/discounted products.
prefer_store_brand: Prefer Shufersal-brand products.
preferred_brands: Brand names to prefer (e.g. ["Tnuva", "Osem"]).
banned_keywords: Words to avoid in product names.
skip_pantry: Skip common pantry staples (salt, oil, spices) when parsing recipes.
tivtaam_branch_id: Override Tiv Taam branch ID (default: 943).
Inputs: skip_pantry, prefer_budget, prefer_organic, banned_keywords, +5 more. Returns: result
show_cartB
Show the current cart contents.
Args:
store_id: "shufersal" or "tivtaam". If omitted, shows all carts.
Inputs: store_id. Returns: result
verify_cartA
Re-check every item in the cart for live stock availability and automatically
swap out-of-stock items with the best available replacement.
Call this after adding all items to a cart to catch anything that went
out of stock between search and checkout.
Args:
store_id: Which store cart to verify. Currently supports "tivtaam".
Inputs: store_id. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 14 tools
Most tools target distinct actions (login, search, cart, recipes), but login_status, check_login, and diagnose all overlap in checking login/session status, and search_products vs compare_prices could be confused for price lookup. Descriptions help, but an agent may still hesitate between similar options.
All tools use snake_case with a consistent verb_noun pattern (login_tivtaam, search_products, add_to_cart, etc.). The lone 'diagnose' is a minor deviation but falls within the same convention and remains clear.
14 tools is at the upper end of the typical 3-15 range but still well-scoped for a multi-store grocery assistant with recipe support. Slight redundancy among the three login/session-checking tools makes the count feel marginally heavy.
Core operations like login, search, cart management, and recipe handling are covered, but there is no checkout or order-placement tool, and no way to remove or update cart items. These are notable gaps that could dead-end an agent's shopping workflow.
Maintenance
Related MCP Connectors
Free Israeli supermarket prices: Hebrew search, barcodes, branch offers in ILS and source freshness.
Turn any shopping list into a ready-to-checkout grocery cart across 26 European supermarkets.
Israeli online supermarket pricing: compare grocery prices and delivered shopping baskets.
Israeli supermarket prices, cheapest stores, baskets and your list. Sign in or free API key.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables searching for groceries and automatically adding items to cart through various grocery vendor APIs like Rami Levy and Keshet.3-
- FlicenseNot gradedqualityDmaintenanceEnables shopping at Tiv Taam grocery store through Claude, including recipe parsing and cart population.-
- AlicenseAqualityBmaintenanceEnables searching products, comparing prices, and building optimal shopping lists across major Chilean supermarkets, using your local machine to access real-time prices and loyalty deals.1468 npm67MIT
- AlicenseNot gradedqualityBmaintenanceAn MCP server that provides a queryable, agent-native layer over Israeli supermarket price transparency feeds, enabling Hebrew product search, online delivery optimization, and cross-chain price comparison.1Apache 2.0