Skip to main content
Glama

срезAI — MCP-сервер и поисковый API для ИИ-агентов

Карта сайта / Map a site

map
Read-onlyIdempotent

Собирает адреса страниц сайта: robots.txt → Sitemap:, затем /sitemap.xml и /sitemap_index.xml (включая вложенные карты), а если карт нет - ссылки со стартовой страницы. Возвращает найденные адреса, их общее число и разбивку по разделам: по ней видно, где на сайте что лежит.

Когда: известен сайт, а не страница - «собрать все события с агрегатора», «какие разделы есть на сайте», «дай мне список страниц для чтения». Когда не: нужен текст страниц - crawl (он читает найденное); нужен ответ по теме без привязки к сайту - web_search. Фильтр search сравнивает подстроку с АДРЕСОМ (страницы мы не читаем), поэтому для русских сайтов указывайте часть латинского пути: search: "organizers" вместо «организаторы». Один вызов читает до 8 карт сайта: если сайт отдаёт больше, в ответе это сказано, а разделы показывают, куда идти дальше. Возвращает: pages (до limit адресов), total (сколько нашлось всего), sections (разделы с числом адресов), source (sitemap или links) и outcome: ok, blocked (сайт отвечает 403 - это не «страниц нет»), unreachable, empty. Цена: 1 кредит за каждые 10 возвращённых адресов, минимум 1 (200 адресов - 20 кредитов). Сайт, который нас не пустил, не тарифицируется: результата нет.

Collects a site's page URLs: robots.txt → Sitemap:, then /sitemap.xml and /sitemap_index.xml (including nested maps), and the start page's links when there are no maps. Returns the URLs, the total count, and a breakdown by section, which shows what lives where.

Use when: you know the site, not the page - "collect every event from this aggregator", "what sections does this site have", "give me the URLs to walk". Do not use when: you need the page text - crawl (it reads what map found); you need an answer about a topic - web_search. The search filter matches against the URL (map does not read pages), so for Russian sites pass part of the Latin path: search: "organizers". One call reads up to 8 sitemaps: if the site offers more, the answer says so, and sections show where to go next. Returns: pages (up to limit URLs), total (all found), sections (sections with URL counts), source (sitemap or links) and outcome: ok, blocked (the site answers 403 - that is not "no pages"), unreachable, empty. Cost: 1 credit per 10 URLs returned, minimum 1 (200 URLs - 20 credits). A site that blocks us is not charged: there is no result.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesСайт или страница (http/https) / Site or page URL
limitNoСколько адресов вернуть (1-200, по умолчанию 50). total показывает, сколько нашлось всего. / How many URLs to return (1-200, default 50). total shows how many were found.
intentNoЗадача клиента словами: «страницы организаторов конференций», «все события», "только вакансии". Список адресов упорядочивается по смыслу под эту задачу, явный шум отсекается. Нужно там, где `selectPaths` бессилен: если у нужных страниц нет общего фрагмента пути, подстрока не найдёт ничего - на замере 03.10.2026 это 0/4, а упорядочивание по смыслу дало 4 нужных из 4 в первых строках. Работает, только если на сервере включён JEV_INTENT; иначе параметр игнорируется. / Plain-language goal for the section, e.g. "conference organizer pages". Ranks the URL list by meaning and drops obvious noise; use it when selectPaths cannot work because the wanted pages share no common path fragment. Ignored unless enabled server-side.
searchNoОставить адреса, содержащие эту подстроку (регистр и «ё» не важны; слова через пробел ищутся по отдельности). Фильтр по адресу, не по тексту страницы. / Keep URLs containing this substring (case- and ё-insensitive; space-separated words are matched individually). It filters URLs, not page text.
selectPathsNoОставить только адреса, содержащие любую из этих подстрок (по одной на элемент). Так целятся в раздел: selectPaths: ["organizers"] на агрегаторе событий оставит 3565 адресов организаторов вместо служебных страниц. / Keep only URLs containing any of these substrings (one per item). This is how you aim at a section.
excludePathsNoВыбросить адреса, содержащие любую из этих подстрок: архивы, теги, служебные разделы. / Drop URLs containing any of these substrings: archives, tags, service sections.
includeSubdomainsNoСчитать своими и поддомены (по умолчанию только тот же хост). / Treat subdomains as own (by default only the same host).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / intent
      Added value: +{
      +  "description": "Задача клиента словами: «страницы организаторов конференций», «все события», \"только вакансии\". Список адресов упорядочивается по смыслу под эту задачу, явный шум отсекается. Нужно там, где `selectPaths` бессилен: если у нужных страниц нет общего фрагмента пути, подстрока не найдёт ничего - на замере 03.10.2026 это 0/4, а упорядочивание по смыслу дало 4 нужных из 4 в первых строках. Работает, только если на сервере включён JEV_INTENT; иначе параметр игнорируется. / Plain-language goal for the section, e.g. \"conference organizer pages\". Ranks the URL list by meaning and drops obvious noise; use it when selectPaths cannot work because the wanted pages share no common path fragment. Ignored unless enabled server-side.",
      +  "maxLength": 300,
      +  "type": "string"
      +}
    • changedInput schema / properties / limit / description
      Previous value: -"Сколько адресов вернуть (1–200, по умолчанию 50). total показывает, сколько нашлось всего. / How many URLs to return (1–200, default 50). total shows how many were found."New value: +"Сколько адресов вернуть (1-200, по умолчанию 50). total показывает, сколько нашлось всего. / How many URLs to return (1-200, default 50). total shows how many were found."
  2. Added

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, openWorld, non-destructive), but the description adds substantial context the annotations cannot: an 8-sitemap-per-call ceiling with disclosure in the response, and a cost model (1 credit per 10 URLs, min 1, blocked sites not charged). It also explains the 'blocked' outcome as distinct from 'empty', which prevents a false conclusion. It does not, however, describe ordering/pagination behavior in depth, so it is not a full 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and well organized — purpose first, then when/when-not, then filter caveats, then return shape, then cost. Each sentence carries information. The only deduction is that the full Russian/English duplication roughly doubles the length, which is a deliberate but real verbosity cost.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter, no-output-schema tool, the description supplies everything an agent needs: the return fields (pages, total, sections, source, outcome), every outcome value and its meaning, the credit cost, and the per-call sitemap limit. Nothing required to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, and the description genuinely goes beyond it: it warns that 'search' matches the URL path (not page text) and advises Russian-language callers to pass the Latin path ('organizers'), and it notes that 'intent' is silently ignored unless JEV_INTENT is enabled server-side. Those caveats materially change how the parameters get used.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence states a precise verb and resource ('Collects a site's page URLs') and spells out the discovery mechanism (robots.txt → Sitemap:, /sitemap.xml, sitemap_index.xml, fallback to start-page links). It also names what it returns (URLs, total, sections), so an agent distinguishes it from crawl/web_search without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'Use when: you know the site, not the page' with concrete example phrasings, plus 'Do not use when' routing to the two correct alternatives (crawl for page text, web_search for topic answers). The selection logic between siblings is fully stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.