yandex-eda-mcp
A Playwright-based MCP server for Yandex Eda: restaurant search, cart and order placement with dry-run protection against accidental payment
High risk
We rate an entry high when the tool writes to external systems, handles money, production databases or secrets, or runs arbitrary commands. The CLI installs it only with your consent.
Why this level
- Can place and pay for a real order with a real charge when confirm: true is passed
- Stores the Yandex account login session in a local browser profile
- Browser automation depends on a third-party site's layout and can break when it changes
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/yandex-eda-mcpDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
This entry is high risk, so there is no one-click install. Review the code and add the config by hand.
Run in a terminal
claude mcp add --transport stdio yandex-eda -- npx -y yandex-eda-mcpOr add to the file .mcp.json, in the project
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Run in a terminal
code --add-mcp '{"name":"yandex-eda","type":"stdio","command":"npx","args":["-y","yandex-eda-mcp"]}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"yandex-eda": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the servers key.
Run in a terminal
codex mcp add yandex-eda -- npx -y yandex-eda-mcpOr add to the file ~/.codex/config.toml, for all projects
[mcp_servers.yandex-eda]
command = "npx"
args = ["-y", "yandex-eda-mcp"]If the file already exists, append the block to the end.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"yandex-eda": {
"type": "local",
"command": [
"npx",
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcp key.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the context_servers key.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"yandex-eda": {
"command": "npx",
"args": [
"-y",
"yandex-eda-mcp"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Add the server with claude mcp add -s user yandex-eda -- npx -y yandex-eda-mcp, log into the Yandex account in the browser window that opens on first use, then the server runs headless from there on.
Other ways from the author
claude mcp add -s user yandex-eda -- npx -y yandex-eda-mcpThe recommended way via npx, no repo cloning needed, available across every project.
This is third-party code. Review the repository files before installing.
What it does
The server drives the Yandex Eda website with a headless Playwright browser in a persistent Chromium profile: login into the account happens once in a visible window, and every action after that runs headless. The tools cover the whole order flow: checking login status, picking a delivery address from saved ones or by map, searching restaurants, viewing menus, adding items to the cart, viewing the total, listing payment methods and placing the order. Ordering defaults to a dry-run mode: the server reaches the checkout button but does not click it, and an actual payment needs an explicit confirm: true parameter. Data is read primarily from the site's internal JSON API by intercepting network responses, which holds up better against layout changes than DOM selectors.
Who it is for. For people who want to delegate food ordering in their own Yandex Eda account to an agent.
Good fit when
- You want to quickly build a cart and order food through a conversation with an agent
- You want a saved delivery address without re-entering entrance and apartment details
- You need protection against accidentally confirming an order: the server does not spend money by default
Not a fit when
- You need unattended SBP payment: it requires confirmation in the banking app and the order is cancelled without payment
- You need an official API instead of browser automation: the server emulates a user's actions on the site
Example request
Find a pizza place that delivers to my home address and build a cart for two, but do not place the orderLimitations
No license is declared in the repository. The author states plainly: the project automates your own account for personal use, you must follow Yandex Eda's terms, and responsibility for charges and orders made by the automation rests with the user. The server depends on the site's layout and internal API, and changes there may require fixing selectors in src/eda.ts. The first run downloads about 150 MB of Chromium.
How to disable. Remove the server from your MCP client config and delete the ~/.yandex-eda-mcp profile folder to sign out of the account.
MCP
- Transport
- stdio
- Authentication
- not required
| Environment variables | |
|---|---|
| YANDEX_EDA_HEADLESS | Show the browser instead of headless mode; headless is on by default |
| YANDEX_EDA_AUTO_LOGIN | Automatically open the login window when the profile is not authorized |
| YANDEX_EDA_DATA_DIR | Storage folder for the browser profile and screenshots, defaults to ~/.yandex-eda-mcp |
Security check
- Can place and pay for a real order with a real charge when confirm: true is passed
- Stores the Yandex account login session in a local browser profile
- Browser automation depends on a third-party site's layout and can break when it changes
README in short
The Russian README describes the server as a Playwright wrapper with a persistent Chromium profile stored outside the code. It gives a table of 13 tools, a detailed order scenario from address to payment, the saved-address mechanics, the dry-run ordering mode, and the SBP versus card payment quirk. It lists environment variables for headless mode, timeouts, data paths and the user agent. It separately explains that data is read from the site's internal JSON API for resilience against layout changes, and includes a disclaimer that the user is responsible for automating their own account.
FAQ
Can the agent accidentally place and pay for an order?
No, place_order defaults to dry-run and only reaches the checkout button; actually sending the order requires an explicit confirm: true parameter.
Why doesn't an SBP order complete automatically?
SBP payment requires manual confirmation in the banking app, so Yandex Eda creates and then cancels such an order without payment; automatic checkout needs a card instead.
Related
An MCP server with n8n node and template knowledge: the agent picks nodes, validates configs and, with API access, creates workflows in your n8n
Zapier's official MCP plugin: the agent gets actions across thousands of apps through your Zapier account
Awesome Claude Skills by Composio
Awesome Claude Skills
A curated list of Claude skills and plugins, plus Composio's own automation skills for 78 SaaS apps
A plugin and CLI catalog for agents: generates command-line interfaces for GUI apps like GIMP and Blender and installs ready ones via CLI-Hub