Инструмент для создания MCP (Model Context Protocol) серверов на платформе 1С:Предприятие. Позволяет разрабатывать расширения 1С, которые предоставляют данные и функциональность базы для AI-ассистентов (чаты с языковыми моделями, Claude Desktop, Cursor и других AI-клиентов).
Подробное видео о проекте и его возможностях:
VK Видео | Youtube | Rutube
Проект содержит готовое расширение для 1С, которое берет на себя всю техническую рутину протокола MCP. Вам остается только реализовать бизнес-логику ваших инструментов. Инструменты для работы с метаданными конфигурации 1С доступны "из коробки".
Качество ответа языковой модели (LLM) напрямую зависит от качества предоставленного ей контекста. Подготовка такого контекста вручную может быть трудоемкой.
Model Context Protocol (MCP) — это открытый стандарт, который позволяет модели самой запрашивать необходимые данные через специальные "инструменты" (tools), предоставляемые вашим сервером. Таким образом, контекст для решения задачи собирается автоматически.
src/1c_ext/- Расширение 1С: Ядро решения. Реализует MCP-сервер и инструменты.src/py_server/- Python-прокси: Опциональный, но рекомендуемый компонент для решения инфраструктурных задач.
Подключите готовое, собранное расширение из каталога build/MCP_Сервер.cfe в вашу конфигурацию.
Опубликуйте на веб-сервере HTTP-сервис mcp_APIBackend, который находится в расширении.
Важно: Для прямого подключения AI-клиента к 1С (без прокси) требуется публиковать базу без необходимости аутентификации ("вшить" реквизиты доступа к базе в default.vrd), что является небезопасным. Решение этой проблемы описано в разделе "Варианты подключения".
Подключите MCP-клиент (например, Cursor) к опубликованному HTTP-сервису (.../ваша_база/hs/mcp/). Примеры настроек для разных клиентов находятся в папке mcp_client_settings/.
- Как работает:
AI-клиент ←→ HTTP-сервис 1С - Ограничения:
- Требует публикации HTTP-сервиса без аутентификации 1С.
- Невозможно подключить клиенты, требующие транспорт
stdio. - Ограниченная совместимость с некоторыми HTTP-клиентами из-за нюансов протокола.
-
Как работает:
AI-клиент ←→ MCP-прокси (Python) ←→ HTTP-сервис 1С -
Зачем он нужен? Прокси решает ключевые инфраструктурные проблемы:
- Проблема транспорта: Позволяет подключать клиенты, работающие по
stdio. - Проблема аутентификации: Реализует протокол
OAuth2(стандартный способ аутентификации в MCP) и передает авторизацию в 1С черезBasic Auth. Это позволяет не отключать аутентификацию 1С на веб-сервере. Прокси поддерживает два режима: работа от имени одного фиксированного пользователя или "проброс" аутентификации каждого пользователя под его собственными учетными данными.
- Проблема транспорта: Позволяет подключать клиенты, работающие по
-
Настройка и запуск прокси:
- Детальная инструкция по требованиям, установке, настройке и запуску находится в документации Python-прокси.
Функциональность расширяется добавлением собственных инструментов для взаимодействия с данными 1С.
-
Шаг 1: В расширении создайте новую обработку и включите ее в подсистему
mcp_КонтейнерыИнструментов. -
Шаг 2: В модуле менеджера этой обработки реализуйте два экспортных метода:
// Метод для описания инструментов и их параметров
Процедура ДобавитьИнструменты(Инструменты) Экспорт
// ... здесь вы описываете, какие инструменты предоставляет ваша обработка
КонецПроцедуры
// Метод для выполнения логики инструмента
Функция ВыполнитьИнструмент(ИмяИнструмента, Аргументы) Экспорт
// ... здесь вы реализуете логику, которая будет вызвана AI-моделью
КонецФункцииПодробное руководство по разработке находится в файле src/1c_ext/agents.md.
Помимо Инструментов (Tools), проект также поддерживает Ресурсы (Resources) для предоставления статического контекста (например, файлов) и Промпты (Prompts) для заготовленных шаблонов сообщений.
- Документация Python-прокси — детальное описание настройки и запуска прокси-сервера.
- Руководство по разработке в 1С — подробности реализации инструментов, ресурсов и промптов на стороне 1С. Можно подключать к генераторам кода (AI-агентам).
- Примеры настроек клиентов — готовые конфигурации для разных AI-клиентов.
MIT License
Проект активно развивается. Вопросы и предложения по улучшению приветствуются через Issues.