yandex-marketing-mcp (skiddgoddamn/yandex-marketing-mcp) is an MCP server listed on the M8ven Trust Index. It scores 64 out of 100, grade C. It declares 160 tools. No publisher has claimed this listing.
MCP server for managing Yandex Direct advertising, Yandex Metrica analytics, Wordstat keyword research, and Yandex Webmaster SEO tools, with self-configuring OAuth; provides 153 tools for complete ad and search workflows from AI assistants.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
skiddgoddamn
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
yd_auth_statusShow Yandex auth status: whether client_id, OAuth token, and Wordstat folder_id are configured.
yd_set_client_idSave the Yandex OAuth application client_id and return the authorization link. Register an app at https://oauth.yandex.ru/client/new with scopes direct:api, metrika:read, metrika:write, cloud:auth and redirect 'Подставить URL для разработки'.
yd_set_tokenSave the Yandex OAuth access_token (obtained via the authorize link). Validated against the Metrika API before saving. Optionally set yc_folder_id for Wordstat.
yd_set_service_accountyd_set_iam_tokenStopgap: store a ready-made IAM token from `yc iam create-token`. Valid at most 12 hours — use yd_set_service_account for a permanent fix.
yd_campaigns_getGet list of campaigns. Filters: types, states, statuses, ids.
yd_campaigns_addCreate a new text campaign. Supports all strategies: PAY_FOR_CONVERSION, WB_MAXIMUM_CLICKS, WB_MAXIMUM_CONVERSION_RATE, AVERAGE_CPA, SERVING_OFF, etc.
yd_campaigns_updateUpdate campaign settings (name, budget, strategy, status, etc.).
yd_campaigns_actionSuspend, resume, archive, or unarchive campaigns.
yd_adgroups_addCreate ad groups in a campaign.
yd_adgroups_getGet ad groups by campaign or group IDs.
yd_ads_addCreate text ads in ad groups. Supports bulk creation, sitelinks, and images.
yd_ads_updateUpdate existing text ads. Can change title, text, href, sitelinks, image, etc.
yd_ads_getGet ads by campaign, ad group, or ad IDs.
yd_ads_actionModerate, suspend, resume, archive, or unarchive ads.
yd_keywords_addAdd keywords to ad groups.
yd_keywords_getGet keywords by campaign, ad group, or keyword IDs.
yd_keywords_researchDeduplicate keywords: merge duplicates, eliminate overlapping phrases. Preprocesses keywords before adding to campaigns.
yd_bids_setSet bids for keywords.
yd_reportGet campaign statistics report. Returns TSV data.
yd_dictionariesGet reference data: regions, currencies, ad categories, etc.
yd_keywords_has_volumeCheck if keywords have search volume (impressions) in specified regions. Returns YES/NO per device type. Max 10000 keywords, max 20 requests per 60 seconds.
yd_keyword_bids_getGet keyword bids and traffic forecasts.
yd_keyword_bids_setSet keyword bids (search and network).
yd_keyword_bids_set_autoSet automatic bidding for keywords based on target position or other criteria.
yd_bid_modifiers_addAdd bid modifiers (adjustments) for demographics, devices, regions, etc.
yd_bid_modifiers_getGet bid modifiers for campaigns or ad groups.
yd_bid_modifiers_setUpdate existing bid modifiers by their IDs.
yd_bid_modifiers_deleteDelete bid modifiers by IDs.
yd_negative_keywords_sets_addCreate shared negative keyword sets (max 30 total, reusable across campaigns).
yd_negative_keywords_sets_getGet shared negative keyword sets.
yd_negative_keywords_sets_updateUpdate a shared negative keyword set.
yd_negative_keywords_sets_deleteDelete shared negative keyword sets.
yd_sitelinks_addCreate sitelink sets (quick links under ads, 1-8 per set).
yd_sitelinks_getGet sitelink sets by IDs.
yd_sitelinks_deleteDelete sitelink sets.
yd_ad_extensions_addCreate ad extensions (callouts — short texts shown under ads, max 25 chars each).
yd_ad_extensions_getGet ad extensions by IDs.
yd_ad_extensions_deleteDelete ad extensions.
yd_changes_checkCheck what changed since a given timestamp (campaigns, ad groups, ads, stats).
yd_audience_targets_addAdd audience targeting conditions to ad groups (retargeting lists or interests).
yd_audience_targets_getGet audience targets by campaign, ad group, or target IDs.
yd_audience_targets_deleteDelete audience targeting conditions.
yd_retargeting_lists_addCreate retargeting/audience conditions based on Yandex Metrika goals or audience segments.
yd_retargeting_lists_getGet retargeting lists.
yd_retargeting_lists_deleteDelete retargeting lists.
yd_ad_images_addUpload ad images (base64-encoded). Max 100 per request (recommended <=3).
yd_ad_images_getGet ad images by IDs or linked entities.
yd_ad_images_deleteDelete ad images by hashes.
yd_businesses_getGet organization profiles from Yandex Business linked to ads.
yd_clients_getGet advertiser account info (settings, balance, bonuses, etc.).
yd_vcards_addAdd a VCard (business card) to a campaign.
yd_vcards_getGet VCards. Optionally filter by IDs.
yd_vcards_deleteDelete VCards by IDs.
yd_feeds_addAdd a feed for dynamic/smart/shopping ads.
yd_feeds_getGet feeds. Optionally filter by IDs.
yd_feeds_updateUpdate a feed (name, URL, auth).
yd_feeds_deleteDelete feeds by IDs.
yd_smart_targets_addAdd a smart ad target (filter) to an ad group.
yd_smart_targets_getGet smart ad targets by campaign, ad group, or target IDs.
yd_smart_targets_actionSuspend, resume, or delete smart ad targets.
yd_ads_add_dynamicCreate a dynamic text ad.
yd_ads_add_imageCreate an image ad (TextImageAd).
yd_ads_add_shoppingCreate a shopping ad (uses v501 API).
yd_videos_uploadUpload a video from a local file (base64-encoded).
yd_videos_getGet ad videos. Optionally filter by IDs.
yd_creatives_addCreate a video extension creative.
yd_creatives_getGet creatives. Optionally filter by IDs or types.
yd_callouts_linkLink callout extensions to an ad (uses v501 API).
yd_bid_modifiers_toggleEnable or disable bid modifiers.
yd_adgroups_updateUpdate an ad group (name, regions, negatives, tracking).
yd_regions_getGet regions dictionary (convenience wrapper).
yd_interests_getGet interests dictionary (convenience wrapper).
yd_excluded_sites_getGet list of excluded sites (blocked placements) for a campaign.
yd_excluded_sites_updateSet excluded sites (blocked placements) for a campaign. Replaces entire list.
yd_blocked_ips_updateSet blocked IPs for a campaign (max 25). Only exact IPs, no subnets.
yd_campaign_strategy_updateUpdate campaign bidding strategy. Change CPA, weekly limit, goal, or strategy type.
yd_metrika_counters_getList all Metrika counters. Optional search and favorite filter.
yd_metrika_counter_getGet counter details by ID.
yd_metrika_counter_createCreate a new Metrika counter.
yd_metrika_counter_updateUpdate a Metrika counter.
yd_metrika_counter_deleteDelete a Metrika counter.
yd_metrika_goals_getList goals for a counter.
yd_metrika_goal_createCreate a goal for a counter.
yd_metrika_goal_updateUpdate a goal.
yd_metrika_goal_deleteDelete a goal.
yd_metrika_segments_getList segments for a counter.
yd_metrika_segment_createCreate a segment.
yd_metrika_segment_updateUpdate a segment.
yd_metrika_segment_deleteDelete a segment.
yd_metrika_filters_getList filters for a counter.
yd_metrika_filter_createCreate a filter for a counter.
yd_metrika_filter_updateUpdate a filter.
yd_metrika_filter_deleteDelete a filter.
yd_metrika_grants_getList access grants for a counter.
yd_metrika_grant_addAdd access grant to a counter.
yd_metrika_grant_updateUpdate access grant.
yd_metrika_grant_deleteDelete access grant.
yd_metrika_reportGet a Metrika report (table).
yd_metrika_report_by_timeGet a Metrika report grouped by time.
55 further tools are not listed here. The complete surface is in the source.
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
@modelcontextprotocol/sdk has cross-client data leak via shared server/transport instance reuse
Anthropic's MCP TypeScript SDK has a ReDoS vulnerability
Model Context Protocol (MCP) TypeScript SDK does not enable DNS rebinding protection by default
YANDEX_MCP_CONFIG_DIRYANDEX_OAUTH_CLIENT_IDClient ID OAuth-приложения (seed; сохраняется через yd_set_client_id)YC_FOLDER_IDID каталога Yandex Cloud для Wordstat (seed; сохраняется через yd_set_token)YC_IAM_TOKENГотовый IAM-токен из yc iam create-token (seed; временный обходной путь)YC_SA_IDID сервисного аккаунта Yandex Cloud (seed; сохраняется через yd_set_service_account)YC_SA_KEY_IDID авторизованного ключа сервисного аккаунта (seed)YC_SA_PRIVATE_KEYПриватный ключ сервисного аккаунта в PEM (seed)YD_ALLOWED_LOGINSБелый список логинов клиентов через запятую (только для инструментов Директа)YD_API_URLYD_CONFIRMtrue — изменяющие вызовы сначала возвращают превью; для выполнения нужен confirm=trueYD_LOGINЛогин клиента по умолчанию (для агентских аккаунтов)YD_LOG_BODIEStrue — писать тела запросов и ответов в логYD_LOG_FILEПуть к лог-файлу (пусто — только stderr, файл не создаётся)YD_LOG_LEVELDEBUG / INFO / WARNING / ERROR (по умолчанию INFO)YD_OAUTH_TOKENOAuth access_token (seed; сохраняется через yd_set_token)YD_READONLYtrue — блокирует все изменяющие инструменты; только чтение и отчётыYD_SANDBOXtrue — тестовый режим Директа (sandbox)Tool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
160/160 tools missing one or more hints — yd_auth_status (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); yd_set_client_id (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); yd_set_token (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +157 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Production dependencies are patched
0 critical, 3 high severity in production deps — @modelcontextprotocol/sdk@1.12.0 (high), @modelcontextprotocol/sdk@1.12.0 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/skiddgoddamn/yandex-marketing-mcp)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check