# MCP-сервер

Источник: https://smartpdf.ru/developers/docs/mcp

MCP-сервер SmartPDF даёт ИИ-агенту 47 операций с PDF и фото и проверку баланса — агент сам выбирает операцию по вашей просьбе. Ключ и баланс — те же, что у REST API.

## Подключение

| | |
|---|---|
| Адрес | `https://mcp.smartpdf.ru/mcp` |
| Транспорт | Streamable HTTP, без сессий |
| Ключ | `Authorization: Bearer sk_live_…` или `X-API-Key: sk_live_…` |

Ключ в адресе (`?token=`) не принимается: спецификация MCP это запрещает, а адрес попадает в журналы. Список инструментов (`tools/list`) доступен и без ключа, вызов инструмента без ключа вернёт ошибку со ссылкой на кабинет.

Пошаговые инструкции: [Claude Code](https://smartpdf.ru/developers/docs/claude-code), [Claude Desktop](https://smartpdf.ru/developers/docs/claude-desktop), [Cursor](https://smartpdf.ru/developers/docs/cursor), [VS Code](https://smartpdf.ru/developers/docs/vscode), [Codex CLI](https://smartpdf.ru/developers/docs/codex), [Gemini CLI](https://smartpdf.ru/developers/docs/gemini), [Windsurf и Cline](https://smartpdf.ru/developers/docs/other-clients), [n8n](https://smartpdf.ru/developers/docs/n8n), [Make](https://smartpdf.ru/developers/docs/make).

## Как агент работает с файлами

Инструменты принимают **публичную ссылку** на файл (`file_url`, до 100 МБ) и возвращают ссылку на результат (`download_url`) со сроком (`expires_at`). Файл с компьютера агент сначала загружает через REST API — см. [Как передать файл](https://smartpdf.ru/developers/docs/files).

## Инструменты

| Инструмент | Что делает | REST |
|---|---|---|
| `word_to_pdf` | Word в PDF | `POST /v1/pdf/word-to-pdf` |
| `jpg_to_pdf` | JPG в PDF | `POST /v1/pdf/jpg-to-pdf` |
| `photo_to_pdf` | Фото в PDF | `POST /v1/pdf/photo-to-pdf` |
| `xlsx_to_pdf` | Excel в PDF | `POST /v1/pdf/xlsx-to-pdf` |
| `pptx_to_pdf` | PowerPoint в PDF | `POST /v1/pdf/pptx-to-pdf` |
| `djvu_to_pdf` | DjVu в PDF | `POST /v1/pdf/djvu-to-pdf` |
| `fb2_to_pdf` | FB2 в PDF | `POST /v1/pdf/fb2-to-pdf` |
| `epub_to_pdf` | EPUB в PDF | `POST /v1/pdf/epub-to-pdf` |
| `html_to_pdf` | HTML в PDF | `POST /v1/pdf/html-to-pdf` |
| `pdf_to_word` | PDF в Word | `POST /v1/pdf/to-word` |
| `pdf_to_jpg` | PDF в JPG | `POST /v1/pdf/to-jpg` |
| `pdf_to_png` | PDF в PNG | `POST /v1/pdf/to-png` |
| `pdf_to_excel` | PDF в Excel | `POST /v1/pdf/to-excel` |
| `pdf_to_pptx` | PDF в PowerPoint | `POST /v1/pdf/to-pptx` |
| `pdf_to_markdown` | PDF в Markdown | `POST /v1/pdf/to-markdown` |
| `pdf_to_txt` | PDF в текст | `POST /v1/pdf/to-txt` |
| `compress_image` | Сжать фото | `POST /v1/pdf/compress-image` |
| `heic_to_jpg` | HEIC в JPG | `POST /v1/pdf/heic-to-jpg` |
| `image_to_text` | Фото в текст | `POST /v1/pdf/image-to-text` |
| `png_to_jpg` | PNG в JPG | `POST /v1/pdf/png-to-jpg` |
| `jpg_to_png` | JPG в PNG | `POST /v1/pdf/jpg-to-png` |
| `webp_to_jpg` | WEBP в JPG | `POST /v1/pdf/webp-to-jpg` |
| `resize_image` | Изменить размер фото | `POST /v1/pdf/resize-image` |
| `crop_image` | Обрезать фото | `POST /v1/pdf/crop-image` |
| `rotate_image` | Повернуть фото | `POST /v1/pdf/rotate-image` |
| `word_to_jpg` | Word в JPG | `POST /v1/pdf/word-to-jpg` |
| `edit_pdf` | Редактор PDF | `POST /v1/pdf/edit` |
| `compress_pdf` | Сжать PDF | `POST /v1/pdf/compress` |
| `grayscale_pdf` | PDF в ч/б | `POST /v1/pdf/grayscale` |
| `pdf_to_pdfa` | PDF в PDF/A | `POST /v1/pdf/to-pdfa` |
| `repair_pdf` | Восстановить PDF | `POST /v1/pdf/repair` |
| `merge_pdfs` | Объединить PDF | `POST /v1/pdf/merge` |
| `split_pdf` | Разделить PDF | `POST /v1/pdf/split` |
| `ocr_pdf` | Распознать текст | `POST /v1/pdf/ocr` |
| `flatten_pdf` | Сгладить PDF | `POST /v1/pdf/flatten` |
| `delete_pages` | Удалить страницы | `POST /v1/pdf/delete-pages` |
| `crop_pdf` | Обрезать PDF | `POST /v1/pdf/crop` |
| `extract_pages` | Извлечь страницы | `POST /v1/pdf/extract-pages` |
| `rotate_pdf` | Повернуть страницы | `POST /v1/pdf/rotate` |
| `reorder_pages` | Порядок страниц | `POST /v1/pdf/reorder-pages` |
| `add_page_numbers` | Нумерация страниц | `POST /v1/pdf/add-page-numbers` |
| `sign_pdf` | Подписать PDF | `POST /v1/pdf/sign` |
| `protect_pdf` | Защитить паролем | `POST /v1/pdf/protect` |
| `unlock_pdf` | Снять пароль | `POST /v1/pdf/unlock` |
| `redact_pdf` | Скрыть персональные данные | `POST /v1/pdf/redact` |
| `find_personal_data` | Найти персональные данные | `POST /v1/pdf/find-personal-data` |
| `watermark_pdf` | Водяной знак | `POST /v1/pdf/watermark` |
| `get_balance` | Баланс API, расход за месяц и цена запроса | `GET /v1/api-keys/balance` |

Параметры каждого инструмента агент получает от сервера сам — они те же, что у REST, но вместо `file_id` — ссылка на файл.

## Оплата

Каждый вызов инструмента — запрос API с той же ценой ([Оплата](https://smartpdf.ru/developers/docs/billing)). `get_balance` показывает остаток и цену запроса. Если денег не хватает, агент получит ошибку с объяснением.

## Примеры запросов к агенту

- «Сожми PDF по этим ссылкам и пришли ссылки на результат»
- «Распознай текст в скане договора и сделай из него Word»
- «Объедини три счёта в один PDF и пронумеруй страницы»
- «Поставь водяной знак «КОПИЯ» на все страницы»
- «Сколько осталось на балансе SmartPDF?»
