establish-mcp
Establish MCP — транспорт до графа
Каждый другой скилл этой поставки предполагает, что MCP-тулы iskron_* уже в сессии. Этот скилл ставит транспорт — и чинит его, когда тулов нет или они есть по имени и отказывают в деле. Его работа кончается там, где начинается работа entry: сессией, чей первый вызов iskron_orient отвечает.
Сервер удалённый (streamable HTTP + OAuth); из него на машину пользователя не ставится ничего. Ставится эта поставка — и она несёт собственный транспорт: scripts/iskron-bridge.mjs, рядом с этим файлом. Отгружаемая запись MCP-сервера (.mcp.json поставки) — нативная, http: её читает только тот харнесс, который умеет плагины, а запускать локальный процесс умеет не всякий, и путь к файлу внутри установленной поставки у каждого харнесса свой. Моста она не поднимает. Мост ставишь ты, и ниже сказано как.
Сначала: которым путём
Ставь мост, и только если не выходит — нативную запись. Иди по лестнице вниз, остановись на первой подходящей строке.
Мост стоит первым не по вкусу: у него две обязанности, которых у нативного MCP-клиента харнесса нет вовсе. Он держит грант без походов в браузер (обновление в простое, один флоу на всю машину, логин тратится последним) — и держит привязку стояния через пересборку сессии: заголовок стояния на открытии сессии плюс переигранный register, без которых записи агента уходят без автора и он узнаёт об этом по пометке на уже ушедшей записи. Третье помельче, но чинит вслепую: отказы моста всегда громкие, каждый называет iskron-bridge, сборку и вердикт.
- На машине есть Node ≥20, и конфиг харнесса берёт
command+args(stdio-сервер) → «Поднятие моста» ниже. Это путь по умолчанию, и единственный, который держит привязку стояния. - Мост не поднять, но у харнесса есть глагол авторизации — Node ≥20 нет или он не на
PATHтого процесса, что запускает серверы; харнесс не запускает локальных процессов (веб-харнесс, claude.ai); конфиг принимает только удалённую запись, — а войти есть чем (/mcp,codex mcp login,opencode mcp auth, кнопка Authenticate, UI коннекторов) → нативная запись (url/httpUrl/serverUrl,type: "http"/"remote"/"streamableHttp") в пользовательском скоупе. Цена называется вслух, а не замалчивается: привязку стояния здесь не держит никто, и standing велитregisterперед каждой несущей записью. - Мост не поднять, и глагола авторизации нет нигде — доки показывают ручные заголовки
Authorization→ нативный OAuth-флоу не случится, а поднять нечего: скажи человеку прямо, что в этом харнессе графа не будет, и назови, чего не хватает — Node для моста или способа войти.
Два подключения к одному графу — обычное дело, и это не поломка. Харнесс, поднявший отгружаемую нативную запись, и поднятый тобой мост дают в сессии два набора тулов iskron_* на один и тот же граф. Пишущие вызовы веди через мост: привязка стояния живёт в его процессе, и та же запись через нативный набор ляжет без автора. Различай их по имени набора в своём харнессе, а при сомнении — по ошибке любого вызова: мост называет себя и сборку.
Когда неясно — разрешай пробой, не чтением доков: подними мост и сделай один вызов. 401, за которым открылся браузер, — путь работает; молчание при живом на других поверхностях сервере — читай таблицу ошибок ниже.