Yandex Audience MCP
A1 Яндекс Аудитории MCP
Yandex Audience MCP: CRM segments, look-alike audiences, pixels and access management with Yandex login right in chat
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 irreversibly delete a segment or change someone else's access to it
- Uploads personal data from a CRM: emails, phone numbers and hashed identifiers
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/a1-yandeks-auditorii-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 --env 'YANDEX_AUDIENCE_TOKEN=<your YANDEX_AUDIENCE_TOKEN>' mcp-yandex-audience -- npx -y mcp-yandex-audience@1.1.1Or add to the file .mcp.json, in the project
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
code --add-mcp '{"name":"mcp-yandex-audience","type":"stdio","command":"npx","args":["-y","mcp-yandex-audience@1.1.1"],"env":{"YANDEX_AUDIENCE_TOKEN":"<your YANDEX_AUDIENCE_TOKEN>"}}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"mcp-yandex-audience": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
codex mcp add mcp-yandex-audience --env 'YANDEX_AUDIENCE_TOKEN=<your YANDEX_AUDIENCE_TOKEN>' -- npx -y mcp-yandex-audience@1.1.1Or add to the file ~/.codex/config.toml, for all projects
[mcp_servers.mcp-yandex-audience]
command = "npx"
args = ["-y", "mcp-yandex-audience@1.1.1"]
env = { YANDEX_AUDIENCE_TOKEN = "<your YANDEX_AUDIENCE_TOKEN>" }If the file already exists, append the block to the end.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"mcp-yandex-audience": {
"type": "local",
"command": [
"npx",
"-y",
"mcp-yandex-audience@1.1.1"
],
"environment": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"mcp-yandex-audience": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-audience@1.1.1"
],
"env": {
"YANDEX_AUDIENCE_TOKEN": "<your YANDEX_AUDIENCE_TOKEN>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
YANDEX_AUDIENCE_TOKENsecret, required- Yandex OAuth token, sent as `Authorization: OAuth …`. Treat it as a secret.
YANDEX_AUDIENCE_API_HOSToptional- API host override (https://api-audience.yandex.com for international accounts).
YANDEX_AUDIENCE_TIMEOUT_MSoptional- Per-request timeout in milliseconds.
YANDEX_AUDIENCE_MAX_RETRIESoptional- Retries on 429 (5xx/network retried for GET only).
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add the server: claude mcp add --transport stdio --scope user yandex-audience -- npx -y mcp-yandex-audience@latest, then tell the agent to connect Yandex Audience and complete the Yandex login.
Other ways from the author
claude mcp add --transport stdio --scope user yandex-audience -- npx -y mcp-yandex-audience@latestNo token needed in advance; Yandex login happens in chat after connecting.
This is third-party code. Review the repository files before installing.
What it does
The server gives the agent 20 tools for Yandex Audience segments, pixels and access rights. Account connection happens right in the chat via OAuth with PKCE: Yandex sends a one-time code, the token is stored locally with owner-only permissions and refreshes itself. The agent can list segments and pixels with their reach, upload a CRM file with emails, phones or hashed identifiers as a segment in two steps, build a look-alike or pixel-based audience, and grant or revoke a colleague's access. File upload and parameter confirmation are separate steps: processing only starts after an explicit second step. The raw_request tool gives direct access to the remaining API methods for technical operations like restoring a pixel.
Who it is for. For marketers and agencies who build and update Yandex Audience segments for ad campaigns from an agent chat.
Good fit when
- You want to see which segments and pixels already exist and their status
- You need to upload a customer list from your CRM as a new segment
- You need a look-alike audience based on an existing segment, or to grant agency access
Not a fit when
- You need to manage Yandex Direct campaigns and bids: this server does not touch that
- Your segment has fewer than 100 records: Audience will not accept it into Direct until it grows
- You need MD5-hashed data: the API only accepts SHA256
Example request
Upload buyers.csv as a segment called Buyers 2026 and show its parameters before starting processingLimitations
Segment deletion is irreversible; pixel restoration is only available via raw_request as a separate API method. Minimum 100 records and a maximum of 1 GB per segment. Quotas: 30 requests per second per IP, 5,000 per day per login, and segment create/update capped at 10 per minute, 100 per hour, 500 per day. The server does not merge upload and confirmation into one call and does not auto-retry write operations after a failure.
How to disable. Tell the agent to disconnect Audience, or remove the yandex-audience block from your client config, then revoke access in Yandex ID.
MCP
- Transport
- stdio
- Authentication
- OAuth
| Environment variables | |
|---|---|
| YANDEX_AUDIENCE_TOKEN secret | A ready OAuth token for CI, takes priority over in-chat login |
| YANDEX_AUDIENCE_OAUTH_CLIENT_ID | Client ID of your own OAuth app instead of the A1-x-Tech app |
| ASKADS_TELEMETRY | Set to 0 to disable anonymous usage telemetry |
Security check
- Can irreversibly delete a segment or change someone else's access to it
- Uploads personal data from a CRM: emails, phone numbers and hashed identifiers
README in short
The README goes into detail on the in-chat OAuth-with-PKCE flow, a table of what can change data with irreversible actions explicitly flagged, ready instructions for Codex, Claude Code, Claude Desktop, Cursor and VS Code, and a section on anonymous telemetry disabled via ASKADS_TELEMETRY. It separately covers CRM file formats, the 100-record minimum and Yandex Audience API quotas.
FAQ
Do I need a token in advance?
No, connection happens right in chat via a one-time Yandex OAuth code; a ready token is only needed for CI via the YANDEX_AUDIENCE_TOKEN variable.
What happens when a segment is deleted?
Deletion is irreversible. A pixel can be restored via a separate API method through raw_request.
Related
A skill that strips AI writing tells from text using Wikipedia's list, without adding invented facts
Marketing Skills for AI agents
Marketing Skills for AI Agents
About fifty skills for CRO, copywriting, SEO, analytics, ads and launches, built for coding agents
SendPulse MCP server
SendPulse MCP
SendPulse's official remote MCP server: statistics, campaigns and user data through an agent chat
Yandex Direct MCP generated from a machine-readable schema
yandex-direct-mcp
An MCP server and CLI covering all 113 Yandex Direct API v5 methods generated from WSDL, exposing 9 read tools by default and writes only on demand