Yandex Lavka MCP vs Exa MCP Server
A side-by-side look at the Yandex Lavka MCP and Exa MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Yandex Lavka MCP for delivery work as a local process; choose Exa MCP Server for search & data extraction as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Yandex Lavka MCP when
- You need dedicated capabilities in the Delivery domain.
- You prefer a local stdio subprocess transport.
- Its auth model fits you: other.
- You want tools like
lavka_status, set_location, list_addresses.
Choose Exa MCP Server when
- You need dedicated capabilities in the Search & Data Extraction domain.
- You prefer a local stdio subprocess transport.
- Its auth model fits you: No auth required.
- You want tools like
web_search_exa, web_fetch_exa.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Delivery | Search & Data Extraction |
| Quality signal | 63/100 · Good | 73/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | other | No auth required |
| Pricing | Free | Free |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 24 | 5,150 |
| Directory activity | 3 views 0 installs 0 upvotes | 10 views 0 installs 0 upvotes |
| Tools | 17 | 2 |
| Full listing | View Yandex Lavka MCP | View Exa MCP Server |
Tools & capabilities
Yandex Lavka MCP tools 17
lavka_statusShow whether the Lavka session and delivery location are configured. Read-only. Call this first to check setup before other tools.set_locationSet the delivery location (required before catalog/cart calls). Provide either lat+lon coordinates or a saved address_id. Persists to config.list_addressesList your saved Lavka delivery addresses (by name). Read-only. Use a returned `label` with use_address to switch delivery to that place.use_addressSwitch delivery to one of your saved addresses, matched by name. Catalog, cart and prices are location-scoped, so this re-points everything. A saved address carries city/street/house; pass flat/entrance/comment if the order needs them.set_delivery_addressSet delivery to ANY address by free text — works for a new city. Resolves the address to coordinates + city/street/house via Lavka's own geo search. Example: set_delivery_address("Казань, улица Баумана, 1", flat="12").search_productsSearch the Lavka catalog at the current delivery location. Read-only. Each result has an `id` (use it with add_to_cart) and a `slug`; get_product takes either.get_productGet one product: price, size, stock, description, nutrition. Read-only. `product` is an `id` or `slug` from a search result, or a Lavka link (a lavka.yandex.ru/good/... page or a shared ...?item=<id> link). `nutrition` is the КБЖУ block exactly as the product card shows it, numbers as Lavka gives them (nothing recomputed), or null when the card has none (non-food items): - `per_100g`: {kcal, protein, fat, carbs} per 100 g, or null. - `per_portion`: the same per the card's other tab, with its `label` ("Всё блюдо", "На упаковку", "На 50 г", ...), or null if the card has only one tab. - `default_basis`: the only tab ("per_100g" / "per_portion") when the card has one; null when it has both (Lavka doesn't say which one opens). - `portion_grams`: the portion's weight when the card states it (from the label, or the item's weight for a whole dish/pack), else null. - `warning`: null, or a note that per_portion doesn't follow from per_100g for that weight — Lavka's own data is wrong then; don't log it blindly.view_cartShow the current cart contents and running total. Read-only. The cart also reports order-readiness. Watch these: - `warning`: a plain-language problem to fix (or null). If set, act on it. - each item's `unavailable_on_depot`: true = it's in the cart but CANNOT be ordered from the current store (only in «Большая Лавка», or sold out here). - `available_for_checkout`: false = the order can't be placed as-is. Remove/replace flagged items with update_cart_item(product_id, 0) before checkout.add_to_cartAdd a product to the cart (increments if already present). No charge. `product_id` is the `id` from a search result. Pass `price` from the same search result when available (Lavka validates it on cart writes). IMPORTANT: search can return items that are only stocked in «Большая Лавка» (a different store) — they add fine but can't be ordered from the current one. After adding, check the returned cart's `warning` and each item's `unavailable_on_depot`; drop any flagged item with update_cart_item(id, 0).update_cart_itemSet the exact quantity of a cart item. quantity=0 removes it. No charge.clear_cartRemove everything from the cart. No charge.checkout_previewPreview the order: items, delivery fee, ETA, address, payment, TOTAL. Charges NOTHING. Show the returned total to the user and ask them to confirm it out loud before calling confirm_order. Always run this before confirming. If the summary has a `warning`, or `available_for_checkout` is false, or any item has `unavailable_on_depot: true`, the order will be REFUSED — fix the cart (remove/replace those items) and preview again before confirming.- +5 more on the listing page
Exa MCP Server tools 2
web_search_exaSearch the web for any topic and get clean, ready-to-use content. Best for: Finding current information, news, facts, people, companies, or answering questions about any topic. Returns: Clean text content from top search results. Query tips: describe the ideal page, not keywords. "blog post comparing React and Vue performance" not "React vs Vue". Use category:people / category:company to search through Linkedin profiles / companies respectively. If highlights are insufficient, follow up with web_fetch_exa on the best URLs.web_fetch_exaRead a webpage's full content as clean markdown. Use after web_search_exa when highlights are insufficient or to read any URL. Best for: Extracting full content from known URLs. Batch multiple URLs in one call. Returns: Clean text content and metadata from the page(s).
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
Yandex Lavka MCP
{
"mcpServers": {
"dudude-bit-yandex-lavka-mcp": {
"command": "uvx",
"args": [
"yandex-lavka-mcp"
]
}
}
}
Exa MCP Server
{
"mcpServers": {
"exa-labs-exa-mcp-server": {
"command": "npx",
"args": [
"-y",
"exa-mcp-server"
]
}
}
}
Frequently asked questions
Yandex Lavka MCP is categorized under Delivery and uses a local stdio subprocess. Exa MCP Server belongs to Search & Data Extraction and uses a local stdio subprocess. Pick Yandex Lavka MCP for delivery work and Exa MCP Server for search & data extraction.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Yandex Lavka MCP is listed as free. Auth: other. Exa MCP Server is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add dudude-bit-yandex-lavka-mcp and exa-labs-exa-mcp-server as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Yandex Lavka MCP has a quality signal of 63/100 (Good) with 3 views, 0 installs and 24 GitHub stars. Exa MCP Server has 73/100 (Great) with 10 views, 0 installs and 5,150 GitHub stars.