MCP-1C on-premise: данные 1С не уходят наружу
- on-premise
- безопасность
- приватность
- 1c
MCP-сервер читает конфигурацию 1С локально, код и данные базы не уходят на сторонние серверы. Где проходит сетевая граница и какие обращения остаются у платных редакций.
Главный вопрос при подключении AI к 1С звучит одинаково у всех: куда уйдёт код конфигурации и данные базы. Ответ короткий: MCP-1C работает как локальный сервер, ваш код не проходит через наши серверы. MCP-сервер читает файлы конфигурации и передаёт данные напрямую в AI-клиент на вашей машине. Это следствие самой архитектуры протокола, и в Открытой редакции сервер вообще обходится без сети.
Почему запуск локальный по самой архитектуре
Транспорт MCP по умолчанию это stdio: AI-клиент запускает бинарник как подпроцесс на вашей машине и общается с ним через stdin и stdout. Отдельные порты и HTTP-серверы для этого не нужны. Это не наше изобретение, а базовый режим протокола. В спецификации MCP сказано прямо: клиент запускает MCP-сервер как подпроцесс, сервер читает JSON-RPC из стандартного ввода и пишет в стандартный вывод. Клиентам рекомендовано поддерживать stdio где это возможно.
Практический вывод: процесс mcp-1c-advanced или mcp-1c-pro живёт ровно столько, сколько открыт ваш AI-клиент. Это отдельный процесс на вашей машине, обмен с клиентом идёт через stdin и stdout, он работает как локальная программа. Один stdio-процесс обслуживает ровно одного пользователя. Никакого слушающего сокета, к которому можно подключиться снаружи, в этом режиме не поднимается.
Отдельно про флаг --listen: встроенный HTTP-сервер это только транспорт длинного опроса для связи с 1С, а не сетевой MCP-сервер для внешнего доступа. Он нужен для подключения к платформе, а не для того, чтобы выставить инструменты наружу.
Что значит on-premise в Открытой редакции
Открытая редакция работает полностью офлайн. MCP-сервер запускается локально и читает файлы конфигурации напрямую. Расширение конфигурации Открытой редакции работает только на чтение: оно не изменяет данные и конфигурацию. То есть в этой редакции в принципе нет операций записи, которые могли бы что-то поменять в базе.
Локальность нашего сервера и локальность самого AI это разные вещи:
- Наш MCP-сервер локален. Файлы конфигурации он читает с диска, в облако вендора их не отправляет.
- Сам AI-клиент (Claude, Cursor и подобные) при этом ходит в своё облако, чтобы получить ответ модели. Это его сеть, не наша.
Граница проходит ровно по этому стыку. Метаданные и фрагменты кода, которые вы передаёте в запрос, отправляет AI-клиент в свою модель по своим правилам. MCP-1C решает за вас задачу локального чтения конфигурации, а политику работы облачной модели определяет ваш клиент. Если контур должен быть полностью закрытым, это вопрос к выбору AI-клиента, а не к нашему серверу.
Сетевые обращения платных редакций
Расширенная и Профессиональная редакции периодически проверяют лицензию через интернет. Это про лицензию, а не про данные 1С. Сам MCP-сервер работает локально, интернет в этом сценарии нужен AI-клиенту для связи со своим облаком и нашему механизму лицензирования.
Как устроена лицензия:
- Ключ активируется один раз.
- Лицензия хранится локально и проверяется периодически.
- Идентичность лицензии лежит в каталоге конфигурации как файл. Отдельной переменной окружения для подмены идентификатора нет, и это локальный файл, а не запрос к серверу при каждом старте.
Активацию можно перенести между машинами: --deactivate освобождает слот устройства, --activate занимает слот на новой машине. Обе команды запускаются на вашей машине, но обращаются к лицензионному серверу для переноса слота устройства.
Ещё одно сетевое обращение платных редакций это самообновление. Команда --update идёт через лицензионный сервер: запрос авторизуется лицензионным ключом и идентификатором машины, а перед заменой бинарника проверяется криптографическая подпись Ed25519 скачанного файла. С данными 1С это не связано.
Что именно уходит в сеть и зачем, по редакциям:
| Обращение | Открытая | Расширенная и Профессиональная | Что передаётся |
|---|---|---|---|
| Чтение конфигурации 1С | локально | локально | ничего наружу |
| Проверка лицензии | нет | да, периодически | вопрос лицензии, не данные 1С |
Самообновление --update |
нет | да, по запросу | ключ и идентификатор машины |
LLM-функции: данные уходят только если вы их включили
К внешнему LLM-провайдеру обращаются четыре функции Профессиональной редакции: автогенерация документации (--build-autodoc), генерация тестов (--build-testgen), генерация .epf обработок (--build-epfgen) и навигация по типовым конфигурациям (--build-typicalconfigs). По умолчанию они отправляют фрагменты кода и метаданных выбранному провайдеру, чтобы обогатить результат. Поддерживаются два провайдера:
- YandexGPT, по умолчанию, флаг
--autodoc-provider yandexgpt, ключиYANDEXGPT_API_KEYиYANDEXGPT_FOLDER_ID. - GigaChat, флаг
--autodoc-provider gigachat, ключиGIGACHAT_CLIENT_IDиGIGACHAT_CLIENT_SECRET.
Учётные данные читаются из переменных окружения. Если они не заданы, бинарник завершается с ошибкой при обращении к провайдеру. У трёх из этих функций обращение к LLM можно отключить, и тогда они работают на вашей машине:
--testgen-llm-disable: генерация только скелетов тестов без LLM-комментариев.--epfgen-llm-disable: сборка бандлов.epfбез LLM-обогащения.--typicalconfigs-llm-disable: индекс подсистем без описаний.
У автогенерации документации отдельного флага отключения нет: она полностью построена на ответах модели и без API-ключей не запускается.
Остальные инструменты от LLM не зависят и работают локально, без обращения к провайдеру: поиск по коду, чтение метаданных и оптимизатор запросов используют только данные конфигурации.
Конфигурация локального запуска
Минимальный конфиг для запуска по stdio на примере Claude Desktop. AI-клиент сам запускает бинарник как подпроцесс на вашей машине, данные 1С читаются локально.
{
"mcpServers": {
"mcp-1c": {
"command": "/usr/local/bin/mcp-1c-advanced",
"args": [
"--base", "acc=File=/Users/me/bases/acc",
"--user", "Администратор",
"--password", ""
]
}
}
}
Путь к файлу конфигурации зависит от ОС:
| ОС | Путь |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
Бинарник один, без внешних зависимостей, Docker для обычной работы не нужен. Поддерживаются Windows, macOS и Linux на amd64 и arm64, совместимость с 1С версий 8.3.x и 8.5.x.
Запись в базу: только в платных и только с подтверждением
В Открытой редакции записи нет вовсе. Расширенная редакция добавляет выполнение кода через sandbox с подтверждением и аудит-логом. То есть запись возможна только в платных редакциях и только при явном подтверждении операции, а не молча по инициативе модели.
Что появится в Корпоративной редакции
Корпоративная редакция в разработке и подаётся как скоро. По плану она добавит Trust Layer для маскирования персональных данных перед отправкой в AI, аудит-лог и мониторинг, on-premise deployment и поддержку с SLA. Точный состав уточняется, дат мы не называем.
Коротко про границу
Безопасность данных 1С в MCP-1C держится на простом разделении. Чтение конфигурации и работа с базой локальны во всех редакциях. В сеть из самого MCP-сервера уходят только служебные вещи платных редакций: проверка лицензии и самообновление, и только LLM-функции при явно заданных ключах отправляют данные выбранному провайдеру. Всё остальное про сеть это поведение вашего AI-клиента, а не нашего бинарника. Подробности по редакциям и инструментам собраны в документации, сравнение и цены на странице тарифов, а начать можно с главной.