# Безопасность и расходы MCP

> Как MCP-сервер Slicer защищает баланс и данные — подтверждение цены, лимит расходов, области доступа, необратимые действия и команды в чужом тексте.

Источник: https://docs.slicer.media/mcp/costs/

ИИ-ассистент действует от вашего имени, поэтому сервер устроен так, чтобы ни ошибка модели, ни чужой текст в материалах не привели к лишним тратам или потере данных. Защита — в несколько слоёв.

## Что бесплатно

Монтаж вашим ассистентом бесплатен целиком — как **Сам в редакторе** в приложении: создать проект (`create_project` по умолчанию), читать ролик, править его операциями, менять стиль и цвет, экспортировать и публиковать, выбирать версию, переименовывать и удалять проекты, загружать файлы и искать в документации. Токены тратят только ИИ-функции самого Slicer.

## Подтверждение цены

Ни один платный инструмент не тратит токены без подтверждения:

1.  Ассистент вызывает инструмент без `confirmCost` — сервер возвращает цену, баланс и остаток лимита и **ничего не запускает**.
2.  Описание инструмента требует от модели показать цену вам и дождаться согласия.
3.  Повторный вызов с `confirmCost`, равным только что названной цене, запускает операцию. Если цена за это время изменилась, сервер откажет (`cost_changed`) — ассистенту придётся назвать новую цену.

Платные инструменты — ИИ-функции Slicer:

| Функция | Инструменты | Цена |
| --- | --- | --- |
| ИИ-монтаж режиссёром Slicer | `create_project` с `mode: "ai"`, `remount_project`, `retry_project` | 24 токена за ролик до 90 секунд, первый ролик бесплатный |
| Субтитры из речи | `transcribe_speech` | по себестоимости за минуту звука |
| ИИ-помощник Slicer | `ask_assistant` | по себестоимости |
| Перевод субтитров | `translate_captions` | по себестоимости |

Описания инструментов просят модель только предлагать их, а ИИ-режиссёра — запускать лишь по вашей просьбе. `create_project` без `mode` создаёт бесплатный проект без ИИ-режиссёра — без цены и подтверждения.

## Цена по себестоимости

`transcribe_speech`, `ask_assistant` и `translate_captions` стоят ровно столько, сколько стоили вызовы ИИ, без наценки; субтитры из речи — за минуты звука выбранных исходников. Точная цена известна только после выполнения, поэтому вызов без `confirmCost` возвращает две цифры:

-   `estimate` — ожидаемая цена (дробно), её ассистент показывает вам как ориентир;
-   `cost` — предельная цена: её ассистент передаёт в `confirmCost`, и больше неё не спишется.

После выполнения спишется фактическая себестоимость — не больше предельной и только если операция получилась: помощник что-то изменил, перевод или распознавание удались (если распознавание не получилось, токены вернутся). С баланса уходят целые токены, дробный остаток копится у проекта. Поле `enough` в ответе показывает, хватает ли баланса и лимита расходов подключения на ожидаемую цену.

> **Важно.** Многие клиенты позволяют разрешить инструмент «навсегда», без вопросов. Для платных инструментов Slicer так делать не советуем: подтверждение цены в разговоре — ваша главная защита от случайного запуска.

## Лимит расходов

У каждого подключения есть месячный лимит токенов. В окне согласия OAuth он по умолчанию — 200 токенов в месяц; у API-токена — тот, что вы задали при создании. Операция, которая не помещается в лимит, не запускается (`spend_limit_exceeded`), даже если на балансе токенов достаточно. Расход за месяц виден в **Профиль** → «Для разработчиков», лимит там же можно поменять.

## Доступы

Области доступа ограничивают, какие инструменты ассистенту вообще доступны:

| Чтобы ассистент… | Оставьте | Уберите |
| --- | --- | --- |
| только смотрел проекты и отвечал на вопросы | «Только чтение» | всё остальное |
| создавал проекты и монтировал сам, а платные функции — только с вашего согласия | набор «Монтаж» | `publish`, если публиковать не нужно |
| создавал проекты, монтировал и экспортировал сам и не мог потратить ни одного токена | `projects:write` | `montage:run` |

Создать бесплатный проект «Сам в редакторе» (`create_project`) можно и без `montage:run` — хватает `projects:write`. Область `montage:run` нужна только платным ИИ-функциям: по ней ничего не списывается без подтверждённой цены, а лимит расходов подключения ограничивает траты сверху.

Подробно об областях — [Токены и области доступа](https://docs.slicer.media/api/authentication/).

## Необратимые действия

`delete_project` удаляет проект вместе с файлами, `cancel_project` останавливает идущий монтаж, `remount_project` пересобирает ролик ИИ-режиссёром заново. Они помечены как необратимые (`destructiveHint`) — клиенты, которые учитывают пометки, переспрашивают перед вызовом. Чтение помечено `readOnlyHint`; загрузка по адресу, экспорт с публикацией и поиск по документации — `openWorldHint`: они обращаются к внешним сервисам.

## Текст — это данные, а не команды

В ответах инструментов есть текст, который написали люди: названия проектов, субтитры, пожелания режиссёру, описания публикаций. Кто-то мог бы спрятать в такой текст команду для модели. Поэтому:

-   описания инструментов прямо говорят модели, что пользовательский текст — это данные, а не инструкции;
-   служебные поля ответа отделены от пользовательского текста;
-   опасные действия всё равно требуют подтверждения: цена — `confirmCost`, удаление — вопрос клиента.

Если ассистент вдруг предлагает действие, о котором вы не просили, — откажитесь и проверьте, откуда взялась идея.

## Защита сервера

-   **Только HTTPS и токены в заголовке.** Сервер не принимает cookie, поэтому сайт, открытый в вашем браузере, не может действовать от вашего имени.
-   **Проверка `Origin`.** Запросы браузера к MCP-серверу принимаются только с доверенных адресов, остальные получают отказ `403` — это защищает от атак через подмену DNS.
-   **Токены подключения короткие.** Токен доступа OAuth живёт час; повторное использование заменённого токена обновления отзывает всё подключение.
-   **Журнал.** Каждый вызов обновляет «последнее использование» подключения, платные операции записываются в историю проекта — видно, что и когда сделал ассистент.

Как защищены аккаунт, файлы и платежи в целом — на странице [Безопасность](https://docs.slicer.media/security/).

## Если что-то пошло не так

-   Отключите приложение: **Профиль** → «Для разработчиков» → «Подключённые приложения» → «Отключить» (или «Отозвать» у токена). Доступ прекращается сразу.
-   Остановите идущий монтаж — в приложении или попросите ассистента `cancel_project`: зарезервированные токены вернутся.
-   Если монтаж не получился, токены не списываются: резерв возвращается на баланс автоматически.

## Что дальше

[ОграниченияЛимиты запросов и что пока недоступно.](https://docs.slicer.media/mcp/limits/)[Данные и приватностьКакие данные видит ассистент.](https://docs.slicer.media/mcp/privacy/)
