A1 Yandex Merchants MCP

A1 Яндекс Товары MCP

An MCP server that updates prices, discounts and product visibility in Yandex Merchants one item at a time, without rebuilding the YML feed

  • 0 ★ on the repository
  • Last commit
  • MIT
MCP server

Broad access

Why this level

  • Changes product prices and discounts, directly affecting the seller's revenue
  • Can hide and unhide products in bulk, up to 500 per request
  • After a connection failure the operation is not auto-retried, and the actual state cannot be read back through the API
All reasons and checks
Russian stack

a1-x-tech/mcp-yandex-merchants

Install

Manual install

claude mcp add --transport stdio --scope user yandex-merchants -- npx -y mcp-yandex-merchants@latest

No token is needed up front; login happens in the conversation.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • Changes product prices and discounts, directly affecting the seller's revenue
  • Can hide and unhide products in bulk, up to 500 per request
  • After a connection failure the operation is not auto-retried, and the actual state cannot be read back through the API

This is third-party code. Review the repository files before installing.

What it does

The server connects an agent to the Yandex Merchants partner API and gives it 13 actions: checking access and listing uploaded feeds, changing one product's price and discount, bulk price changes for up to 2,000 products per request, hiding and unhiding up to 500 products per request, and a direct call to any raw API method. Account connection happens right in the conversation via OAuth with PKCE: the agent gives a login link under the exact Yandex account the feed was uploaded with, the user sends a one-time code, and a token scoped to just products:partner-api is stored locally at ~/.config/mcp-yandex-merchants/credentials.json. Before sending, the server validates required fields, list sizes, id length, positive prices and the discount range, and after sending it checks the status field in the API response, since an HTTP 200 alone does not mean the write succeeded. After a connection drop, the operation is not retried automatically, because this API offers no way to read a product's current state.

Who it is for. For Yandex Merchants sellers who need to make targeted price and visibility changes without rebuilding the whole YML feed.

Good fit when

  • You need to quickly change the price or discount of one or several products without redoing the feed
  • You need to temporarily hide products, for example when out of stock, and unhide them later
  • You need a bulk price recalculation for up to 2,000 products in one call

Not a fit when

  • You need to read the current price, status or list of hidden products: the API does not expose this, the server only writes
  • You need to create, delete or reload the feed itself: that only happens in the dashboard or Webmaster, the server works on top of an already-uploaded feed

Example request

In feed 1069, prepare a new price for SKU-123: 1490 rubles instead of 1990, show me the change first

MCP

Transport
stdio
Authentication
OAuth

Environment variables

YANDEX_MERCHANTS_OAUTH_TOKEN secret
A pre-issued OAuth token scoped to products:partner-api for CI and non-interactive installs, takes priority over conversational login

Limitations

The Yandex Merchants API offers no way to read current prices, the list of hidden products, or feed status, so a change log must be kept on the user's side. Managing the feeds themselves is not possible through the server. It works only in rubles, product ids up to 50 characters, up to 2,000 prices and up to 500 hides or unhides per request, with a limit of 50,000 operations per minute. After a connection failure the write result can stay unknown, with no way to verify it through the API.

How to disable. Tell the agent to disconnect Yandex Merchants, or remove the server from your MCP client config, and revoke access in Yandex ID under security settings.

FAQ

Can a change be previewed before it's confirmed?

Yes, but confirmation depends on the AI app: ask the assistant to first prepare and show the feedId, product id and new values, then execute only with a follow-up command.

Can the current price be read before changing it?

No, the Yandex Merchants API does not return current prices or feed status; the server is write-only.

Discussion

No questions or reviews yet.

Russian stack

An MCP server and CLI for the Yandex Market Partner API: 131 actions across orders, prices, stock, shipments and reviews via a search-and-execute pattern

MCP serverBroad access1Repository stars
Russian stack

A Yandex Market Partner API MCP server for sellers: orders, returns, listings, prices, reports, reviews and chats

MCP serverBroad access3Repository stars
Russian stack

A read-only MCP for a Yandex Market seller dashboard: products, orders, prices, stock and reviews, with no write tool at all even if the key has write rights

MCP serverExtended access
Russian stack

MCP servers for Wildberries, Ozon, Yandex Market and Avito seller accounts via official APIs with write confirmation

MCP serverBroad access62Repository stars
Russian stack

Three MCP servers that search products on Wildberries, Ozon and Yandex Market through Apify actors, with caching and compact output for agent context

MCP serverExtended access5Repository stars

README in short

The Russian README describes the server as connecting an AI app to the Yandex Merchants partner API for targeted price, discount and visibility changes without rebuilding the feed. It shows an example conversation preparing and confirming a price change, a table of 13 actions flagged by whether they change data, a list of pre- and post-write checks, setup instructions for Codex, Claude Code, Claude Desktop and Cursor via npx, and the OAuth-with-PKCE mechanics scoped to just products:partner-api. A dedicated limitations section honestly lists that the API cannot read current state, works only in rubles, and does not auto-retry after a failure. It links to detailed per-tool docs in docs/capabilities.

README badge

Report a problem