TinyFish — набор веб-инструментов для ИИ-агентов: поиск по живому вебу, чтение страниц в чистом Markdown, облачный браузер и агент, который сам выполняет задачу на сайте. Руководство поможет выбрать нужный компонент, подключить TinyFish к Codex, Claude Code или своему коду и проверить первый результат.

📌
Цены, лимиты и команды проверены по официальному сайту и документации TinyFish 17 октября 2026 года. Руководство собрано по документации: редакционный запуск сервиса не проводился.

Что такое TinyFish

TinyFish даёт агенту четыре уровня доступа к вебу: найти страницы, прочитать их, управлять браузером и поручить многошаговую работу на сайте. Поиск и чтение страниц бесплатны в пределах лимитов, а работа агента и браузера оплачивается из предоплаченного кошелька по факту.

Подключить сервис можно двумя способами: через MCP-сервер прямо в ассистенте или через REST API и SDK для Python и TypeScript.

💡
MCP (Model Context Protocol) — стандарт, по которому ИИ-ассистент подключает внешние инструменты. Подробно он разобран в справочнике MCP — стандарт подключения ИИ к внешним системам.

Какой компонент выбрать

КомпонентКогда нуженЧто возвращаетЦена и лимиты
SearchНайти страницы по запросуРанжированный список: заголовки, фрагменты, URL в JSONБесплатно; 30 запросов в минуту, 500 в час
FetchПрочитать уже известные URLMarkdown по умолчанию, HTML или JSONБесплатно; 150 URL в минуту, 1000 URL в сутки
AgentВыполнить задачу на сайте: клики, формы, входРезультат в JSON, шаги, скриншоты, запись запуска$0.016 за шаг; 2 параллельных запуска
BrowserУправлять браузером из своего кода через Playwright, Puppeteer или CDPУдалённую сессию браузера с адресом подключения$0.002 за минуту; 5 параллельных сессий
Research (бета)Получить отчёт по нескольким источникам со ссылкамиИтоговый текст и список цитатСписывается из кошелька; ставка на странице цен не указана
MonitorСледить за изменением страницы или темы по расписаниюУведомление на почту или в вебхук$0.005 за проверку плюс стоимость Search или Fetch
💡
Правило выбора: начинайте с самого дешёвого уровня. Нужны ссылки — Search. Известен адрес страницы — Fetch. Агента подключайте, когда на сайте нужно что-то нажать, заполнить или пройти вход.

Тарифы и лимиты

TinyFish работает без подписки и месячного минимума. Search и Fetch бесплатны при любом балансе кошелька. Agent и Browser списывают деньги с кошелька по мере работы. При регистрации на главной странице обещано $8 на старт, минимальное пополнение — $10.

В цену запусков Agent и Browser уже входят языковая модель агента, резидентные прокси и обработка антибот-защиты. Отдельный ключ модели приносить не нужно.

⚖️
Цена агента зависит от числа шагов. Параметр max_steps принимает значения от 1 до 500, по умолчанию — 150. При значении по умолчанию один запуск может стоить до $2.40 (150 × $0.016). Для простых задач задавайте меньший предел: запуск быстрее остановится и не съест бюджет.

Корпоративный тариф добавляет лимиты под нагрузку, ISO 27001, корпоративный SSO, журналы аудита, развёртывание в VPC и SLA 99,99 %.

Подключение через MCP

Большинство ассистентов подключаются к серверу https://agent.tinyfish.ai/mcp через OAuth: ключ API вручную не нужен. Перед первым подключением войдите в аккаунт на agent.tinyfish.ai в браузере по умолчанию — туда откроется окно авторизации.

Codex:

codex mcp add tinyfish --url https://agent.tinyfish.ai/mcp

Claude Code:

claude mcp add --transport http tinyfish https://agent.tinyfish.ai/mcp

Cursor — в настройках MCP (окно OAuth откроется при первом вызове инструмента):

{
  "mcpServers": {
    "tinyfish": {
      "url": "https://agent.tinyfish.ai/mcp"
    }
  }
}

