# 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`
