Skip to main content
Glama

срезAI — Search API for AI agents

Веб-поиск / Web search

web_search
Read-only

Ищет страницы в живом вебе по текстовому запросу и возвращает ранжированный список: заголовок, ссылка, фрагмент. Сильное покрытие русскоязычного веба.

Когда: нужны свежие факты, ссылки или данные новее вашей отсечки знаний. Когда не: адрес страницы уже известен — это read_url; нужны 2–5 конкретных значений — extract; нужен готовый разбор темы со сносками — deep_research. Возвращает: до 30 результатов текстом, без содержимого страниц. У каждого результата — домен, дата публикации (когда движок её отдаёт) и rel — лексическая релевантность запросу [0..1], по ней список и отсортирован. Дат нет у части выдачи: это ограничение движков, а не признак старой страницы. С excerpts: true добавляет реальный текст топ-страниц (+3–10 с), это часто экономит последующий вызов read_url. Если этого мало — chunksPerSource (0–5) читает страницу глубже (600 × N символов против 1200 у excerpt) и отдаёт несколько кусков на результат, а includeRawContent — полный текст страницы (до 20 000 символов, берите 1–3 результата). Всё читается в том же вызове и цены не меняет: дешевле, чем идти за текстом по одной ссылке. Свежесть: timeRange (day/week/month/year) или точные границы publishedAfter / publishedBefore — фильтр по дате публикации на нашей стороне; страницы без даты в окно не проходят, и в ответе сказано, сколько таких отброшено. Цена: 1 кредит за вызов, независимо от num. Выдача живая, поэтому повтор того же запроса даёт другой результат и списывается снова.

Searches the live web by a text query and returns ranked results: title, link, snippet. Strong coverage of the Russian-language web.