Для ChatGPT и Claude есть официальные плагин и коннектор, они ставятся в браузере. Для ChatGPT можно добавить и собственный MCP-коннектор с адресом https://agent.tinyfish.ai/mcp/chatgpt.

После подключения ассистент получает основные инструменты:

ИнструментЧто делает
searchИщет в вебе; фильтры по свежести, датам, стране, языку и доменам
fetch_contentЧитает до 10 URL за запрос; Markdown, HTML или JSON
run_web_automationВыполняет цель на сайте и показывает ход работы
run_web_automation_async и get_runЗапускает долгую задачу в фоне и получает результат по ID
create_browser_sessionСоздаёт удалённый браузер для Playwright, Puppeteer или Selenium
get_walletПоказывает баланс кошелька и ставки
⚠️
Внимание: для части аккаунтов доступен инструмент top_up_wallet — агент может инициировать пополнение кошелька, а кошелёк запрашивает ваше подтверждение платежа. Не подтверждайте пополнение, которого не ожидали, и держите на кошельке сумму под конкретную задачу.

Подключение через API и SDK

Создайте ключ на странице agent.tinyfish.ai/api-keys и сохраните его в переменной окружения. Оба SDK читают её автоматически, в прямых запросах ключ передаётся в заголовке X-API-Key.

export TINYFISH_API_KEY="your_api_key_here"   # подставьте свой ключ, не храните его в коде
pip install -U tinyfish                         # Python SDK
npm install @tiny-fish/sdk@latest               # TypeScript SDK
ПродуктАдрес
Agenthttps://agent.tinyfish.ai/v1/automation/... (/run, /run-async, /run-sse)
ResearchPOST https://agent.tinyfish.ai/v1/automation/run-research
SearchGET https://api.search.tinyfish.ai
FetchPOST https://api.fetch.tinyfish.ai
BrowserPOST https://api.browser.tinyfish.ai

Минимальный сценарий на бесплатных компонентах — найти страницу и прочитать её:

from tinyfish import TinyFish

client = TinyFish()  # ключ берётся из TINYFISH_API_KEY

# 1. Поиск: ранжированные результаты в JSON
found = client.search.query("tinyfish pricing", location="US", language="en")
print(found)

# 2. Чтение известного URL: чистое содержимое страницы
page = client.fetch.get_contents(urls=["https://www.tinyfish.ai/pricing"])
print(page)

Ориентиры по задержке из документации: Search — 1–3 секунды, Fetch — 1–20 секунд, Agent — 15–60 секунд, создание браузерной сессии — 10–30 секунд. Для Fetch ставьте таймаут клиента не меньше 150 секунд: сервер ждёт одну страницу до 110 секунд.

Проверка результата

Проверьте ключ одной командой:

curl "https://api.search.tinyfish.ai?query=web+automation+tools&location=US&language=en" \
  -H "X-API-Key: $TINYFISH_API_KEY"

Признак успеха — JSON со списком результатов, у каждого есть заголовок и URL. Ошибка авторизации означает, что ключ не попал в переменную окружения или отозван.

В MCP попросите ассистента найти что-нибудь через TinyFish. В журнале вызовов должен появиться инструмент search, а в ответе — ссылки на найденные страницы.

🔴
Статус COMPLETED у агента не означает, что цель достигнута. Он сообщает только, что инфраструктура отработала. Всегда проверяйте поле result: при неудаче там будет "status": "failure" и причина, а также признаки вроде captcha, blocked или access denied.

Полезные сценарии

Следить за ценами конкурентов

  • Задача: узнавать о смене тарифов у пяти конкурентов, не открывая их сайты вручную.
  • Исходные данные: список URL страниц с ценами.
  • Действие: раз в день читать страницы через Fetch и сравнивать с прошлой версией или поставить Monitor с уведомлением на почту.
  • Результат: Markdown-копия каждой страницы или письмо при изменении.
  • Ограничение: если цены показываются только после входа или выбора параметров, Fetch их не увидит — нужен Agent.

