# Как передать файл

Источник: https://dev.smartpdf.ru/docs/files

## Файл по ссылке — для MCP

Инструменты MCP принимают ссылку на файл и скачивают его сами. Ссылка должна быть:

- публичной — `http` или `https`, без входа и cookies (подойдут, например, временные ссылки S3 или облачного диска);
- на внешний адрес — адреса внутренних сетей и `localhost` не принимаются;
- на файл до 100 МБ, который скачивается не дольше минуты.

Результат приходит ссылкой — агент передаст её вам или скачает сам.

## Файл с компьютера — через REST

Если файл у вас на диске, его сначала загружают через `POST /v1/upload`, а операцию запускают через REST API — так умеют агенты с доступом к терминалу (Claude Code, Codex CLI, Gemini CLI, Cursor):

```bash
FILE_ID=$(curl -sS -H "X-API-Key: $SMARTPDF_API_KEY" -F "file=@contract.pdf" \
  https://api.smartpdf.ru/v1/upload | jq -r .file_id)
```

Дальше — запуск операции, ожидание и скачивание, как в [быстром старте](https://dev.smartpdf.ru/docs/quickstart). Агенту достаточно попросить: «загрузи contract.pdf в SmartPDF через REST API и сожми его» — и дать ссылку на эту страницу или [llms.txt](https://dev.smartpdf.ru/llms.txt).

Проще — дать агенту навык SmartPDF: инструкцию и скрипт, который сам загрузит файл, запустит операцию и сохранит результат рядом (Python 3, без зависимостей). В Claude Code он входит в [плагин](https://dev.smartpdf.ru/docs/claude-code), для Codex CLI, Gemini CLI, Cursor и VS Code — папка [skills/smartpdf](https://github.com/kirmoz1997/smartpdf-agents/tree/main/skills/smartpdf) в папку навыков агента.
