yaseo
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| YASEO_DB | No | Path to the SQLite database file. | ~/.local/share/yaseo/yaseo.db |
| YASEO_RATES | No | Path to a custom tariff file for cost estimation. | |
| YASEO_DOMAIN | No | Domain of your site for tracking positions. If not set, the first project domain from the database is used. | |
| YC_FOLDER_ID | Yes | Your Yandex Cloud folder ID, required for Yandex Search API. | |
| YASEO_ENV_FILE | No | Path to a custom environment file containing API keys. | |
| YASEO_USE_PROXY | No | Set to '1' to route Yandex requests through the system proxy. | 0 |
| YASEO_ALLOW_PRIVATE | No | Set to '1' to allow scanning private/local addresses (localhost, 10.0.0.0/8, 192.168.0.0/16, etc.). | 0 |
| YASEO_RATE_WORDSTAT | No | Custom cost per single Wordstat call, in rubles. | |
| YASEO_TRACKING_FILE | No | Path to the tracking settings file. | ~/.config/yaseo/tracking.json |
| YASEO_RATE_SEARCH_API | No | Custom cost per single Search API call, in rubles. | |
| YANDEX_AI_STUDIO_API_KEY | Yes | Your API key from Yandex AI Studio, required for Yandex Search API. | |
| YASEO_ARTICLES_MAX_CALLS | No | Maximum number of Search API calls allowed for article checking. | 100 |
| YASEO_TRACKING_MAX_CALLS | No | Maximum number of Search API calls allowed per tracking run. | 1000 |
| YASEO_TRACKING_MIN_INTERVAL_DAYS | No | Minimum number of days between tracking runs for the same domain. | 13 |
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
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Проверить конфигурацию yaseo: откуда взяты ключи, каких не хватает и где их взять, путь к базе, домен по умолчанию. Ничего не тратит. Вызывать первым, прежде чем тратить запросы. |
| research_keywordsA | Расширить 1–5 seed-фраз через Wordstat: частотность и связанные запросы по РФ. Основной инструмент подбора семантики. |
| get_keyword_metricsA | Частотность и конкурентность для списка запросов (до 25). Конкурентность считается по составу выдачи Яндекса, ссылочный вес не учитывается. |
| get_serp_resultsC | Живая выдача Яндекса по одному запросу: позиции, домены, заголовки, глубина URL, число страниц домена по теме. |
| find_serp_competitorsC | Кто повторяется в выдаче по набору запросов (до 10) — поисковые конкуренты с разделением на сайты и крупные площадки. |
| get_competitionC | Конкурентность запросов с полным разбором по факторам и доказательствами. Использовать, когда нужно понять, ПОЧЕМУ запрос сложный. |
| build_briefA | Разведка перед написанием статьи: частотность, конкурентность, состав топ-10, повторяющиеся форматы заголовков, разрывы и связанные запросы. Вызывать до того, как писать бриф копирайтеру. |
| track_queryC | Поставить запросы на регулярное отслеживание позиций или снять их. Отслеживаемые запросы использует run_tracking. |
| run_trackingA | Снять текущие позиции по отслеживаемым запросам и записать замер в историю. Здесь тратятся запросы к Search API. Прогон останавливается ДО первого запроса и ничего не тратит, если обращений вышло бы больше потолка (YASEO_TRACKING_MAX_CALLS) или домен уже мерили недавно (YASEO_TRACKING_MIN_INTERVAL_DAYS) — в обоих случаях ответ говорит, сколько нужно и как снять ограничение на этот раз (параметр now). |
| get_positionsA | Текущие позиции домена с дельтой к прошлому замеру и списком выросших и просевших запросов. Данные из истории, новых запросов к API не делает. |
| get_position_historyC | История позиций домена по одному запросу и динамика конкурентности этого запроса. |
| audit_siteB | Технический аудит сайта: индексация, метаданные, заголовки, канонические адреса, разметка, перелинковка. Каждая находка с доказательством. |
| check_articlesB | Снять позиции статей блога по их целевым запросам: вышла ли ИМЕННО эта статья, или вместо неё другая наша страница (каннибализация), или ничего. Здесь тратятся запросы к Search API. |
| get_article_effectivenessA | Отчёт по статьям блога: вердикт и дельта по последнему замеру, отдельно список каннибализаций. Данные из истории, новых запросов к API не делает. |
| get_storage_statsB | Что накоплено в базе yaseo: снимки, замеры позиций, история конкурентности, самые частые домены выдачи. |
| expand_query_poolA | Предложить новые запросы в пул отслеживания по seed-фразе через Wordstat. По умолчанию показывает кандидатов с причиной по каждому; записывает при apply=true. |
| get_competitor_keywordsA | По каким запросам конкурент выходит в топ и где нас рядом нет. Строится из накопленных снимков выдачи, новых запросов к API не делает. |
| get_action_planA | План правок сайта по приоритету: индексация, быстрые выигрыши (по Вебмастеру позиция 4–15, по трекеру 4–10: трекер снимает топ-10), сниппет (показы без кликов), каннибализация, ИИ-поиск, разрывы с конкурентами, остальное. Каждый пункт — с доказательством и датой замера, готовой инструкцией для Claude или разработчика, способом проверки и сроком, раньше которого эффект не проверять. Строится из аудита и проверки готовности (HTTP к самому сайту) и из того, что уже лежит в базе: позиции, выгрузки Вебмастера, статьи, снимки выдачи. Платных запросов не делает; чего нет в базе, того нет в плане — вместо этого называет инструмент и смету. |
| geo_providersA | Какие провайдеры ИИ-ответов настроены (Яндекс, Perplexity, OpenAI, Gemini, Claude), каких ключей не хватает и где их взять, сколько стоит вызов. Ничего не тратит. Вызывать первым перед проверкой видимости. |
| geo_check_visibilityA | Цитирует ли ИИ-поиск сайт: задаёт запросы провайдерам и смотрит, есть ли домен среди источников ответа, каким адресом и на каком месте, кого цитируют вместо. Без confirm=true возвращает только смету (Яндекс 5,08 ₽ за запрос, зарубежные — по тарифу аккаунта). С confirm=true тратит деньги и пишет результат в историю. |
| geo_historyA | История проверок видимости в ИИ-ответах по домену или запросу: сколько раз процитирован, доля, частые конкуренты. Ничего не тратит. |
| geo_readinessB | Готовность сайта к ИИ-поиску без ключей: llms.txt по спецификации llmstxt.org, llms-full.txt, доступ ИИ-ботов в robots.txt (GPTBot, OAI-SearchBot, PerplexityBot, ClaudeBot, Google-Extended, YandexAdditional и др.), JSON-LD, FAQ-разметка, Markdown-версии страниц. Каждая находка — с доказательством и тем, что сделать. Ничего не тратит. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 22 tools
Most tools have clearly distinct purposes, with descriptions clarifying whether they operate on live data, history, or configuration. A few pairs like get_competition vs get_keyword_metrics both mention competition but differ in depth and batch size, making them distinguishable with careful reading. Overall, an agent can reliably select the right tool.
The majority follow a get_* pattern for retrieval actions, but there are also action-oriented names like build_brief, track_query, run_tracking, and check_articles, plus a geo_* sub-family. This mixed convention is readable and generally predictable, though not perfectly uniform.
At 22 tools, the server is on the heavier side, exceeding the typical well-scoped range of 3–15. However, each tool addresses a distinct SEO concern—from research to tracking to AI visibility—so the count is justifiable despite feeling dense.
The tool surface covers the full SEO lifecycle: keyword research, SERP analysis, position tracking, site audit, article performance, competitor analysis, AI search readiness, and an action plan. No critical operations appear missing for the server's stated purpose, making it a complete toolkit.