# SmartPDF

> 24 PDF tools: convert to and from Office and JPG, compress, merge, split, OCR, sign, watermark

- name: ru.smartpdf/smartpdf
- version: 1.0.0
- connection class: R1 (autonomous)
- trust: 96/100
- quality: 73/100 (needs work)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/ru.smartpdf%2Fsmartpdf
- tools: https://api.protogrid.dev/v1/servers/ru.smartpdf%2Fsmartpdf/tools

**An agent can connect on its own if it already holds `api_key`.** Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "smartpdf": {
      "type": "http",
      "url": "https://mcp.smartpdf.ru/mcp",
      "headers": {
        "Authorization": "Bearer ${api_key}"
      }
    }
  }
}
```

Placeholders to fill: `${api_key}`.

## Trust

- hygiene: 100
- liveness: 100
- freshness: 100
- provenance: 85
- drivers: +repository +dns-namespace +website +reachable +uptime-100% +updated-15d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 73/100 (needs work)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 71 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: pdf_to_pptx (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); webp_to_jpg (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); xlsx_to_pdf (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 5,229 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 75 (weight 15)

- warn `stability.changes`: 24 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 48, about 5,229 tokens to load them all
- tool set hash: dead20db495674016a641cf7f0059da3
- tools last changed: 2026-10-13T13:56:56.944Z
- badge: [![protogrid quality](https://protogrid.dev/badge/ru.smartpdf/smartpdf.svg)](https://protogrid.dev/servers/ru.smartpdf/smartpdf)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-13 `webp_to_jpg` added
  - Конвертирует WEBP в JPG. Одна картинка — JPG, несколько — ZIP. file_urls: публичные URL картинок WEBP.
- 2026-10-13 `jpg_to_png` added
  - Конвертирует JPG в PNG. Одна картинка — PNG, несколько — ZIP. file_urls: публичные URL картинок JPG.
- 2026-10-13 `png_to_jpg` added
  - Конвертирует PNG в JPG (прозрачность — белый фон). Одна картинка — JPG, несколько — ZIP. file_urls: публичные URL картинок PNG.
- 2026-10-13 `image_to_text` added
  - Распознаёт текст на фото и картинках (OCR): текст всех фото — в один TXT или DOCX. Цена — как у ocr_pdf: 1,25 ₽ за каждые 10 фото (или 10 МБ). file_urls: публичные URL фото (JPG, PNG, WEBP, HEIC, TIFF, BMP). languages: rus, eng, deu, fra; по умолчанию ["rus", "eng"]. format: txt (по умолчанию, строки как на фото) | docx (абзацы).
- 2026-10-13 `word_to_jpg` added
  - Конвертирует документ Word (DOC, DOCX, ODT, RTF) в картинки JPG: одна страница — JPG, несколько — ZIP. file_url: публичный URL документа. dpi: 72 | 150 (по умолчанию) | 300.
- 2026-10-13 `crop_image` added
  - Обрезает фото по рамке, формат сохраняется. file_url: публичный URL фото. box: [x0, y0, x1, y1] долями кадра (0–1, от левого верхнего угла; фото повёрнуто по EXIF).
- 2026-10-13 `rotate_image` added
  - Поворачивает и отражает фото, формат сохраняется. Одно фото — файл, несколько — ZIP. file_urls: публичные URL фото. angle: 0 | 90 (по умолчанию) | 180 | 270 — по часовой. flip: horizontal | vertical — отражение после поворота.
- 2026-10-13 `resize_image` added
  - Меняет размер фото (JPG, PNG, WEBP, HEIC, TIFF, BMP), формат сохраняется. Одно фото — файл, несколько — ZIP. file_urls: публичные URL фото. percent: масштаб в процентах (1–500; по умолчанию 50) — или width и/или height в пикселях. keep_aspect: сохранить пропорции (по меньшему масштабу). enlarge: разрешить увеличение (по умолчанию фото меньше заданного не растягиваются).
- 2026-10-13 `compress_image` added
  - Сжимает фото (JPG, PNG, WEBP, HEIC). Одно фото — файл, несколько — ZIP-архив. file_urls: публичные URL фото. level: light (высокое качество) | medium (по умолчанию, до 2560 px) | strong (до 1600 px). target_kb: сжать до размера в КБ (10–50000), тогда level не используется.
- 2026-10-13 `heic_to_jpg` added
  - Конвертирует фото HEIC/HEIF с iPhone в JPG. Одно фото — JPG, несколько — ZIP-архив. file_urls: публичные URL фото HEIC. compact: уменьшить до 2000 px. keep_metadata: сохранить данные съёмки (EXIF: дата, камера, геометка).

Full history: https://api.protogrid.dev/v1/servers/ru.smartpdf%2Fsmartpdf/changes

## Remotes

- https://mcp.smartpdf.ru/mcp (streamable-http, auth api_key ${api_key}, reachable true, uptime30d 1)

## Packages

_none_

## Tools (48)

- `add_page_numbers`: Добавляет номера страниц в PDF.
file_url: публичный URL PDF-файла.
position: bottom-center | bottom-right | top-center | top-right.
start_from: стартовый номер (по умолчанию 1).
prefix: текст перед номером, например "Стр. " или "— ".
font_size: размер шрифта 6–72 (по умолчанию 12).
- `compress_image`: Сжимает фото (JPG, PNG, WEBP, HEIC). Одно фото — файл, несколько — ZIP-архив.
file_urls: публичные URL фото.
level: light (высокое качество) | medium (по умолчанию, до 2560 px) | strong (до 1600 px).
target_kb: сжать до размера в КБ (10–50000), тогда level не используется.
- `compress_pdf`: Сжимает PDF-файл.
file_url: публичный URL PDF-файла.
level: low | medium (по умолчанию) | high.
- `crop_image`: Обрезает фото по рамке, формат сохраняется.
file_url: публичный URL фото.
box: [x0, y0, x1, y1] долями кадра (0–1, от левого верхнего угла; фото повёрнуто по EXIF).
- `crop_pdf`: Обрезает страницы PDF. Без box — убирает белые поля автоматически.
file_url: публичный URL PDF-файла.
box: область [x0, y0, x1, y1] долями видимой страницы (0–1, от левого верхнего угла), например [0, 0, 1, 0.5] —
верхняя половина. Содержимое за краем остаётся в файле — для скрытия данных используйте redact_pdf.
pages: номера страниц (с 1) или "all".
- `delete_pages`: Удаляет указанные страницы из PDF.
file_url: публичный URL PDF-файла.
pages: список номеров страниц для удаления (1-based).
- `djvu_to_pdf`: Конвертирует книгу или скан DjVu в PDF.
file_url: публичный URL DjVu-файла.
- `edit_pdf`: Редактор PDF: добавляет на страницы текст, подпись, картинку, закрашивание, пометки и фигуры.
file_url: публичный URL PDF-файла.
objects: список объектов по порядку (последний — сверху). Координаты — доли видимой страницы (0–1, от левого
верхнего угла), box — [x0, y0, x1, y1], размеры шрифта и линий — в пунктах. У каждого объекта page (с 1) и type:
  text — box, text (переносится по ширине box), size (12), font sans|serif|mono, bold, italic, color "#RRGGBB";
  signature — box и lines (["Иванов И. И."], рукописный шрифт) или image_url (картинка подписи);
  image — box, image_url (PNG, JPG, WEBP);
  whiteout — закрасить: текст под ним удаляется из файла; color (по умолчанию чёрный, "#FFFFFF" — белый);
  highlight, rect, ellipse, check, cross — box, color, width, fill;
  line, arrow, ink — points [[x, y], ...], color, width;
  replace_text — заменить строку: box и baseline исходной строки, x начала, text (пустой — удалить строку).
Подпись через API не входит в лимит подписей сайта.
- `epub_to_pdf`: Конвертирует книгу EPUB в PDF с оглавлением.
file_url: публичный URL EPUB-файла.
page: a5 (по умолчанию, как книга) | a4.
- `extract_pages`: Извлекает выбранные страницы в новый PDF.
file_url: публичный URL PDF-файла.
pages: список номеров страниц (1-based), порядок сохраняется.
- `fb2_to_pdf`: Конвертирует книгу FB2 в PDF с оглавлением.
file_url: публичный URL FB2-файла.
page: a5 (по умолчанию, как книга) | a4.
- `find_personal_data`: Находит персональные данные в PDF, файл не меняет. Номера проверяются контрольными суммами (СНИЛС, ИНН, карты).
file_url: публичный URL PDF-файла.
kinds: passport, snils, inn, phone, email, card, account; по умолчанию всё.
words: свои слова — ФИО, адрес (каждое от 3 символов).
Возвращает result: {"pages": [{"page", "items": [{"kind", "text", "boxes"}]}], "scanned": [страницы-сканы без
текста], "total"}; boxes — [x0, y0, x1, y1] долями страницы, их можно передать в redact_pdf как areas.
- `flatten_pdf`: Сглаживает PDF (flatten): впечатывает поля форм и аннотации в страницы.
Результат нельзя редактировать — идеально для госорганов и печати.
file_url: публичный URL PDF-файла.
- `get_balance`: Возвращает баланс API аккаунта (общий для всех ключей и MCP), в рублях.
balance: остаток, ₽; spent_month: потрачено в этом месяце, ₽;
request_price: цена запроса за каждые начатые request_unit_mb МБ входа (файл до 10 МБ — один запрос);
included_remaining: сколько обычных запросов в текущем месяце тарифа ещё входит в тариф Бизнес
(месяц — от даты покупки, обновятся в included_resets_at; расходуются раньше баланса; у других тарифов 0).
- `grayscale_pdf`: Переводит PDF в оттенки серого (ч/б) — для печати и требований «только ч/б». Текст остаётся текстом.
file_url: публичный URL PDF-файла.
- `heic_to_jpg`: Конвертирует фото HEIC/HEIF с iPhone в JPG. Одно фото — JPG, несколько — ZIP-архив.
file_urls: публичные URL фото HEIC.
compact: уменьшить до 2000 px.
keep_metadata: сохранить данные съёмки (EXIF: дата, камера, геометка).
- `html_to_pdf`: Конвертирует HTML-файл в PDF.
file_url: публичный URL HTML-файла.
page_size: A4 (по умолчанию) | A3 | Letter.
orientation: portrait (по умолчанию) | landscape.
- `image_to_text`: Распознаёт текст на фото и картинках (OCR): текст всех фото — в один TXT или DOCX.
Цена — как у ocr_pdf: 1,25 ₽ за каждые 10 фото (или 10 МБ).
file_urls: публичные URL фото (JPG, PNG, WEBP, HEIC, TIFF, BMP).
languages: rus, eng, deu, fra; по умолчанию ["rus", "eng"].
format: txt (по умолчанию, строки как на фото) | docx (абзацы).
- `jpg_to_pdf`: Конвертирует изображения (JPEG, PNG) в PDF. Каждое изображение — страница.
file_urls: список публичных URL изображений.
- `jpg_to_png`: Конвертирует JPG в PNG. Одна картинка — PNG, несколько — ZIP.
file_urls: публичные URL картинок JPG.
- `merge_pdfs`: Объединяет несколько PDF в один. Порядок файлов = порядок страниц.
file_urls: список публичных URL PDF-файлов (минимум 2).
- `ocr_pdf`: Распознаёт текст в сканированном PDF (OCR). Добавляет невидимый текстовый слой.
До 100 страниц за раз (больший файл сначала разделите split_pdf); цена — 1,25 ₽ за каждые 10 страниц.
file_url: публичный URL PDF-файла.
languages: список языков (например ["rus","eng"]). По умолчанию: русский + английский.
- `pdf_to_excel`: Извлекает таблицы из PDF и сохраняет в Excel (.xlsx).
file_url: публичный URL PDF-файла.
layout: per-table (по умолчанию) | single-sheet.
- `pdf_to_jpg`: Конвертирует страницы PDF в JPEG. Результат — ZIP-архив (page-1.jpg, page-2.jpg...).
file_url: публичный URL PDF-файла.
dpi: 72 | 150 (по умолчанию) | 300.
- `pdf_to_markdown`: Конвертирует PDF в Markdown (.md) для нейросетей, баз знаний и документации: заголовки, списки, таблицы, ссылки,
жирный и курсив.
file_url: публичный URL PDF-файла.
ocr: скан без текста — сначала распознать (русский и английский); до 100 страниц, цена — как у ocr_pdf.
- `pdf_to_pdfa`: Конвертирует PDF в PDF/A — формат долговременного хранения (архивы, суды, госорганы).
file_url: публичный URL PDF-файла.
version: 1 (PDF/A-1b) | 2 (PDF/A-2b, по умолчанию) | 3 (PDF/A-3b).
- `pdf_to_png`: Конвертирует страницы PDF в PNG (без потерь, для схем и скриншотов). Результат — ZIP-архив.
file_url: публичный URL PDF-файла.
dpi: 72 | 150 (по умолчанию) | 300.
- `pdf_to_pptx`: Конвертирует PDF в PowerPoint (.pptx). Каждая страница — отдельный слайд.
file_url: публичный URL PDF-файла.
- `pdf_to_txt`: Извлекает текст из PDF в файл .txt (UTF-8).
file_url: публичный URL PDF-файла.
mode: text (по умолчанию) | blocks | words.
  text — простой текст постранично;
  blocks — текст по абзацам и колонкам;
  words — каждое слово с координатами.
- `pdf_to_word`: Конвертирует PDF в редактируемый Word-документ (.docx).
file_url: публичный URL PDF-файла.
ocr: скан без текста — распознать текст (русский и английский); до 100 страниц, цена — как у ocr_pdf.
- `photo_to_pdf`: Собирает фото с телефона в PDF: каждое фото — страница. HEIC с iPhone тоже.
file_urls: публичные URL фото (JPG, PNG, WEBP, HEIC, TIFF, BMP), порядок = порядок страниц.
page: a4 (по умолчанию, лист A4 в ориентации фото) | photo (страница по размеру фото).
compact: уменьшить фото до 2000 px и убрать EXIF и геометку (по умолчанию да).
grayscale: оттенки серого.
scan: «Скан документа» — найти лист на фото, выровнять перспективу, белый фон.
scan_color: bw (ч/б как скан, по умолчанию) | color — только при scan.
- `png_to_jpg`: Конвертирует PNG в JPG (прозрачность — белый фон). Одна картинка — JPG, несколько — ZIP.
file_urls: публичные URL картинок PNG.
- `pptx_to_pdf`: Конвертирует презентацию PowerPoint (.pptx/.ppt) в PDF.
file_url: публичный URL PPTX-файла.
- `protect_pdf`: Защищает PDF паролем (AES-256).
file_url: публичный URL PDF-файла.
user_password: пароль для открытия.
owner_password: пароль владельца (опционально).
- `redact_pdf`: Скрывает персональные данные в PDF: находит и удаляет из файла (не просто закрашивает сверху) — под чёрными
прямоугольниками текста больше нет. Без areas — ищет сам.
file_url: публичный URL PDF-файла.
kinds: что искать — passport, snils, inn, phone, email, card, account (счета физлиц); по умолчанию всё.
words: свои слова — ФИО, адрес, название (каждое от 3 символов).
areas: области вручную — [{"page": 1, "box": [x0, y0, x1, y1]}] долями страницы (например, из find_personal_data).
clean: убрать скрытые данные файла — автора, свойства, комментарии, вложения (по умолчанию да).
На сканах текста нет — сначала ocr_pdf или укажите areas.
- `reorder_pages`: Переупорядочивает страницы PDF.
file_url: публичный URL PDF-файла.
new_order: новый порядок страниц (1-based). Например [3,1,2] для 3-страничного PDF.
- `repair_pdf`: Восстанавливает повреждённый PDF, который не открывается или открывается с ошибкой.
file_url: публичный URL PDF-файла.
- `resize_image`: Меняет размер фото (JPG, PNG, WEBP, HEIC, TIFF, BMP), формат сохраняется. Одно фото — файл, несколько — ZIP.
file_urls: публичные URL фото.
percent: масштаб в процентах (1–500; по умолчанию 50) — или width и/или height в пикселях.
keep_aspect: сохранить пропорции (по меньшему масштабу).
enlarge: разрешить увеличение (по умолчанию фото меньше заданного не растягиваются).
- `rotate_image`: Поворачивает и отражает фото, формат сохраняется. Одно фото — файл, несколько — ZIP.
file_urls: публичные URL фото.
angle: 0 | 90 (по умолчанию) | 180 | 270 — по часовой.
flip: horizontal | vertical — отражение после поворота.
- `rotate_pdf`: Поворачивает страницы PDF.
file_url: публичный URL PDF-файла.
pages: список номеров страниц (1-based) или "all" для всех.
angle: угол поворота: 90 | 180 | 270.
- `sign_pdf`: Добавляет визуальную текстовую подпись на страницу PDF.
file_url: публичный URL PDF-файла.
signature_text: текст подписи.
page: номер страницы (с 1).
x, y: координаты (0.0–1.0). width, height: размер блока (0.0–1.0).
- `split_pdf`: Разделяет PDF на части. Результат — ZIP-архив с PDF-файлами.
file_url: публичный URL PDF-файла.
mode: every-page (по умолчанию) | half | ranges.
ranges: диапазоны при mode=ranges, например "1-3,5-7,10".
- `unlock_pdf`: Снимает парольную защиту с PDF.
file_url: публичный URL защищённого PDF.
password: пароль для снятия защиты.
- `watermark_pdf`: Добавляет водяной знак на страницы PDF.
file_url: публичный URL PDF-файла.
text: текст водяного знака (исключает image_url).
image_url: URL PNG-изображения для водяного знака (исключает text).
opacity: прозрачность 0.0–1.0 (по умолчанию 0.3).
angle: угол поворота текста (по умолчанию 45).
position: center | tile | top-left | top-right | bottom-left | bottom-right.
- `webp_to_jpg`: Конвертирует WEBP в JPG. Одна картинка — JPG, несколько — ZIP.
file_urls: публичные URL картинок WEBP.
- `word_to_jpg`: Конвертирует документ Word (DOC, DOCX, ODT, RTF) в картинки JPG: одна страница — JPG, несколько — ZIP.
file_url: публичный URL документа.
dpi: 72 | 150 (по умолчанию) | 300.
- `word_to_pdf`: Конвертирует Word-документ (.doc/.docx) в PDF.
file_url: публичный URL Word-файла.
- `xlsx_to_pdf`: Конвертирует таблицу Excel (.xlsx/.xls) в PDF.
file_url: публичный URL XLSX-файла.
