Подключение CLI @seameet/mcp
Глава 18: Подключение CLI @seameet/mcp
CLI @seameet/mcp — headless-сервер Model Context Protocol, позволяющий другим инструментам (Claude Desktop, IDE, агентам) читать и писать в ваш аккаунт SeaMeet. Поскольку он headless, вы одобряете его через процесс device-авторизации (RFC 8628) — CLI показывает вам короткий код, вы посещаете URL, подтверждаете код, готово.
Эта глава покрывает сторону веб-приложения: страницу /link, действие одобрения и защитные механизмы.
Процесс, от начала до конца
- Запустите CLI (например,
npx @seameet/mcpили клиент, который его запускает). - CLI печатает короткий код и URL — обычно
app.seameet.ai/linkи код видаABCD-EFGH. - Откройте URL в браузере.
- На странице
/linkвведите код (или CLI может предзаполнить его через query string). - Кликните Approve.
- CLI получает ключ API чтения+записи от вашего имени и теперь может действовать.
Всё. Весь процесс обычно занимает менее 30 секунд.
Что значит «от вашего имени»
Ключ API, выпущенный /link, — реальный то кен на пользователя со scope'ом на ваш аккаунт SeaMeet. Всё, что CLI делает с ним, появляется в вашей библиотеке как ваше действие. Конкретно:
- Чтение — CLI может листать ваши записи, получать транскрипты и резюме, запрашивать Meeting Memory по вашему архиву.
- Запись — CLI может создавать записи (через загрузку), обновлять заголовки и описания, создавать обмены и вообще делать то, что может ваша обычная сессия.
Поскольку токен привязан к вашему аккаунту, отзыв вашей сессии (выйти везде) НЕ отзывает токен CLI — токен отдельная учётная единица. См. «Отзыв одобрения CLI» ниже.
Требуется вход
Страница /link требует реального вошедшего, верифицированного аккаунта. Это значит:
- Разлогинены. Страница перенаправляет вас на
/signinс параметромreturnTo, несущим код, так что после входа процесс возобновляется на/linkс кодом нетронутым. - Анонимная гостевая сессия. То же, что разлогинен — гостевая сессия не может одобрить CLI, потому что CLI нужна реальная идентичность для привязки. Вас отправляют на
/signin, чтобы повысить сессию до реального аккаунта. - Вошёл и верифицирован. Действие одобрения включено.
Это намеренная защита. Без неё CLI мог бы действовать «от имени» одноразовой анонимной сессии, которую ни один человек сознательно не открывал.
Явный click-to-approve
Страница /link никогда не авторизует автоматически. Даже когда код предзаполнен через ?code=<value>, вы должны явно кликнуть Approve. Это защитно: авто-одобрение при загрузке было бы вектором фишинга — злонамеренная страница могла бы открыть /link?code=<код-атакующего> в вашем браузере и отчеканить токен для атакующего, прежде чем вы заметили.
Всегда проверяйте, что код, показанный на странице, совпадает с кодом, показанным вашим CLI, прежде чем кликать Approve. Если не совпадает, закройте страницу.
Действие одобрения
Кликните Approve и:
- Веб-приложение верифицирует код на серверах SeaMeet.
- Сервер проверяет, что код валиден, не истёк и привязан к реальному (неанонимному) аккаунту.
- Если валиден, он отчеканивает ключ API, ассоциирует его с кодом и возвращает успех.
- CLI, который опрашивал token-endpoint, получает ключ и печатает сообщение успеха.
- Страница
/linkвеб-приложения показывает «Approved» — вкладку можно закрыть.
Если код истёк (коды RFC 8628 короткоживущие — обычно 15 минут), CLI должен сгенерировать свежий и начать заново.
Отзыв одобрения CLI
Два способа:
- Со стороны CLI. Удалите токен в локальном хранилище CLI (или запустите команду
logoutCLI, если есть). Токен остаётся валидным на сервере, пока вы не отзовёте его и там. - Со стороны аккаунта. Аккаунт → Connected apps → найдите одобрение CLI по его метке последнего использования → Revoke. Это инвалидирует токен на сервере немедленно.
Для параноиков: отзывайте на сервере. Удаление со стороны CLI лишь останавливает текущий процесс CLI использовать токен; оно не предотвращает использование копии токена в другом месте.
Множественные одобрения CLI
Вы можете одобрить CLI несколько раз (например, по разу на каждую машину, где используете). Каждое одобрение отчеканивает отдельный ключ API. Аккаунт → Connected apps листит их с метаданными на ключ (последнее использование, первое одобрение).
Отзыв одного одобрения CLI не влияет на остальные.
Безопасность токена
- Токен хранится в локальной директории конфигурации CLI, по умолчанию без шифрования.
- Если ваша машина скомпрометирована, токен скомпрометирован. Отзовите на сервере и одобрите заново.
- Токен не имеет истечения по умолчанию (долгоживущий). Если хотите короткоживущие токены, отзывайте и одобряйте заново по вашему расписанию ротации.
- Токены передаются по HTTPS (защищено HSTS — см. Главу 17).
Прохождение прав
CLI действует как вы — так что у него ваш уровень прав. Если вы на бесплатном тарифе, CLI подлежит reveal-cap бесплатного тарифа при чтении транскриптов. Sync Pro? CLI имеет полный доступ на чтение.
Действия записи вроде создания записей учитываются в ваших квотах так же, как обычная сессия.
Типичные проблемы
«Код истёк». Коды короткоживущие (обычно 15 минут). Перезапустите CLI, чтобы получить свежий.
«Код одобрен, но CLI не заметил». CLI опрашивает token-endpoint каждые несколько секунд. Дайте 10-15 секунд. Если всё ещё ничего, перезапустите CLI — он мог уронить цикл опроса.
«Я вошёл и потерял код». Страница /link несёт код в returnTo — войдите, и вы вернётесь с кодом сохранённым. Если как-то потерялся, перезапустите CLI для свежего кода.
«Approve возвращает ошибку "not_entitled"». Права аккаунта не включают одобрение CLI — сейчас одобрение CLI требует Sync Pro. Апгрейднитесь и повторите.
«Я одобрил, но мой CLI всё ещё говорит "authorization required"». Проверьте директорию конфигурации CLI на предмет сохранённого токена (путь варьируется по версии CLI). Если пусто, CLI пропустил токен — перезапустите и одобрите заново.
Краткая справка
| Задача | Как |
|---|---|
| Одобрить код CLI | app.seameet.ai/link → введите/проверьте код → Approve |
| Отозвать токен CLI (сервер) | Аккаунт → Connected apps → Revoke |
| Отозвать токен CLI (клиент) | Команда logout CLI, или удалите файл конфигурации CLI |
| Увидеть все одобрения | Аккаунт → Connected apps |
| Одобрить на нескольких машинах | Одобрите по разу на машину — каждая отчеканит отдельный токен |
Последнее обновление: 2026-08-28
Опубликовано: