3. Описание MCP-сервера › 3.2 Сессия › session_connect

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

Право

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

Параметры

Нет: магазин и логин определяются без агента.

Ответ

Два блока: сначала данные сессии в JSON, затем текст.

Данные

{
  "store":   {"name": "shop.example.com", "url": "https://shop.example.com",
              "folder": "D:\\Melbis\\shop.example.com", "pinned": false},
  "user":    {"id": 5, "login": "manager", "name": "Ирина",
              "options": {"LANG": "ru"}, "from": "program"},
  "group":   {"id": 2, "skey": "MANAGER", "name": "Менеджеры", "options": {}},
  "demo":    false,
  "folder":  "D:\\Melbis\\shop.example.com\\mcp\\claude-code",
  "build":   {"current": "6.5.1.545", "previous": "6.5.1.544"},
  "memory":  {"notes": 3, "critical": 1},
  "tools":   16,
  "tasks":   {"waiting": [{"state": "kNew", "name": "Новое", "count": 2}],
              "given":   [{"state": "kAccept", "name": "Принято", "count": 1}]},
  "granted": ["session_init", "session_connect", "session_rules_accept", "shop_page", "shop_run", "engine_map_tree"]
}
Поле Что это
store магазин: название из списка магазинов программы, адрес, папка на компьютере; pinned — закреплён ли за ним сервер
user пользователь: номер, логин, имя, параметры; from — откуда взят логин: program — от запущенной программы, settings — из сохранённых настроек
group группа пользователя: номер, skey, название, параметры; null, если группы нет
demo магазин работает в демо-режиме, без лицензии
folder рабочая папка агента в папке магазина
build сборка программы: текущая и та, с которой агент работал в этом магазине в прошлый раз; пустая previous — первая сессия
memory сколько заметок видно агенту и сколько из них критических; null — нет права читать память
tools сколько у магазина AI-инструментов; null — нет права на их список
tasks открытые задачи планировщика по состояниям, два списка: waiting — ход за пользователем («Новое», «Перепоручено», «Требует уточнения», «Выполнено» — сданные ему как создателю), given — поставленные им другим, во всех открытых состояниях; закрытые не считаются; null — у пользователя нет права на планировщик
granted MCP-инструменты, выданные этому логину

Параметры — это опции, которые владелец задаёт в окне «Пользователи и права доступа» на вкладках «Опции пользователя» и «Опции группы» (подписи на оригинальном языке могут отличаться). В набор попадают параметры с заполненным ключом (skey). Значение из списка приходит своим ключом, а если ключа нет — названием; свободный ввод приходит текстом. Пустой набор — {}.

Текст

Сначала — только то, что требует именно этот случай:

Затем — правила сессии: что означают поля данных, кто агент в магазине и с кем работает, порядок работы, источники, память магазина, сервер, компьютер и локальная папка магазина.

Карта проекта при входе не загружается: каждую её часть агент запрашивает своим инструментом, когда она нужна.

Повторный вызов открывает сессию заново: список прав, принятые правила и прочитанные критические заметки сбрасываются.

Отказы

Ответ Когда Что делать
NO_STORE: в программе на этом компьютере ни разу не открывали магазин открыть магазин в программе
NO_SUCH_STORE: сервер закреплён за папкой, которой нет в списке магазинов программы, или после --store не указана папка исправить конфигурацию сервера в приложении-агенте или один раз открыть этот магазин в программе
NO_SHOP_INI: в папке магазина не читается Shop.ini проверить папку магазина
NO_SETTINGS: паролю неоткуда взяться: программа не запущена на этом магазине или не ответила, а пароль не сохранён. Текст называет, что именно сервер увидел. Второй случай — программа на этом магазине запущена, но её подключение сейчас без пароля запустить программу на этом магазине, открыть в ней магазин заново или включить «хранить пароли» в настройках подключения; во втором случае — ввести пароль на закладке «Параметры подключения» окна «Подключение» и сохранить

Отказы лицензии, пароля, адреса, версий и окна резервного копирования приходят от магазина и бывают у любого инструмента — «Ответы и отказы».