90 lines
2.9 KiB
Markdown
90 lines
2.9 KiB
Markdown
# 1C MCP Toolkit Inventory
|
||
|
||
Дата фиксации: 2026-03-22
|
||
|
||
## 1. Источник и версия
|
||
|
||
- Репозиторий: `https://github.com/ROCTUP/1c-mcp-toolkit`
|
||
- Локальный путь: `X:\1C\NDC_1C\external\1c-mcp-toolkit`
|
||
- Ветка: `main`
|
||
- Commit: `1d2015214735d2c3d253ba184e0a45efd9ce6c5f`
|
||
|
||
## 2. Ключевые артефакты
|
||
|
||
- `build/MCP_Toolkit.epf` (x64)
|
||
- Размер: `1 309 698` bytes
|
||
- SHA256: `94092B98CD3A9A2250B494D39F53C416F1C3E4302EEDD97D7D2EA224032A9B0A`
|
||
- `build/MCP_Toolkit_x86.epf` (x86)
|
||
- Размер: `1 188 908` bytes
|
||
- SHA256: `9877B000AD7B86ADBA14C9F0208FBAC1E42F388A4332CA5EE39A55523F378519`
|
||
|
||
## 3. Режимы запуска
|
||
|
||
1. Встроенный сервер (внутри `.epf`, без Python)
|
||
- Запуск из формы обработки 1С.
|
||
- Endpoint MCP/REST поднимается прямо в клиенте 1С.
|
||
2. Прокси-режим (Python/FastAPI)
|
||
- Точка входа: `python -m onec_mcp_toolkit_proxy`
|
||
- Бридж с 1С через long polling (`/1c/poll`, `/1c/result`).
|
||
|
||
## 4. Прокси-состав и зависимости
|
||
|
||
- Python пакет: `onec_mcp_toolkit_proxy`
|
||
- Основные зависимости (`requirements.txt`):
|
||
- `fastapi`, `uvicorn`, `mcp`
|
||
- `pydantic`, `pydantic-settings`
|
||
- `toon-format`, `charset-normalizer`
|
||
- `spacy==3.8.0`, `pyahocorasick==2.3.0`
|
||
|
||
## 5. MCP/REST инструменты
|
||
|
||
- `execute_query`
|
||
- `execute_code` (в проекте запрещён к использованию)
|
||
- `get_metadata`
|
||
- `get_event_log`
|
||
- `get_object_by_link`
|
||
- `get_link_of_object`
|
||
- `find_references_to_object`
|
||
- `get_access_rights`
|
||
|
||
## 6. Endpoint-карта прокси
|
||
|
||
- MCP:
|
||
- `/mcp`
|
||
- `/mcp/message`
|
||
- 1С bridge:
|
||
- `/1c/poll`
|
||
- `/1c/result`
|
||
- `/1c/anonymization_mappings`
|
||
- Service:
|
||
- `/health`
|
||
- REST:
|
||
- `/api/execute_query`
|
||
- `/api/execute_code`
|
||
- `/api/get_metadata`
|
||
- `/api/get_event_log`
|
||
- `/api/get_object_by_link`
|
||
- `/api/get_link_of_object`
|
||
- `/api/find_references_to_object`
|
||
- `/api/get_access_rights`
|
||
|
||
## 7. Важные настройки безопасности
|
||
|
||
- По умолчанию в коде: `ALLOW_DANGEROUS_WITH_APPROVAL=false`.
|
||
- В `docker-compose.yml` репозитория задано `ALLOW_DANGEROUS_WITH_APPROVAL=true` (для нашего проекта это нужно переопределять в `false`).
|
||
- Для нашего контура принят режим только read-only:
|
||
- не использовать `execute_code`;
|
||
- не публиковать endpoint наружу;
|
||
- отдельный техпользователь 1С с правами чтения.
|
||
|
||
## 8. Снэпшоты PoC
|
||
|
||
- Папка: `X:\1C\NDC_1C\docs\snapshots\toolkit`
|
||
- Файлы:
|
||
- `health_response.json`
|
||
- `get_metadata_response.json`
|
||
- `execute_query_response.json`
|
||
- `get_object_by_link_response.json`
|
||
- `proxy_stderr.log`
|
||
- `proxy_stdout.log`
|