Skip to main content
Glama
zai-one
by zai-one

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
yandex_wordstat_get_topC

Wordstat top requests + associations; num_phrases 1..2000; devices DEVICE_* list.

yandex_wordstat_dynamicsB

Get Wordstat demand over time using UTC dates YYYY-MM-DD and the server budget gate.

yandex_wordstat_regionsB

Get Wordstat demand by region for the last 30 days through the server budget gate.

yandex_wordstat_regions_treeB

Get the Wordstat region tree through Cloud credentials and the server budget gate.

yandex_serp_prepareB

Prepare an asynchronous Yandex SERP request without a live provider call.

yandex_serp_submitB

Queue an approved asynchronous Yandex SERP request.

yandex_serp_statusB

Return durable status for an asynchronous Yandex SERP job.

yandex_serp_get_resultB

Return raw provenance metadata and normalized Yandex SERP output.

direct_list_campaignsC

List Direct campaigns through the strict read allowlist.

direct_get_campaignB

Get one Direct campaign by numeric id.

direct_get_inventoryC

Run a provider-native get against the explicit Direct inventory allowlist.

direct_get_statisticsC

Read campaign statistics; returns completed TSV rows or safe offline queue status.

direct_get_goal_statisticsA

Direct Reports statistics broken down by 1-10 Metrika goals and attribution models (FCCD, LC, LSCCD, AUTO). Use for CPA/ROI by goal; for plain cost/clicks use direct_get_statistics. Goal columns: . Read-only.

direct_list_strategiesA

List Direct shared (portfolio) strategies via Strategies.get v501 with paging. For a campaign's own strategy use direct_get_campaign; type-specific fields via direct_get_inventory service=strategies. Read-only.

direct_keyword_forecastC

Forecast search-volume presence by device for phrases and regions.

direct_prepare_changesA

Draft a Direct change set and open an unaccepted, expiring approval.

The draft carries a diff hash and an approval_id. A human must accept the approval before direct_apply_changes can execute it.

direct_apply_changesA

Apply an accepted Direct change set (from direct_prepare_changes, approved by the operator) exactly once with approval_id + idempotency_key; re-reads campaigns to verify. Writes; spends units. Fails closed without approval.

direct_writeB

Idempotent non-destructive Direct write (no deletes or bid changes: use direct_prepare_write) behind the server write flag and audit log. Prefer direct_prepare_changes -> direct_apply_changes for campaign changes. Writes; spends units; confirm with the user first.

metrika_list_countersB

List Metrika counters through a server-side read-only credential.

metrika_list_goalsC

List goals for one positive Metrika counter id.

metrika_get_statisticsC

Run a bounded read-only Metrika reporting request.

metrika_apply_goalB

Autonomously create or update a Metrika goal (idempotent, readback).

Deleting a goal needs a human approval: metrika_manage_prepare(operation='goal_delete').

metrika_reportA

One-call Metrika report with optional period comparison (compare_date1/2): totals, abs/% deltas, sampling info, JSON or CSV. Use for period-over-period analysis; raw params via metrika_get_statistics. <=12 metrics, 5 dimensions, 93 days. Read-only.

webmaster_get_userA

Read the OAuth account user identifier; OAuth stays on the server.

webmaster_list_hostsB

Read one bounded page of sites accessible to the server account.

webmaster_get_hostB

Read metadata for an exact Webmaster host identifier.

webmaster_get_verificationB

Read ownership verification state without starting verification.

webmaster_get_summaryC

Read indexing and site summary; missing metrics remain missing.

webmaster_get_diagnosticsB

Read problems with native severity, presence state and state-change time.

webmaster_get_query_historyC

Read at most 31 days of aggregate or selected-query indicators.

webmaster_list_popular_queriesB

Read one page of popular queries; explicit periods are at most 31 days.

webmaster_get_indexing_historyB

Read at most 31 days of indexing history.

webmaster_list_indexing_samplesB

Read one page of indexing samples with continuation metadata.

webmaster_list_search_urlsB

Read one page of URLs in search; a sample is not the full index.

webmaster_get_search_urls_historyC

Read at most 31 days of search URL count history.

webmaster_get_search_events_historyC

Read at most 31 days of APPEARED_IN_SEARCH / REMOVED_FROM_SEARCH page counts.

webmaster_list_search_eventsC

Read one page (limit 1-100) of pages that appeared in or were removed from search.

webmaster_get_sqi_historyB

Read site quality index (SQI/ИКС) history; default and maximum period is 366 days.

webmaster_list_important_urlsB

Read one page of monitored important URLs with indexing and search status.

webmaster_get_important_url_historyB

Read change history of one monitored URL; the URL must belong to the exact host.

webmaster_list_sitemapsC

