# Яндекс Директ: Завершить подключение — MCP-инструмент (tool)

**MCP-инструмент (tool) для Яндекс Директа:** Завершает подключение из диалога — обменивает код подтверждения на токен доступа и сохраняет его на диске только для владельца.

Техническое имя: `finish_login`

## Какую задачу решает

> Я хочу завершить вход в Яндекс Директ кодом подтверждения и сразу пользоваться инструментами.

Второй шаг входа: инструмент обменивает код подтверждения из `start_login` на токен доступа (без секрета приложения — подлинность подтверждает PKCE), сохраняет токен в файл с правами только для владельца (0600) и сразу проверяет подключение живым запросом к Директу.

## Когда использовать

Используйте эту возможность сразу после того, как пользователь открыл ссылку из `start_login`, подтвердил доступ и прислал код подтверждения. Код одноразовый и живёт 10 минут.

## Что нужно передать

- `code` — код подтверждения, который Яндекс показал пользователю после входа.

## Что вернёт

`connected: true`, логин подключённого аккаунта (`accountLogin`), путь к файлу с сохранёнными данными и заметку с советом проверить, что это нужный кабинет. После успеха остальные инструменты работают немедленно — перезапускать клиент не нужно.

## Что изменится в Яндекс Директе

В рекламном кабинете ничего не меняется. На локальном диске появляется (или перезаписывается) файл `credentials.json` с токеном доступа; проверочный запрос только читает данные аккаунта.

## Пример запроса

> Вот код подтверждения: 1234567. Заверши подключение Яндекс Директа.

## Возможные ошибки и ограничения

Если код не принят (истёк или уже использован), вызовите `start_login` заново и попросите свежий код. Если проверочный запрос показал не тот логин — вход выполнен под другим аккаунтом Яндекса: повторите `start_login` под нужным. Токен из переменной окружения `YANDEX_DIRECT_TOKEN` имеет приоритет над сохранённым входом.

## Связанные MCP-инструменты

- [Начать подключение](./start-login.md) — `start_login`
- [Статус подключения](./auth-status.md) — `auth_status`
- [Отключить Директ](./logout.md) — `logout`

## Технические сведения

- **Воздействие:** изменяет данные
- **Группа:** Подключение
- **Источник описания:** регистрация `finish_login` в `src/tools/auth.ts`
- [Полный технический справочник](../TOOLS.md)
- [Все MCP-возможности](./index.md)
