срезAI — Search API for AI agents
REMOTE · SREZAI.RU · SCANNED AUG 3
Web search, page reading and structured extraction for AI agents, with strong RU coverage
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token. See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability54
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 4711 tokens (~588/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management13
- Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · srezai.ru
claude mcp add --transport http ru-srezai-search https://srezai.ru/api/mcp
[mcp_servers.ru-srezai-search] url = "https://srezai.ru/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ru-srezai-search": {
"type": "remote",
"url": "https://srezai.ru/api/mcp",
"enabled": true
}
}
} openclaw mcp add ru-srezai-search --url https://srezai.ru/api/mcp --transport streamable-http
mcp_servers:
ru-srezai-search:
url: "https://srezai.ru/api/mcp" {
"mcpServers": {
"ru-srezai-search": {
"type": "http",
"url": "https://srezai.ru/api/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +11
- Schema quality: unverified → excellent ▲ functional
- 1 Aug 26 −5
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 31 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 +44
- Transport: unverified → pass ▲ security
- Authorization: Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token. security
- Tool coverage: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- First check of Schema quality: fail functional
- First check of Schema quality: excellent functional
- First check of Tool coverage: 100 functional
- First check of Schema quality: fail functional
- 29 Jul 26 21
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://srezai.ru/api/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=srezai.ru | CN=YR2,O=Let's Encrypt,C=US | 24 Jul 2026 | 22 Oct 2026 | RSA 4096 | SHA256-RSA | 57c08dbf7349600b91f08d91f52a30ea276 |
| SANs: srezai.ru | ||||||
| CN=YR2,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | 4ebd24947e24d394802d84a52fd5b319 |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
DNSSEC insecure
Validation of srezai.ru. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| ru. | present | 51575 | 8 | Verified |
| srezai.ru. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Challenged, unverified
The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.
| Result | Challenged, unverified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer error="invalid_token", error_description="No authorization provided", resource_metadata="https://srezai.ru/.well-known/oauth-protected-resource"
Bearer error="invalid_token", error_description="No authorization provided", resource_metadata="https://srezai.ru/.well-known/oauth-protected-resource" Protected resource metadata
| Document | https://srezai.ru/.well-known/oauth-protected-resource |
|---|---|
| Retrieved | Yes |
| Problem | metadata_incomplete |
| Resource | https://srezai.ru/api/mcp |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://srezai.ru/api/mcp | Verified | 200 | |
| http (plaintext) | http://srezai.ru/api/mcp | HTTPS enforced | 301 | https://srezai.ru/api/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
deep_research Глубокое исследование / Deep research ~386
Проводит многошаговое исследование: сам формулирует запросы, ищет, читает источники и возвращает готовый связный ответ со ссылками на использованные страницы. Когда: вопрос требует сопоставления нескольких источников и вывода — «сравни», «разберись», «что известно о». Когда не: нужен один факт или список ссылок — это web_search, он в 20 раз дешевле и отвечает за секунды. Возвращает: текст ответа плюс список источников. Если источники не вернулись, в ответе будет предупреждение — такой вывод не считается проверенным. Время: 10 с – 2 мин, это самый медленный инструмент. Держите соединение открытым. Цена: 20 кредитов плюс 3 за каждую 1000 токенов ответа — самый дорогой вызов. Повтор темы даёт новый результат и списывается заново. Runs multi-step research: forms its own queries, searches, reads sources and returns a finished answer with links to the pages it used. Use when: the question needs several sources reconciled into a conclusion — "compare", "analyse", "what is known about". Do not use when: you need a single fact or a list of links — that is web_search, 20× cheaper and seconds fast. Returns: the answer text plus a source list. If no sources came back the response says so — treat that output as unverified. Time: 10 s – 2 min, the slowest tool here. Keep the connection open. Cost: 20 credits plus 3 per 1000 output tokens — the most expensive call. Repeating a topic produces a new result and is billed again.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Вопрос или тема исследования / The question or research topic |
No output schema declared.
No examples provided.
extract Извлечь данные по схеме / Extract data by schema ~776
Читает страницу и возвращает JSON строго по вашей схеме: только запрошенные поля, без текста страницы. Чего на странице нет — приходит null, значения не домысливаются. Когда: нужны 2–5 конкретных значений — цена, характеристики, автор и дата, список вакансий. Экономит контекст: вместо всей страницы придут только поля. Когда не: нужен связный текст или вы не знаете заранее, что искать, — read_url (и в 4 раза дешевле). Схема: принимается и сокращённая форма — {"title":"string","price":"number?"}, где «?» делает поле необязательным, а «[]» — массивом; полный JSON Schema тоже работает. Описания полей заметно повышают точность разбора. Возвращает: объект по схеме на каждую ссылку. Можно передать до 5 ссылок разом — одна схема применится ко всем. Цена: 4 кредита за каждую ссылку (чтение плюс разбор моделью). Reads a page and returns JSON strictly following your schema: only the requested fields, no page text. Anything absent from the page comes back as null — values are never invented. Use when: you need a handful of specific values — price, specs, author and date, a list of job openings. It saves context: you get the fields, not the page. Do not use when: you need prose, or you do not know in advance what to look for — read_url (and 4× cheaper). Schema: a shorthand form is accepted — {"title":"string","price":"number?"}, where "?" marks a field optional and "[]" an array; full JSON Schema works too. Field descriptions noticeably improve extraction accuracy. Returns: one object per link, shaped by your schema. Up to 5 links per call, one schema applied to all. Cost: 4 credits per link (page read plus model parsing).
| Name | Type | Req | Description |
|---|---|---|---|
| engine | string | — | Как забирать страницу: auto (по умолчанию), fast, dynamic, stealth. / How to fetch the page: auto (default), fast, dynamic, stealth. |
| instruction | string | — | Уточнение для разбора, если из схемы неочевидно: «бери цену со скидкой», «только вакансии удалённо». / A parsing hint when the schema alone is ambiguous: «use the discounted price», «remote positions… |
| schema | — | — | Схема результата. Проще всего — сокращённая форма: {"title":"string","price":"number?","tags":"string[]"}, где «?» помечает поле необязательным, а «[]» — массивом. Полный JSON Schema тоже принимается… |
| url | string | — | URL страницы (http/https) / Page URL (http/https) |
| urls | array | — | Список URL (1–5) вместо url — одна схема на все страницы. Каждая страница тарифицируется отдельно. / A list of URLs (1–5) instead of url — one schema for all pages. Each page is billed separately. |
No output schema declared.
No examples provided.
fetch_page Скриншот и структура страницы / Page screenshot and structure ~372
Открывает страницу полноценным браузером и возвращает скриншот картинкой прямо в ответе, ссылку на полноразмерный файл и текст страницы в markdown. Когда: нужно УВИДЕТЬ страницу — раскладку, цвета, типографику, визуальную иерархию: «повтори дизайн как здесь», «что не так с вёрсткой». Когда не: нужен только текст — read_url (1 кредит против 3, и быстрее); нужны отдельные значения — extract. Возвращает: изображение плюс текст. Картинка занимает много контекста, поэтому для чтения этот инструмент избыточен. Цена: 3 кредита. Opens the page in a full browser and returns a screenshot as an inline image, a link to the full-size file, and the page text in markdown. Use when: you need to SEE the page — layout, colours, typography, visual hierarchy: "match this design", "what looks broken here". Do not use when: you only need text — read_url (1 credit vs 3, and faster); you need specific values — extract. Returns: an image plus text. The image consumes a lot of context, which makes this tool overkill for reading. Cost: 3 credits.
| Name | Type | Req | Description |
|---|---|---|---|
| maxChars | integer | — | Сколько символов текста вернуть (200–50000, по умолчанию 4000). Поднимите, если нужен полный текст страницы, а не только начало. / How many characters of text to return (200–50000, default 4000). Rai… |
| url | string | yes | Полный URL страницы (http/https) / Full page URL (http/https) |
No output schema declared.
No examples provided.
get_usage Баланс и лимиты / Balance and limits ~251
Показывает остаток на счёте, расход суточной квоты, время сброса окна и цены всех инструментов в кредитах. Параметров не требует. Когда: вызов упал с [rate_limited] и надо понять, ждать секунды или до следующих суток; пользователь спрашивает про баланс и расходы; планируется большой батч и надо убедиться, что кредитов хватит. Возвращает: баланс, использованную квоту, момент сброса и прайс-лист. Цена: бесплатно, квоту и лимит запросов этот вызов не расходует — его можно звать без опасений. Shows the remaining balance, daily quota usage, when the window resets, and the price of every tool in credits. Takes no parameters. Use when: a call failed with [rate_limited] and you need to know whether to wait seconds or until tomorrow; the user asks about balance or spending; you are about to run a large batch and want to confirm you have the credits. Returns: balance, quota used, reset time and the price list. Cost: free — this call consumes neither quota nor rate limit, so call it freely.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
image_search Поиск изображений / Image search ~407
Ищет изображения по текстовому запросу и возвращает прямые ссылки на файлы, страницу-источник и разрешение. Когда: нужны картинки, фотографии, логотипы, схемы. Когда не: нужен текст или факты — web_search; нужно увидеть, как выглядит конкретная страница, — fetch_page. Возвращает: только ссылки и метаданные — файлы не скачиваются и в ответе не появляются. Ставьте num: 1–3, если картинка нужна одна: по умолчанию 12, максимум 48, и полный список занимает десятки килобайт контекста. Цена: 1 кредит за вызов, независимо от num. Searches for images by a text query and returns direct file links, the source page and resolution. Use when: you need pictures, photos, logos or diagrams. Do not use when: you need text or facts — web_search; you need to see what a specific page looks like — fetch_page. Returns: links and metadata only — files are never downloaded or embedded in the response. Pass num: 1–3 when you need a single image: the default is 12, the maximum 48, and a full list costs tens of kilobytes of context. Cost: 1 credit per call regardless of num.
| Name | Type | Req | Description |
|---|---|---|---|
| num | integer | — | Сколько картинок вернуть (1–48, по умолчанию 12). Нужна одна картинка — просите 1–3, не тратьте контекст. / How many images to return (1–48, default 12). Need just one — ask for 1–3 and save context. |
| query | string | yes | Что искать / What to search for |
| safe | boolean | — | Безопасный поиск / Safe search (on by default) |
| timeRange | string | — | Свежесть / Recency: '', day, week, month, year |
No output schema declared.
No examples provided.
read_url Прочитать страницу / Read a page ~601
Открывает одну страницу по известному адресу и возвращает её текст чистым markdown — без навигации, рекламы, скриптов и HTML. JavaScript выполняется на нашей стороне, поэтому SPA тоже читаются. Когда: адрес известен и нужен текст — статья, документация, карточка товара. Когда не: адреса нет — сначала web_search; страниц несколько — read_urls (один вызов вместо пяти); нужны 2–5 конкретных полей — extract (в контекст придут только они); нужно увидеть вёрстку — fetch_page. Возвращает: заголовок и текст, по умолчанию первые 4000 символов. Если нужен весь текст, а не начало, поднимите maxChars — иначе документ придёт обрезанным. Цена: 1 кредит, самый дешёвый способ получить содержимое страницы (fetch_page — 3). Opens a single page by a known URL and returns its text as clean markdown — no navigation, ads, scripts or HTML. JavaScript is executed on our side, so SPAs read fine too. Use when: you have the URL and need the text — an article, documentation, a product page. Do not use when: you have no URL — start with web_search; you have several pages — read_urls (one call instead of five); you need a handful of specific fields — extract (only those reach your context); you need to see the layout — fetch_page. Returns: title and text, the first 4000 characters by default. Raise maxChars when you need the whole document, otherwise it arrives truncated. Cost: 1 credit — the cheapest way to get page content (fetch_page costs 3).
| Name | Type | Req | Description |
|---|---|---|---|
| engine | string | — | Как забирать страницу: auto (по умолчанию — начинает с быстрого способа и сам поднимается, если текста не оказалось), fast (быстро, для статики и документации), dynamic (ждёт отрисовки JS — для SPA),… |
| maxChars | integer | — | Сколько символов текста вернуть (200–50000, по умолчанию 4000). Поднимите, если нужен полный текст, а не только начало. / How many characters of text to return (200–50000, default 4000). Raise it if… |
| url | string | yes | Полный URL страницы (http/https) / Full page URL |
No output schema declared.
No examples provided.
read_urls Прочитать несколько страниц / Read several pages ~548
Читает пачку страниц (до 5 за вызов) параллельно и возвращает текст каждой чистым markdown. То же, что read_url, но одним вызовом вместо нескольких — заметно быстрее по общему времени. Когда: на руках список ссылок, например топ выдачи web_search. Когда не: страница одна — read_url; нужны отдельные поля, а не текст, — extract (он тоже принимает список). Возвращает: текст по каждой странице. Частичный успех — норма: упавшие ссылки не рвут вызов, а перечисляются отдельным блоком «Не прочитано» с кодом ошибки. Дубликаты и ссылки сверх лимита отбрасываются, их число указано в ответе. Цена: 1 кредит за каждую ссылку — пять страниц стоят пять кредитов. Не отправляйте ссылки «на всякий случай». Reads a batch of pages (up to 5 per call) in parallel and returns each one's text as clean markdown. Same as read_url but in a single call — markedly faster in total wall-clock. Use when: you have a list of links, e.g. the top web_search results. Do not use when: there is only one page — read_url; you need specific fields rather than text — extract (it also accepts a list). Returns: text per page. Partial success is normal: failed links do not fail the call, they are listed in a separate "not read" block with an error code. Duplicates and links beyond the limit are dropped and the count is reported. Cost: 1 credit per link — five pages cost five credits. Do not pad the list.
| Name | Type | Req | Description |
|---|---|---|---|
| engine | string | — | Как забирать страницы: auto (по умолчанию), fast, dynamic, stealth. Применяется ко всем ссылкам батча. / How to fetch the pages: auto (default), fast, dynamic, stealth. Applies to every link in the b… |
| maxChars | integer | — | Сколько символов текста вернуть с КАЖДОЙ страницы (200–50000, по умолчанию 4000). На батче ставьте скромнее: пять больших страниц вытеснят из контекста всё остальное. / How many characters to return… |
| urls | array | yes | Список URL (1–5). Дубликаты отбрасываются. / A list of URLs (1–5). Duplicates are dropped. |
No output schema declared.
No examples provided.
web_search Веб-поиск / Web search ~691
Ищет страницы в живом вебе по текстовому запросу и возвращает ранжированный список: заголовок, ссылка, фрагмент. Сильное покрытие русскоязычного веба. Когда: нужны свежие факты, ссылки или данные новее вашей отсечки знаний. Когда не: адрес страницы уже известен — это read_url; нужны 2–5 конкретных значений — extract; нужен готовый разбор темы со сносками — deep_research. Возвращает: до 30 результатов текстом, без содержимого страниц. С excerpts: true добавляет реальный текст топ-страниц (+2–4 с), это часто экономит последующий вызов read_url. Цена: 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. With excerpts: true it also pulls the actual text of the top pages (+2–4 s), which often saves a follow-up read_url. Cost: 1 credit per call regardless of num. Results are live, so repeating the same query returns different results and is billed again.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | — | Категория / Category: general, news, it, science |
| depth | string | — | Глубина: auto (по умолчанию, больше движков и результатов) или flash (быстрее, узкая выдача — для одного факта). / Depth: auto (default, more engines and results) or flash (faster, narrow — for a sin… |
| excerpts | boolean | — | Забрать реальный текст топ-страниц под запрос (медленнее на пару секунд, но даёт готовый контент для ответа без доп. переходов). По умолчанию выкл. / Pull the actual text of the top pages for this qu… |
| excludeDomains | array | — | Исключить эти сайты и их поддомены: ["pinterest.com"]. До 10 доменов. / Exclude these sites and their subdomains. Up to 10 domains. |
| includeDomains | array | — | Искать только на этих сайтах, вместе с поддоменами: ["habr.com", "vc.ru"]. До 10 доменов. / Search only these sites, including subdomains. Up to 10 domains. |
| language | string | — | Язык / Language: auto, ru, en |
| num | integer | — | Сколько результатов (1–30) / How many results (1–30) |
| query | string | yes | Поисковый запрос / Search query |
| timeRange | string | — | Свежесть / Recency: '', day, week, month, year |
No output schema declared.
No examples provided.