Use when: you need fresh facts, links or data past your knowledge cutoff. Do not use when: you already know the page URL — that is read_url; you need a handful of specific values — extract; you need a written answer across many sources — deep_research. Returns: up to 30 results as text, without page content. Each result carries its domain, its publication date when the engine provides one, and rel — lexical relevance to the query [0..1], which is what the list is sorted by. Part of the results have no date: that is an engine limitation, not a sign of an old page. With excerpts: true it also pulls the actual text of the top pages (+3–10 s), which often saves a follow-up read_url. If that is not enough, chunksPerSource (0–5) reads the page deeper (600 × N chars versus 1200 for excerpt) and returns several chunks per result, and includeRawContent returns the full page text (up to 20 000 chars — ask for 1–3 results). Everything is read inside the same call and does not change the price: cheaper than fetching each link. Freshness: timeRange (day/week/month/year) or exact bounds publishedAfter / publishedBefore — a publication-date filter on our side; pages without a date do not pass, and the answer states how many were dropped. Cost: 1 credit per call regardless of num. Results are live, so repeating the same query returns different results and is billed again.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
numNoСколько результатов (1–30) / How many results (1–30)
depthNoГлубина: auto (по умолчанию, больше движков и результатов) или flash (быстрее, узкая выдача — для одного факта). / Depth: auto (default, more engines and results) or flash (faster, narrow — for a single fact).
queryYesПоисковый запрос / Search query
categoryNoКатегория / Category: general, news, it, science
excerptsNoЗабрать реальный текст топ-страниц под запрос (+3–10 с: страницы читаются параллельно, потолок — таймаут страницы). По умолчанию выкл. / Pull the actual text of the top pages for this query (+3–10 s: pages are read in parallel, per-page timeout caps it). Off by default.
languageNoЯзык / Language: auto, ru, en
timeRangeNoСвежесть по дате публикации: day, week, month, year — окно от сегодняшнего дня (1/7/30/365 дней), all (по умолчанию) — без ограничения. Фильтр применяем мы, а не движок: страницы без даты публикации в окно не проходят, и в ответе написано, сколько таких отброшено. / Freshness by publication date: day, week, month, year — a window from today (1/7/30/365 days), all (default) means no limit. The filter is applied by us, not by the engine: pages without a publication date do not pass, and the answer states how many were dropped.
excludeDomainsNoИсключить эти сайты и их поддомены: ["pinterest.com"]. До 10 доменов. / Exclude these sites and their subdomains. Up to 10 domains.
includeDomainsNoИскать только на этих сайтах, вместе с поддоменами: ["habr.com", "vc.ru"]. До 10 доменов. / Search only these sites, including subdomains. Up to 10 domains.
publishedAfterNoНижняя граница даты публикации, YYYY-MM-DD включительно. Сильнее timeRange, если заданы обе. / Publication date lower bound, YYYY-MM-DD inclusive. Overrides timeRange when both are given.
chunksPerSourceNoСколько кусков текста вернуть на каждый из топ-4 результатов (0–5, по умолчанию 0). Куски вырезаны из страницы по релевантности запросу и ранжированы: один вызов даёт контекст, за которым иначе пришлось бы идти read_url. Цена вызова не меняется. / How many text chunks to return per top-4 result (0–5, default 0). Chunks are cut from the page by query relevance and ranked, so one call carries the context you would otherwise fetch with read_url. The call price does not change.
publishedBeforeNoВерхняя граница даты публикации, YYYY-MM-DD включительно. / Publication date upper bound, YYYY-MM-DD inclusive.
includeRawContentNoВернуть полный текст страницы для топ-4 результатов (до 20 000 символов на каждый) — замена отдельному чтению. По умолчанию выкл. Осторожно с num: это десятки тысяч токенов, берите 1–3 результата. / Return the full page text for the top-4 results (up to 20 000 chars each) instead of fetching pages separately. Off by default. Mind num: this is tens of thousands of tokens, ask for 1–3 results.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / excerpts / description
      Previous value: -"Забрать реальный текст топ-страниц под запрос (медленнее на пару секунд, но даёт готовый контент для ответа без доп. переходов). По умолчанию выкл. / Pull the actual text of the top pages for this query (a couple of seconds slower, but gives ready content without extra calls). Off by default."New value: +"Забрать реальный текст топ-страниц под запрос (+3–10 с: страницы читаются параллельно, потолок — таймаут страницы). По умолчанию выкл. / Pull the actual text of the top pages for this query (+3–10 s: pages are read in parallel, per-page timeout caps it). Off by default."
  2. Changed5 schema fields changed
    • addedInput schema / properties / chunksPerSource
      Added value: +{
      +  "description": "Сколько кусков текста вернуть на каждый из топ-4 результатов (0–5, по умолчанию 0). Куски вырезаны из страницы по релевантности запросу и ранжированы: один вызов даёт контекст, за которым иначе пришлось бы идти read_url. Цена вызова не меняется. / How many text chunks to return per top-4 result (0–5, default 0). Chunks are cut from the page by query relevance and ranked, so one call carries the context you would otherwise fetch with read_url. The call price does not change.",
      +  "maximum": 5,
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • addedInput schema / properties / includeRawContent
      Added value: +{
      +  "description": "Вернуть полный текст страницы для топ-4 результатов (до 20 000 символов на каждый) — замена отдельному чтению. По умолчанию выкл. Осторожно с num: это десятки тысяч токенов, берите 1–3 результата. / Return the full page text for the top-4 results (up to 20 000 chars each) instead of fetching pages separately. Off by default. Mind num: this is tens of thousands of tokens, ask for 1–3 results.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / publishedAfter
      Added value: +{
      +  "description": "Нижняя граница даты публикации, YYYY-MM-DD включительно. Сильнее timeRange, если заданы обе. / Publication date lower bound, YYYY-MM-DD inclusive. Overrides timeRange when both are given.",
      +  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +  "type": "string"
      +}
    • addedInput schema / properties / publishedBefore
      Added value: +{
      +  "description": "Верхняя граница даты публикации, YYYY-MM-DD включительно. / Publication date upper bound, YYYY-MM-DD inclusive.",
      +  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +  "type": "string"
      +}
    • changedInput schema / properties / timeRange / description
      Previous value: -"Свежесть / Recency: all, day, week, month, year"New value: +"Свежесть по дате публикации: day, week, month, year — окно от сегодняшнего дня (1/7/30/365 дней), all (по умолчанию) — без ограничения. Фильтр применяем мы, а не движок: страницы без даты публикации в окно не проходят, и в ответе написано, сколько таких отброшено. / Freshness by publication date: day, week, month, year — a window from today (1/7/30/365 days), all (default) means no limit. The filter is applied by us, not by the engine: pages without a publication date do not pass, and the answer states how many were dropped."
  3. Changed1 schema field changed
    • changedInput schema / properties / timeRange / description
      Previous value: -"Свежесть / Recency: '', day, week, month, year"New value: +"Свежесть / Recency: all, day, week, month, year"
  4. Changed1 schema field changed
    • changedInput schema / properties / timeRange / enum
      Previous value: -[
      -  "",
      -  "day",
      -  "week",
      -  "month",
      -  "year"
      -]New value: +[
      +  "all",
      +  "day",
      +  "week",
      +  "month",
      +  "year"
      +]
  5. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already establish readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds valuable behavioral context beyond those: results are live and non-deterministic, repeated calls are billed again, pages without dates are an engine limitation not evidence of age, and the number of dropped pages is reported. This gives the agent accurate expectations for a live-search tool.

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?

The English block is excellently structured: core purpose first, then when-to-use, then return shape, then parameter modes, freshness, and cost. The only penalty is that the bilingual format duplicates every section in Russian, roughly doubling the length for an English-reading agent. Dense and valuable, but not maximally concise.

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 tool with 13 parameters, no output schema, and rich behavior, the description covers everything an agent needs: result fields, sorting semantics, date-filter behavior, cost per call, non-idempotency, and parameter interactions. It even includes practical guidance like requesting 1–3 results when returning raw content. Nothing critical is missing.

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

Parameters5/5

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

Schema coverage is 100%, so the baseline is 3, but the description substantially enriches parameter meaning: it explains the tradeoff between excerpts, chunksPerSource, and includeRawContent (600 × N chars versus 1200, up to 20,000 chars), clarifies that these do not change the price, notes that publishedAfter overrides timeRange, and warns about token volume when using num with includeRawContent. This goes far beyond what the schema states.

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 description opens with a specific verb and resource: 'Searches the live web by a text query and returns ranked results: title, link, snippet.' It also differentiates itself from siblings by naming read_url, extract, and deep_research as alternatives for different needs, so an agent can clearly tell this tool apart.

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?

Explicitly provides both when-to-use ('fresh facts, links or data past your knowledge cutoff') and when-not-to-use ('you already know the page URL — that is read_url; you need a handful of specific values — extract; you need a written answer across many sources — deep_research'). This is direct, actionable routing guidance.

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.

Resources