AndriyVK Tools

15.11.2026

MCP-сервер для ШІ-агентів - OCR, PDF, аудіо і перевірка доменів для Claude чи Cursor

Один MCP-сервер дає ШІ-агенту 9 інструментів - документи і скани в Markdown, Office у PDF/A, OCR, розпізнавання та озвучування мовлення, знімки сайтів, перевірка доменів, кадри з відео. Справжні виклики з клієнта MCP, результат, ціна та обмеження.

ШІ-агент добре працює з текстом, але справжня робота часто приходить файлами: скан рахунку, таблиця, голосове повідомлення, сайт, який треба перевірити. Протокол MCP (Model Context Protocol) дозволяє агенту викликати для цього інструменти. Тут - один MCP-сервер, що дає Claude, Cursor чи будь-якому іншому клієнту MCP дев'ять таких інструментів, і що повернули два з них, коли клієнт MCP викликав їх 15 листопада 2026 року.

Розкриття: сервер і Actors на Apify, що стоять за ним, зробив я. Код відкритий (MIT): AndriyVK/-apify-document-tools.

Інструменти

Інструмент Що робить Ціна (списує Apify)
convert_document_to_markdown PDF (текстові та скани, OCR), зображення, DOCX/DOC, XLSX/XLS, PPTX/PPT, ODT, RTF, HTML у Markdown, таблиці JSON, фрагменти для RAG $1 за 1000 текстових сторінок, $4 за 1000 сторінок з OCR
convert_office_to_pdf Word, Excel, PowerPoint, OpenDocument, RTF, HTML, зображення у PDF або PDF/A-2b, за бажанням в один файл $10 за 1000 документів
convert_pdf_or_images сторінки PDF у PNG/JPG/WebP/TIFF, зображення в PDF, HEIC з iPhone у JPG, зміна розміру $2 за 1000 зображень
transcribe_audio аудіо та відео в текст, фрагменти з часом, SRT/VTT (Whisper large-v3) $5 за 1000 хвилин
ocr_images зображення та скани в текст, рядки з упевненістю та координатами $1,50 за 1000 зображень
text_to_speech текст або PDF/DOCX/HTML у MP3/WAV/OGG та субтитри SRT, є українські голоси $10 за 1000 хвилин аудіо
screenshot_website знімки сторінки на всю довжину або PDF сайту чи свого HTML $4 за 1000 сторінок
check_domains WHOIS/RDAP (реєстратор, термін), записи DNS, термін сертифіката SSL $2 за 1000 доменів
extract_video_frames кадри з відео з часовими мітками, зміни сцен, аркуш мініатюр $1 за 1000 кадрів

Кожен інструмент приймає публічні посилання на файли та ліміт max_charge_usd на виклик (типово $1), тож агент у циклі не витратить більше, ніж ви дозволили.

Як підключити

Сервер - невелика програма на Python, яка запускає Actors з вашим власним токеном Apify:

git clone https://github.com/AndriyVK/-apify-document-tools
cd -- -apify-document-tools/mcp-server
pip install -r requirements.txt

Потім додайте його у свій клієнт MCP. Для Claude Desktop чи Cursor налаштування таке:

{
  "mcpServers": {
    "document-tools": {
      "command": "python",
      "args": ["/path/to/-apify-document-tools/mcp-server/server.py"],
      "env": { "APIFY_TOKEN": "<ВАШ_ТОКЕН_APIFY>" }
    }
  }
}

Токен - в Apify Console, Settings, API & Integrations. Нові акаунти Apify щомісяця отримують безкоштовний кредит.

Справжній сеанс

Щоб показати, що саме отримує агент, я викликав сервер зі звичайного клієнта MCP на Python (офіційний пакет mcp, транспорт stdio) - так само, як це робить Claude Desktop:

import asyncio, sys
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

async def main():
    server = StdioServerParameters(command=sys.executable, args=["server.py"],
                                   env={"APIFY_TOKEN": "<ВАШ_ТОКЕН_APIFY>"})
    async with stdio_client(server) as (read, write):
        async with ClientSession(read, write) as s:
            await s.initialize()
            print([t.name for t in (await s.list_tools()).tools])
            r = await s.call_tool("convert_document_to_markdown", {
                "urls": ["https://api.apify.com/v2/key-value-stores/FloomuI2DrQCJazY8/records/scan-uk.pdf"],
                "ocr_languages": ["ukr"], "max_charge_usd": 0.2})
            print(r.content[0].text)

asyncio.run(main())

Сервер відповів як apify-document-tools 0.3.0 і показав усі дев'ять інструментів.

Виклик 1: скан українською в Markdown

На вході - скан однієї сторінки без текстового шару (звіт про постачання з невеликою таблицею). Виклик тривав 8,6 с з боку клієнта, з них саме перетворення - 0,68 с; решта - запуск на Apify. Агент отримав (скорочено):

{
  "fileName": "scan-uk.pdf",
  "sourcePages": 1,
  "textPages": 0,
  "ocrPages": 1,
  "warnings": [],
  "characters": 300,
  "tables": [[["Товар", "Кількість", "Ціна"],
              ["Цемент", "420", "96,50"],
              ["Арматура", "180", "412,00"]]],
  "markdown": "Звіт про постачання\n\nСклад у Львові отримав 1240 палет будівельних матеріалів протягом\n\nтретього кварталу. ..."
}

Для агента тут важливі дві речі. Перша: ocrPages: 1 і textPages: 0 кажуть, що текст отримано через OCR, тож агент знає, наскільки йому довіряти. Друга: таблиця приходить двічі - як таблиця Markdown у тексті та як рядки клітинок у tables, тож агент може рахувати з неї, не розбираючи Markdown.

Видно й невелику ваду: OCR розбив одне речення на два абзаци (протягом\n\nтретього). Для мовної моделі зміст від цього не змінюється, але якщо текст іде в пошуковий індекс, спершу з'єднайте рядки всередині абзаців.

Виклик 2: перевірка двох доменів

check_domains з ["andriyvk.github.io", "dev.to"] тривав 4,6 с. Для кожного домену агент отримує реєстрацію (реєстратор, дати створення і закінчення, скільки днів лишилося), записи DNS і сертифікат SSL. Фрагмент:

{
  "domain": "andriyvk.github.io",
  "registrableDomain": "github.io",
  "registration": {"source": "whois", "registrar": "MarkMonitor Inc.", "expiresDate": "2027-03-08", "daysUntilExpiry": 113},
  "dns": {"A": ["185.199.108.153", "185.199.109.153", "185.199.110.153", "185.199.111.153"], "MX": []},
  "ssl": {"valid": true, "protocol": "TLSv1.3", "issuer": "Let's Encrypt", "validTo": "2026-12-29", "daysLeft": 44}
}

Зверніть увагу на registrableDomain: для піддомену дані реєстрації - це дані батьківського домену (github.io), і результат прямо це показує, а не вдає, що в піддомену є власний запис WHOIS. Для dev.to дані прийшли з RDAP (реєстратор Tonic, термін до 2027-04-05), а SPF і DMARC виділено із записів TXT.

Ціна

Для покупця два виклики вище коштували:

Разом - близько восьми десятих цента. Платите Apify за цінами Actors; сам MCP-сервер безкоштовний і нічого не додає.

Обмеження

Інші статті