Read one sitemap page using the upstream sitemap identifier cursor.

webmaster_get_sitemapC

Read detected sitemap details or registration of a submitted sitemap.

webmaster_list_user_sitemapsB

Read one page of submitted sitemaps with an exclusive identifier cursor.

webmaster_list_external_linksC

Read one page of external link samples.

webmaster_get_external_links_historyC

Read at most 31 days of external link history.

webmaster_list_broken_linksB

Read one page of broken internal link samples.

webmaster_get_broken_links_historyB

Read at most 31 days of broken internal link history.

webmaster_list_recrawl_queueB

Read one page of asynchronous recrawl requests.

webmaster_get_recrawl_quotaB

Read the daily quota and remaining submissions.

webmaster_get_recrawl_taskB

Read IN_PROGRESS/DONE/FAILED; DONE does not prove search indexing.

webmaster_prepare_recrawlA

Prepare exactly one URL for human approval after ownership, quota and duplicate checks.

webmaster_prepare_sitemapC

Prepare one sitemap registration for expiring human approval.

webmaster_apply_recrawlB

Submit one accepted URL exactly once. Uncertain POSTs are reconciled without retransmission.

webmaster_apply_sitemapC

Submit one accepted sitemap with a durable key and registration readback.

webmaster_reconcile_actionC

Read and reconcile this principal's existing action. This tool cannot send a POST.

audience_list_segmentsB

List Audience segments visible to the server-side Audience credential.

audience_get_segmentB

Read one segment by filtering the documented authoritative segment list.

audience_list_pixelsA

List Audience tracking pixels visible to the server-side credential.

audience_get_pixelB

Read one pixel by filtering the documented authoritative pixel list.

audience_validate_createB

Validate a closed Audience create payload offline and return its immutable confirmation hash.

audience_create_geo_circleC

Run one guarded geo-circle create; uncertain outcomes are not resent.

audience_create_geo_polygonC

Run one guarded geo-polygon create; last is refused and unknowns are not resent.

audience_create_pixelC

Run one guarded tracking-pixel create; uncertain outcomes are not resent.

audience_create_pixel_viewersC

Run one guarded pixel-viewer segment create; uncertain outcomes are not resent.

audience_reconcile_createC

Reconcile one owned pending create by saved object id without sending another POST.

metrika_logs_evaluateA

Check whether a Metrika Logs API export fits the counter quota (possible, max days). Use before metrika_logs_create. source=visits (ym:s:) or hits (ym:pv:); date2 before today. Read-only.

metrika_logs_listB

List Logs API requests of a counter with status (created, processed, canceled...) and parts. Use to find request_id. Read-only.

metrika_logs_getB

Status and parts of one Logs API request; poll until status=processed, then metrika_logs_download_part. Read-only.

metrika_logs_download_partB

Preview one processed Logs API part as columns + up to max_rows (<=1000) rows; truncated=true if more. For full exports download outside chat. Read-only.

metrika_logs_createA

Create a Metrika Logs API export (spends the 10 GB per-counter quota). Run metrika_logs_evaluate and confirm with the user first; needs YANDEX_METRIKA_LOGS_ENABLED. Idempotent by key; then poll metrika_logs_get.

metrika_logs_cleanupA

Free Logs API quota: action=clean deletes prepared files of a processed request, cancel stops an unprocessed one. Irreversible; confirm first; needs YANDEX_METRIKA_LOGS_ENABLED.

direct_list_agency_clientsA

List an agency's Direct clients (Login, ClientId, ClientInfo, Currency...) via AgencyClients.get; agency tokens only. Use the Login as YANDEX_DIRECT_CLIENT_LOGIN for that client. 10 units + 1/client. Read-only.

metrika_validate_offline_conversionsA

Validate offline conversion rows locally (Target, DateTime past Unix secs, one of UserId/ClientId/Yclid/PurchaseId, Price, Currency); returns CSV preview + confirmation_hash. No API call.

metrika_upload_offline_conversionsA

Upload offline conversions to Metrika (affects goal stats and Direct optimisation). Needs the hash from metrika_validate_offline_conversions, user confirmation and YANDEX_METRIKA_WRITE_ENABLED.

metrika_list_offline_conversion_uploadsC

List offline conversion uploads of a counter (id, status, line counts, type). Read-only.

metrika_get_offline_conversion_uploadB

Status of one offline conversion upload (processing can take up to 3 hours). Read-only.

direct_get_clientA

Own Direct account info (Login, ClientId, currency, type) via Clients.get; no phones/representatives. Agencies: direct_list_agency_clients. Read-only.

direct_deduplicate_keywordsB

Merge duplicate phrases and add cross-negatives via KeywordsResearch.deduplicate before adding keywords. Up to 10000 phrases; nothing is saved. Read-only.

direct_get_dictionariesA

Direct reference dictionaries (Currencies, GeoRegions, TimeZones, Constants, Interests, AdCategories...). Use for region ids/min bids before forecasts or writes. GeoRegions is large. Read-only.

direct_check_changesB

What changed in Direct since timestamp (UTC ISO, Z) via Changes: checkCampaigns (which campaigns), check (objects in given ids), checkDictionaries. Use for incremental sync instead of re-reading everything. Read-only.

direct_get_bid_modifiersB

Bid adjustments (mobile, demographics, retargeting, regional...) by campaign/group/id; levels CAMPAIGN, AD_GROUP. Read-only.

direct_get_bidsA

Bids.get: current Bid/ContextBid plus optional search auction fields for keywords. One of campaign_ids, ad_group_ids, keyword_ids required. Monetary values are micros (×1e6). Read-only.

direct_list_ad_imagesB

AdImages.get: uploaded ad images (hash, name, type, subtype, associated). Optional hashes (≤10000) or associated YES/NO. Read-only.

direct_list_ad_extensionsC

Callout extensions (Id, Type, Status, text). Sitelinks: direct_list_sitelinks. Read-only.

direct_list_audience_targetsC

Audience targets (retargeting/interest) by Ids, AdGroupIds or CampaignIds. Read-only.

direct_list_retargeting_listsC

Retargeting and audience-selection lists (Id, Type, Name, IsAvailable). Read-only.

direct_list_creativesC

Creatives (image/HTML5/video/smart): Id, Type, Name, size. Read-only.

direct_list_feedsC

Product feeds: status, item count, update time. Read-only.

direct_list_turbo_pagesC

Turbo pages (Id, Name, Href); use Id for direct_list_leads. Read-only.

direct_list_negative_keyword_setsC

Shared negative keyword sets by Ids (required by the API). Read-only.

direct_list_ad_videosC

Ad video status by video Ids (required by the API). Read-only.

direct_get_keyword_bidsA

Current keyword bids and serving status by CampaignIds, AdGroupIds or KeywordIds (one required). Change bids via direct_write service=bids. Auction data: direct_get_bids. Read-only.

direct_list_leadsA

Turbo page leads metadata by TurboPageIds; form data (PII) only with include_data=true. Read-only.

direct_list_sitelinksC

Sitelink sets (Id + Title/Href/Description). Optional Ids filter. Read-only.

direct_list_businessesC

Yandex Business profiles (Id, Name, IsPublished, Rubric); no Phone/Address by default. Read-only.

direct_list_smart_ad_targetsC

Smart-banner feed filters (SmartAdTargets) by campaign/group/id. Read-only.

direct_list_dynamic_text_ad_targetsB

Dynamic text ad targeting conditions by campaign/group/id. Read-only.

direct_list_dynamic_feed_ad_targetsC

Dynamic feed ad filters (DynamicFeedAdTargets) by campaign/group/id. Read-only.

webmaster_get_ownersB

Verified owners of a Webmaster host (login, verification type/date). Read-only.

webmaster_list_feedsB

Product/service feeds added to a Webmaster host. Details via webmaster_get_feed. Read-only.

webmaster_get_feedB

One Webmaster feed's status and errors by feed URL. Read-only.

webmaster_get_feed_problemsC

Host-level feed problems in Webmaster (blocking offers). Read-only.

webmaster_list_regionsB

Webmaster region directory (ids for webmaster_query_analytics region_ids), filter by name. Read-only.

webmaster_query_analyticsB

Webmaster query/URL analytics with region and text/statistic filters (up to 500 rows). Deeper than webmaster_list_popular_queries. Read-only.

webmaster_get_pro_limitsA

Enhanced SERP-query export quotas for a host (GET …/pro/limits). Check before webmaster_start_pro_export. Read-only.

webmaster_list_pro_datesB

Dates available for enhanced SERP-query export (GET …/pro/serp/dates, up to ~550 days). Read-only.

webmaster_get_pro_export_statusB

Status of an enhanced export task (IN_PROGRESS / SUCCESS with url / FAILED). Read-only.

webmaster_start_pro_exportA

Start enhanced SERP-query export (POST …/pro/serp/queries/download/). Spends daily quota; needs YANDEX_WEBMASTER_WRITE_ENABLED. use_pro_tariff=true (paid) first returns an approval to accept, then pass approval_id. Poll webmaster_get_pro_export_status.

metrika_manage_readB

Documented Metrika management/report reads by operation name; args = path ids, query{...}. operation='catalog' lists all operations with docs (local). Read-only.

metrika_manage_prepareA

Open an approval for one allowlisted Metrika write/upload (args: ids, query, body, csv). Bound to principal, account and exact request; nothing is sent.

metrika_manage_applyB

Execute an accepted Metrika write once (write flag, approval_id, idempotency_key), then read back. Same key replays the stored result. Writes.

metrika_manage_reconcileB

Settle an uncertain Metrika management write by reading the provider; never resends.

webmaster_manage_readB

Documented Webmaster management/report reads by operation name; args = path ids, query{...}. operation='catalog' lists all operations with docs (local). Read-only.

webmaster_manage_prepareA

Open an approval for one allowlisted Webmaster write/upload (args: ids, query, body, csv). Bound to principal, account and exact request; nothing is sent.

webmaster_manage_applyB

Execute an accepted Webmaster write once (write flag, approval_id, idempotency_key), then read back. Same key replays the stored result. Writes.

webmaster_manage_reconcileB

Settle an uncertain Webmaster management write by reading the provider; never resends.

audience_manage_readB

Documented Audience management/report reads by operation name; args = path ids, query{...}. operation='catalog' lists all operations with docs (local). Read-only.

audience_manage_prepareB

Open an approval for one allowlisted Audience write/upload (args: ids, query, body, csv). Bound to principal, account and exact request; nothing is sent.

audience_manage_applyB

Execute an accepted Audience write once (write flag, approval_id, idempotency_key), then read back. Same key replays the stored result. Writes.

audience_manage_reconcileB

Settle an uncertain Audience management write by reading the provider; never resends.

direct_prepare_writeB

Open an approval for one allowlisted Direct write (any service/method; yandex://guide/prepare-apply).

Bound to service, method, items, account and endpoint. Nothing is sent.

direct_apply_writeB

Execute an accepted Direct write once (write flag, approval_id, idempotency_key), then read back.

Same key replays the stored result. Writes; spends units.

yandex_check_updateA

Check GitHub for a newer zai-yandex-mcp release and suggest the update command. Suggest-only, 24h cache unless force=true; never calls Yandex.

yandex_auth_statusA

Show which Yandex OAuth services have tokens (never values). Pending device-flow user_code if any. Local.

yandex_auth_startA

Start Yandex OAuth device-code flow: returns verification URL + user_code. Uses MCP URL elicitation when the client supports it. Pass client_id or set YANDEX_OAUTH_CLIENT_ID. No token in output.

yandex_auth_finishA

Poll pending device-code auth; on success write 0600 token files and hot-reload (no restart). Never returns the token. Call after the user confirms in the browser.

yandex_setup_toolsetsA

Pick Yandex platforms (direct, metrika, webmaster, audience, wordstat, serp, maps, manage) or a preset (direct-only, analytics, seo, everything) and tool_loading eager|lazy -> YANDEX_TOOLSETS + token cost. write=true saves to mcp.local.json (stdio). No secrets.

Prompts

Interactive templates invoked by user choice

NameDescription
yandex_setupFirst-run setup: ask which Yandex platforms and eager/lazy tool loading; save both.
campaign_auditAudit Yandex Direct campaigns and recommend fixes.
weekly_reportWeekly marketing report: Metrika traffic/goals + Direct spend.
seo_auditYandex Webmaster SEO health check with a fix list.
budget_scalingFind Direct campaigns that can take more budget and prepare a change.

Resources

Contextual data attached and managed by the client

NameDescription
toolsetsActive toolsets, read-only mode and the env vars to change them.
playbookHow to work with Yandex services here: flows, costs, safe writes, guides.

TDQS

C2.8/5.0

Scored across 127 tools

Disambiguation2/5

Many tools have near-overlapping purposes: generic readers like direct_get_inventory and *_manage_read duplicate specific list/get tools, while direct_prepare_write, direct_prepare_changes, direct_write, and direct_apply_changes create multiple write paths. Rich descriptions help, but with 127 tools the boundaries remain hard to keep straight.

Naming Consistency4/5

Names are overwhelmingly snake_case with verb+noun patterns grouped by service (direct_*, metrika_*, webmaster_*, audience_*). Deviations such as the yandex_* prefix for Wordstat/SERP/auth/setup and occasional noun-style names (e.g., yandex_wordstat_dynamics) are minor but prevent a perfect score.

Tool Count1/5

127 tools is an extreme mismatch for a single MCP server; it far exceeds the 50-tool threshold and will cause context bloat and selection errors. Even accounting for the multi-platform scope, the count is unreasonable.

Completeness4/5

Coverage across Direct, Metrika, Webmaster, Audience, and Wordstat is extensive, with read, write, approval, and reconciliation paths. Minor gaps remain: no maps tools appear despite being referenced in setup, and destructive operations are intentionally omitted or routed through approvals.

Maintenance

ActivityMaintained
ResponsivenessNo issues