- Explore MCP Servers
- 1c_mcp
1c Mcp
What is 1c Mcp
This project is a tool for developing MCP (Model Context Protocol) servers using the 1C:Enterprise platform. It enables the creation of extensions that provide data and functionality to AI assistants like Claude and Cursor by utilizing a Python proxy that connects to HTTP services in 1C.
Use cases
The MCP server facilitates integration with AI clients, allowing for improved data access and interaction within 1C applications. Use cases include retrieving metadata from 1C configurations, performing actions through AI tools, and enhancing functionality for specific business scenarios.
How to use
To get started, clone the repository, set up a Python virtual environment, install dependencies, and configure connection settings in a .env file for HTTP or directly within client settings for stdio mode. Run the Python proxy server to start interacting with AI clients.
Key features
Key features include support for both stdio and HTTP with SSE modes, a customizable Python proxy, built-in HTTP service, and extensibility for adding tools, resources, and prompts within the 1C environment. It also provides structured examples for integration.
Where to use
This MCP server and proxy can be used in environments where 1C:Enterprise applications need AI assistance, such as business process automation, data analysis, and software configuration management. It is suitable for developers looking to enhance 1C applications with AI capabilities.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is 1c Mcp
This project is a tool for developing MCP (Model Context Protocol) servers using the 1C:Enterprise platform. It enables the creation of extensions that provide data and functionality to AI assistants like Claude and Cursor by utilizing a Python proxy that connects to HTTP services in 1C.
Use cases
The MCP server facilitates integration with AI clients, allowing for improved data access and interaction within 1C applications. Use cases include retrieving metadata from 1C configurations, performing actions through AI tools, and enhancing functionality for specific business scenarios.
How to use
To get started, clone the repository, set up a Python virtual environment, install dependencies, and configure connection settings in a .env file for HTTP or directly within client settings for stdio mode. Run the Python proxy server to start interacting with AI clients.
Key features
Key features include support for both stdio and HTTP with SSE modes, a customizable Python proxy, built-in HTTP service, and extensibility for adding tools, resources, and prompts within the 1C environment. It also provides structured examples for integration.
Where to use
This MCP server and proxy can be used in environments where 1C:Enterprise applications need AI assistance, such as business process automation, data analysis, and software configuration management. It is suitable for developers looking to enhance 1C applications with AI capabilities.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
Разработка MCP-серверов в 1С
Инструмент для создания MCP (Model Context Protocol) серверов на платформе 1С:Предприятие. Позволяет разрабатывать расширения 1С, которые предоставляют данные и функциональность базы для AI-ассистентов (Claude, Cursor и других).
Python-прокси может работать в двух режимах:
- stdio - для подключения нативных MCP-клиентов (Claude Desktop, Cursor)
- HTTP с SSE - для веб-приложений и кастомных интеграций
Проект включает готовый пример MCP-сервера и инфраструктуру для разработки собственных инструментов, ресурсов и промптов.
Зачем нужен прокси?
В 1С:Предприятие на данный момент невозможно реализовать полноценный MCP-сервер без внешнего прокси по следующим причинам:
- Отсутствие поддержки консольных приложений - в 1С нельзя создать приложение, работающее через stdio
- Ограниченные возможности HTTP-сервисов - нет поддержки Server-Sent Events (SSE) и потокового вывода
Поэтому используется архитектура с Python-прокси:
AI-клиент ←→ MCP-прокси (Python) ←→ HTTP-сервис 1С
Компоненты проекта
src/py_server/
- MCP-прокси сервер на Pythonsrc/1c_ext/
- Расширение для 1С с HTTP-сервисом и инструментами (готовый пример)mcp_client_settings/
- Примеры настроек подключения MCP-сервера для разных MCP-клиентов
Быстрый старт
1. Требования
- Python 3.11+
- 1С:Предприятие 8.3.20+
- Возможность публикации HTTP-сервисов из базы
2. Установка Python-прокси
Клонируйте репозиторий и установите зависимости в виртуальном окружении:
# Клонирование репозитория
git clone https://github.com/vladimir-kharin/1c_mcp.git
cd 1c_mcp
# Создание виртуального окружения
python -m venv venv
# Активация (Windows)
venv\Scripts\activate
# Активация (Linux/Mac)
source venv/bin/activate
# Установка зависимостей
pip install -r src/py_server/requirements.txt
3. Настройка
Для режима HTTP с SSE создайте файл .env
в корне проекта:
# Скопируйте пример настроек (Windows)
copy src\py_server\env.example .env
# Или (Linux/Mac)
cp src/py_server/env.example .env
Для режима stdio настройки удобнее задавать непосредственно в конфигурации MCP-клиента через переменные окружения - это позволяет использовать разные настройки для разных проектов без создания отдельных .env
файлов.
Отредактируйте .env
(или настройки клиента) с параметрами вашей базы 1С:
MCP_ONEC_URL=http://localhost/your_base_name
MCP_ONEC_USERNAME=your_username
MCP_ONEC_PASSWORD=your_password
MCP_ONEC_SERVICE_ROOT=mcp
MCP_LOG_LEVEL=INFO
4. Запуск
# Для MCP-клиентов (stdio режим)
python -m src.py_server
# Для веб-приложений (HTTP режим)
python -m src.py_server http --port 8000
Подключение к AI-клиентам
В папке mcp_client_settings/
находятся примеры настроек для различных клиентов:
- Claude Desktop - см.
mcp_client_settings/claude_desktop/
- Cursor - см.
mcp_client_settings/cursor/
Каждый клиент имеет свои особенности подключения и конфигурации.
Реализация MCP-сервера в 1С
Архитектура расширения
1С-расширение содержит:
- HTTP-сервис
mcp_APIBackend
- универсальный JSON-RPC обработчик (не требует доработки, используется как есть) - Обработки-контейнеры - реализуют конкретные инструменты, ресурсы и промпты
Готовый пример: В репозитории уже реализован рабочий пример с инструментами для анализа метаданных конфигурации:
- Получение списка объектов метаданных с фильтром по типу и имени (синониму)
- Подробное описание структуры выбранного объекта метаданных (реквизиты, табличные части, формы и т.д.)
Создание инструментов
Для создания нового инструмента:
- Создайте обработку (например,
mcp_ИмяНабораИнструментов
) - Включите её в подсистему
mcp_КонтейнерыИнструментов
- Реализуйте в модуле менеджера два метода:
Процедура ДобавитьИнструменты(Инструменты) Экспорт // Формирование списка инструментов и описания их параметров КонецПроцедуры Функция ВыполнитьИнструмент(ИмяИнструмента, Аргументы) Экспорт // Роутинг вызовов в зависимости от ИмяИнструмента конкретных методов, реализующих тот или иной инструмент КонецФункции
Типы MCP-примитивов
Расширение поддерживает все типы MCP-примитивов:
- Tools (Инструменты) - функции для выполнения действий в 1С
- Resources (Ресурсы) - данные для предоставления контекста
- Prompts (Промпты) - шаблоны сообщений с параметрами
Подробная документация по архитектуре и разработке инструментов находится в src/1c_ext/agents.md
. Если будете разрабатывать с использованием ИИ-инструментов - подгружайте этот файл в контекст.
Документация
- Концепция проекта - общая архитектура и принципы
- Документация Python-прокси - детальное описание прокси-сервера
- Архитектура 1С-расширения - подробности реализации на стороне 1С
- Примеры настроек клиентов - конфигурации для разных AI-клиентов
Лицензия
MIT License
Поддержка и развитие
Проект активно развивается. Вопросы и предложения по улучшению приветствуются через Issues.
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.