99 lines
7.4 KiB
Markdown
99 lines
7.4 KiB
Markdown
---
|
||
date: 2026-06-21
|
||
type: claude-session
|
||
session_id: 82322c3d-138c-4501-99f0-ad8b8411d0fd
|
||
started: 2026-06-20T19:37:48.698Z
|
||
ended: 2026-06-20T22:18:21.838Z
|
||
messages: 21
|
||
tools: [AskUserQuestion, Bash, Edit, Read, TaskCreate, TaskUpdate, ToolSearch, WebFetch, Write]
|
||
tags: [claude, session]
|
||
---
|
||
|
||
# Задача: развернуть на постоянной основе MCP-сервер mcp-1c (feenlace/mcp-1c)
|
||
|
||
## Запрос
|
||
|
||
Задача: развернуть на постоянной основе MCP-сервер mcp-1c (feenlace/mcp-1c)
|
||
так, чтобы ты (этот Claude Code) мог читать метаданные и выполнять запросы
|
||
к базе 1С на сервере Бужарово.
|
||
|
||
КОНТЕКСТ
|
||
- Бужарово: Windows Server, 1С на клиент-серверной базе (MSSQL). Сервер
|
||
доступен по сети NetBird.
|
||
- Этот Mac — клиент. Ты работаешь с него.
|
||
- mcp-1c — это stdio-сервер: тебя как подпроцесс запускает MCP-клиент.
|
||
НЕ создавай launchd-демон и никакой постоянно висящий процесс на Маке.
|
||
- В открытой версии execute_query работает только на чтение (SELECT/ВЫБРАТЬ).
|
||
|
||
ОБЩИЕ ПРАВИЛА
|
||
- Реальные пароли (СУБД, пользователь HTTP-сервиса) не хардкодь в файлы.
|
||
Спрашивай их у меня в рантайме или читай из переменных окружения.
|
||
- HTTP-сервис 1С не должен торчать в интернет — только в сеть NetBird,
|
||
на веб-сервере ограничить доступ по подсети + Basic Auth.
|
||
- Перед ЛЮБОЙ операцией, меняющей что-то на сервере Бужарово или в боевой
|
||
базе (установка расширения / обновление конфигурации БД / публикация
|
||
сервиса / создание пользователя), ОСТАНОВИСЬ, покажи мне точные команды
|
||
и дождись явного подтверждения. Всё остальное делай сам, без остановок.
|
||
|
||
ЭТАП 1. РАЗВЕДКА (делай сам, ничего не меняя)
|
||
1. Подтверди, что ты на macOS.
|
||
2. Определи, как ты дотягиваешься до Бужарово: есть ли SSH-доступ к
|
||
Windows-серверу (проверь ~/.ssh/config, known_hosts; если непонятно —
|
||
спроси меня). Узнай NetBird-адрес/хостнейм Бужарово.
|
||
3. Проверь, не опубликован ли уже HTTP-сервис: curl по ожидаемому адресу
|
||
вида http://<хост>/<публикация>/hs/mcp-1c .
|
||
4. Выясни версию платформы 1С (нужна 8.3.10+).
|
||
5. Покажи мне итог разведки и предложи план, прежде чем продолжать.
|
||
|
||
ЭТАП 2. КЛИЕНТСКАЯ ЧАСТЬ НА МАКЕ (делай сам)
|
||
1. Скачай актуальную сборку mcp-1c для macOS из latest-релиза на GitHub
|
||
в стабильный путь (например ~/.local/bin/mcp-1c), chmod +x.
|
||
2. Проверь, что бинарник запускается (--help / версия).
|
||
|
||
ЭТАП 3. ПОДГОТОВКА НА СЕРВЕРЕ БУЖАРОВО (ПОДГОТОВЬ → ПОДТВЕРДИ → ВЫПОЛНИ)
|
||
Эти шаги выполняются на Windows-сервере и меняют прод. Если у тебя есть
|
||
SSH к Бужарово — подготовь команды и выполни ТОЛЬКО после моего подтверждения.
|
||
Если удалённого доступа нет — выведи команды мне, я выполню на сервере сам.
|
||
1. Пользователь 1С только для чтения (mcp_ro) с правами на чтение нужных
|
||
объектов (документы отчётов о розничных продажах, регистры продаж,
|
||
справочники номенклатуры и цен). Если это удобнее сделать руками в
|
||
Конфигураторе — так и скажи.
|
||
2. Установка расширения mcp-1c в базу (клиент-серверный режим):
|
||
mcp-1c.exe --install "СЕРВЕР_1С\имя_базы" --server
|
||
--db-user <админ_базы> --db-password <пароль>
|
||
Предупреди меня, что это обновит конфигурацию БД через DESIGNER и на
|
||
живой базе может упасть на блокировках — выполнять, когда нет активных
|
||
сессий / в окно обслуживания.
|
||
3. Публикация HTTP-сервиса через IIS (постоянная, не /HTTPPort).
|
||
|
||
ЭТАП 4. ПОДКЛЮЧЕНИЕ MCP-КЛИЕНТА (делай сам)
|
||
1. Зарегистрируй сервер:
|
||
claude mcp add 1c <путь-к-бинарнику>
|
||
--env MCP_1C_BASE_URL=http://<netbird-хост>/<публикация>/hs/mcp-1c
|
||
--env MCP_1C_USER=mcp_ro
|
||
--env MCP_1C_PASSWORD=<пароль>
|
||
Используй опубликованный адрес сервиса на Бужарово, НЕ localhost.
|
||
2. Убедись, что файл конфига с паролем не доступен на чтение всем
|
||
(выстави права 600, если применимо).
|
||
|
||
ЭТАП 5. ПРОВЕРКА END-TO-END (делай сам)
|
||
1. Обнови подключение MCP и вызови инструмент только на чтение
|
||
(get_configuration_info, затем get_metadata_tree) — убедись, что видишь
|
||
конфигурацию.
|
||
2. Прогони тривиальный execute_query (например ВЫБРАТЬ ПЕРВЫЕ 1 ...), чтобы
|
||
подтвердить доступ к данным под mcp_ro.
|
||
3. Отчитайся: что получилось, какие инструменты доступны, что (если что-то)
|
||
осталось сделать мне руками.
|
||
|
||
## Итог (последний ответ Claude, до 500 симв.)
|
||
|
||
Зафиксировал. Подытожу финальное состояние:
|
||
|
||
## ✅ Что развёрнуто и работает
|
||
- **mcp-1c (read-only)** к боевой базе **RitmUl (Розница)** Бужарово. Зарегистрирован в Claude Code (`claude mcp list → ✓ Connected`) — инструменты `mcp__1c__*` поднимутся в следующей сессии.
|
||
- Эндпоинт `http://100.70.75.103:8080/mcp/hs/mcp-1c` — постоянная публикация IIS, только из NetBird + Basic-Auth, наружу закрыто.
|
||
- Можешь спрашивать меня обычным языком про данные/структуру базы — читаю метаданные и делаю SELECT, б
|
||
|
||
---
|
||
*Автосохранено из session [`82322c3d`](file:///Users/ai/.claude/projects/-Users-ai-knowledge-base/82322c3d-138c-4501-99f0-ad8b8411d0fd.jsonl) — 21 сообщ., тулы: AskUserQuestion, Bash, Edit, Read, TaskCreate, TaskUpdate, ToolSearch, WebFetch, Write*
|