Промпт:

Используй инструменты TinyFish.
1. Через search найди официальные страницы с ценами для: [сервис 1], [сервис 2], [сервис 3].
2. Через fetch_content прочитай найденные страницы в формате markdown.
3. Собери таблицу: сервис, тариф, цена в месяц, валюта, главный лимит, URL источника.
4. Если цена не указана явно или страница требует входа, напиши «не найдено» и не додумывай.
Не используй run_web_automation без моего подтверждения.

Дополнить таблицу клиентов

  • Задача: заполнить пустые поля в CRM — численность, город, сайт.
  • Исходные данные: список компаний с доменами.
  • Действие: для каждой компании агент ищет страницы через Search, читает «О компании» через Fetch и переносит найденное в таблицу.
  • Результат: заполненные поля с URL источника рядом с каждым значением.
  • Ограничение: данные с сайтов бывают устаревшими; ссылка на источник нужна, чтобы проверить спорные значения.

Выгрузить документ из личного кабинета

  • Задача: регулярно забирать счета или отчёты из портала поставщика.
  • Исходные данные: аккаунт на портале и сохранённый профиль входа.
  • Действие: запуск Agent с целью, где перечислены нужные поля, формат ответа и момент остановки.
  • Результат: JSON с данными, скриншоты шагов и запись запуска.
  • Ограничение: каждый шаг платный, а действия выполняются от вашего имени.

Пример цели для агента:

{
  "url": "https://app.example.com/billing",
  "goal": "Find the latest invoice. Return JSON with fields: invoice_number, amount_due, currency, due_date. If there is no invoice, return {\"status\": \"failure\", \"reason\": \"no invoice\"}. Do not click Pay or Submit.",
  "use_profile": true,
  "use_vault": true,
  "max_steps": 30
}

Документация прямо предупреждает: размытая цель вроде «собери данные» проваливается, а цель с перечнем полей, форматом ответа и обработкой пограничных случаев срабатывает стабильно.

Вход на сайты: профили и пароли

Чтобы агент не входил в аккаунт с нуля на каждом запуске, TinyFish сохраняет состояние браузера.

  • Browser Context Profile — сохранённая сессия входа для сайта или аккаунта. В запуске включается параметром use_profile: true, конкретный профиль выбирается через profile_id.
  • TinyVault — подключение 1Password или Bitwarden. С use_vault: true агент заново входит, когда сессия истекла. По заявлению TinyFish, модель паролей не видит, а каждый запуск получает только выбранные вами логины.
  • Browser Profile lite или stealth — режим работы браузера. Он не связан с сохранённым входом, хотя названия похожи.
⚠️
Внимание: агент с доступом к вашим аккаунтам читает чужие страницы, и на них может оказаться вредоносная инструкция. Начинайте с тестового аккаунта, просите остановиться перед отправкой формы и просматривайте записи запусков. Подробнее о рисках — в материале MCP и безопасность.

Ограничения и когда не подходит

  • Облачная обработка. Страницы, данные и сессии проходят через инфраструктуру TinyFish. Для данных под NDA и персональных данных сначала проверьте условия; развёртывание в своём контуре (VPC) есть только в корпоративном тарифе.
  • Точность агента. TinyFish заявляет 89,9 % на бенчмарке Online-Mind2Web. Это данные компании; независимой проверки в этом руководстве нет.
  • Скорость. Запуск агента занимает 15–60 секунд, поэтому для задач в реальном времени он не подходит.
  • Правила сайтов. Режим stealth и прокси помогают пройти антибот-защиту, но за соблюдение условий использования сайта отвечаете вы.
  • Доступ из России. Регистрация, оплата кошелька и работа сервиса из России не проверялись.

Ссылки

Следующий шаг

MCP и безопасность — prompt injection, tool poisoning и как защититься

Если вы выбираете, как дать агентам доступ к сайтам, порталам поставщиков и мониторингу цен, полезно заранее решить, какие задачи можно отдать агенту, а какие должен подтверждать человек.

Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov