1C Buddy MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
foxnaim · Чат, MCP и OpenAI API сервер для общения с 1С:Напарник
Готовая основа под клиентский проект. Стек: JavaScript. Лицензия AGPL-3.0 сохранена, история коммитов и авторы оригинального проекта сохранены.
1C Buddy - Чат, MCP сервер и OpenAI совместимый API шлюз для общения с 1С:Напарник
⚠️ Дисклеймер: используйте на свой страх и риск
Проект обращается к API сервиса 1С:Напарник (
code.1c.ai) из стороннего клиента. По пользовательскому соглашению API предназначено для работы из 1С:EDT; вызов из внешних приложений соглашением не предусмотрен и трактуется сервисом как нарушение.Сам 1С:Напарник начал детектировать и напоминать об этом: если запрос пришёл не из 1С:EDT, модель получает указание в мягкой форме сообщить пользователю, что API предназначено для 1С:EDT. Поэтому в ответах периодически может появляться соответствующая приписка.
Проект сделан в исследовательских целях. Ответственность за использование — целиком на вас, включая возможную блокировку токена или учётной записи. Автор не связан с фирмой «1С» и никаких гарантий не даёт.
Если вы разработчик и у вас есть идеи сотрудничества — фирма «1С» предлагает писать на ailab@1c.ru.
Related MCP server: 1C Buddy
Возможности
💬 Веб-интерфейс чата
Современный, адаптивный интерфейс чата
Управление историей разговоров с изолированными контекстами (история хранится локально в браузере)
Ответы в реальном времени с потоковой передачей
Отдельное отображение tool call / tool result / follow-up блоков
Пользовательские инструкции рабочего пространства
Подключение внешних HTTP MCP серверов прямо из настроек чата
Отображение reasoning-дельт в процессе генерации
Подсветка синтаксиса для кода 1C (BSL) и XML с автоопределением
Прикрепление файлов (.bsl, .xml, .txt)
Просмотр содержимого прикрепленных файлов в браузере
Поиск по содержимому прикрепленных файлов
Визуализация mermaid диаграмм с возможностью сохранить в png
Поиск по истории сообщений
Экспорт истории разговоров в JSON
Отображение статистики токенов (входящие/исходящие/всего)
Копирование сообщений в буфер обмена
Контекстное меню форматирования кода с горячими клавишами

🔧 MCP сервер
Два транспорта поверх одного набора инструментов:
HTTP —
POST /mcpвнутри основного сервиса (нужен запущенный контейнер или1c-buddy http)stdio —
1c-buddy-mcpдля Codex / IDE: не открывает порт, не поднимает чат, не требует FastAPI
Доступные инструменты:
ask_1c_ai- общие вопросы по платформе 1С и практическим сценариямexplain_1c_syntax- объяснение конкретного объекта, метода или конструкции 1Сcheck_1c_code- синтаксическая проверка или code review фрагмента кода 1Сmodify_1c_code- изменение кода 1С по явному заданию пользователяsearch_1c_documentation- поиск по документации платформы 1С:Предприятиеsearch_its- поиск по базе знаний ИТСfetch_its- получение содержимого конкретного документа или раздела ИТС поiddiff_1c_documentation_versions- сравнение документации платформы между двумя версиями
🚀 OpenAI-совместимый API
OpenAI-совместимый формат для
/v1/modelsи/v1/chat/completionsПотоковые и непотоковые ответы с поддержкой Server-Sent Events (SSE)
Стандартная аутентификация с Bearer токенами
Быстрый старт
Получите токен code.1c.ai с сайта code.1c.ai
Запустите с Docker:
docker pull roctup/1c-buddy docker run -d --name 1c-buddy --restart unless-stopped -p 6002:6002 -e "ONEC_AI_TOKEN=<your_1c_ai_token>" roctup/1c-buddyЕсли нужен также OpenAI API шлюз:
docker pull roctup/1c-buddy docker run -d --name 1c-buddy --restart unless-stopped -p 6002:6002 -e "ONEC_AI_TOKEN=<your_1c_ai_token>" -e "OPENAI_COMPAT_API_KEY=<your_custom_api_key>" roctup/1c-buddyНачните общение:
Веб-интерфейс чата: http://localhost:6002/chat
Дополнительные настройки чата скрыты по умолчанию. Чтобы включить пользовательские инструкции и внешние MCP серверы, запустите контейнер с флагами:
docker run -d --name 1c-buddy --restart unless-stopped -p 6002:6002 \ -e "ONEC_AI_TOKEN=<your_1c_ai_token>" \ -e "CHAT_CUSTOM_INSTRUCTIONS_ENABLED=true" \ -e "CHAT_CUSTOM_MCP_ENABLED=true" \ roctup/1c-buddyПосле этого в чате появится кнопка настроек. В ней можно задать инструкции рабочего пространства и подключить внешние Streamable HTTP MCP серверы, например
http://192.168.0.1:6003/mcp.Запуск за корпоративным прокси. Сертификат передаётся снаружи через volume, образ не меняется:
docker run -d --name 1c-buddy --restart unless-stopped -p 6002:6002 \ -v "$PWD/certs/company-ca-bundle.pem:/certs/company-ca-bundle.pem:ro" \ -e "SSL_CERT_FILE=/certs/company-ca-bundle.pem" \ -e "HTTPS_PROXY=http://proxy.company.local:3128" \ -e "NO_PROXY=localhost,127.0.0.1" \ -e "ONEC_AI_TOKEN=<your_1c_ai_token>" \ roctup/1c-buddySSL_CERT_FILEдолжен указывать на полный PEM-бандл: если он задан, публичные корневые сертификаты берутся только из него, поэтому в файле должны быть и публичные CA, и корпоративный. Подробности и аварийный режимSSL_VERIFY=false— в README_FULL.md.Настройте MCP для IDE (HTTP-транспорт, нужен запущенный сервис):
{ "mcpServers": { "onec-buddy-mcp": { "url": "http://localhost:6002/mcp", "connection_id": "1c_buddy_service_001", "alwaysAllow": [], "type": "streamable-http", "timeout": 300, "disabled": false } } }Отправляйте запросы по OpenAI API:
Используйте любой OpenAI SDK или клиентскую библиотеку:
from openai import OpenAI client = OpenAI( base_url="http://localhost:6002/v1", api_key="your_custom_api_key" ) # Непотоковый режим response = client.chat.completions.create( model="1c-buddy", messages=[{"role": "user", "content": "Как создать HTTPСоединение в 1С?"}] ) print(response.choices[0].message.content) # Потоковый режим for chunk in client.chat.completions.stream( model="1c-buddy", messages=[{"role": "user", "content": "Объясни объект Запрос"}] ): print(chunk.choices[0].delta.content, end="")
Запуск без Docker
Проект устанавливается как обычный Python-пакет (требуется Python 3.10+). Зависимости разделены: HTTP-сервису не нужен MCP SDK, а stdio-режиму не нужен FastAPI.
Нативный HTTP-сервис (чат + HTTP MCP + опциональный OpenAI API)
Windows:
py -m venv .venv
& .\.venv\Scripts\python.exe -m pip install ".[http]"
& .\.venv\Scripts\1c-buddy.exe --env-file .env httpLinux / macOS:
python3 -m venv .venv
./.venv/bin/python -m pip install ".[http]"
./.venv/bin/1c-buddy --env-file .env httpОпции: --host (по умолчанию 0.0.0.0), --port (6002), --log-level, --reload.
⚠️ По умолчанию сервис слушает
0.0.0.0, а чат и/mcpне имеют встроенной аутентификации. Не выставляйте порт в недоверенную сеть; для локальной работы используйте--host 127.0.0.1. Маршруты/v1/*монтируются только при заданномOPENAI_COMPAT_API_KEY.
MCP через stdio для Codex / IDE
Этот режим даёт только MCP-инструменты через stdin/stdout: порт не открывается, чат и OpenAI API не поднимаются.
Windows:
py -m venv .venv
& .\.venv\Scripts\python.exe -m pip install ".[stdio]"
[Environment]::SetEnvironmentVariable("ONEC_AI_TOKEN", "<your_1c_ai_token>", "User")Linux / macOS:
python3 -m venv .venv
./.venv/bin/python -m pip install ".[stdio]"
export ONEC_AI_TOKEN=<your_1c_ai_token> # лучше прописать в ~/.profileЕсть и минимальный вариант. Отдельный дистрибутив
1c-buddy-mcpсодержит только MCP — без чата, OpenAI API, статики иtiktoken:& .\.venv\Scripts\python.exe -m pip install .\mcp-package # stdio & .\.venv\Scripts\python.exe -m pip install ".\mcp-package[http]" # + HTTP MCPОба дистрибутива ставят console script с именем
1c-buddy-mcp, поэтому конфиг Codex ниже подходит и полному пакету, и минимальному. Но ставить их рядом, в один venv, нельзя: они делят модулиapp/и саму команду. Подробности и порядок восстановления — в README_FULL.md.
Конфигурация Codex (~/.codex/config.toml) — Windows:
[mcp_servers.onec-buddy]
command = 'C:\Users\<user>\.codex\mcp\1c-buddy\.venv\Scripts\1c-buddy-mcp.exe'
startup_timeout_sec = 30
[mcp_servers.onec-buddy.env]
ONEC_AI_UI_LANGUAGE = "russian"
ONEC_AI_TIMEOUT = "30"
MCP_TOOL_CALL_MODE = "direct"Linux / macOS:
[mcp_servers.onec-buddy]
command = "/home/<user>/.codex/mcp/1c-buddy/.venv/bin/1c-buddy-mcp"
startup_timeout_sec = 30
[mcp_servers.onec-buddy.env]
ONEC_AI_UI_LANGUAGE = "russian"
ONEC_AI_TIMEOUT = "30"
MCP_TOOL_CALL_MODE = "direct"Токен лучше держать в пользовательском окружении, а не в конфиге. Явная альтернатива — передать файл: 1c-buddy-mcp --env-file C:\path\to\.env. После изменения пользовательского окружения Codex нужно перезапустить.
.env никогда не подхватывается автоматически из текущего каталога — только через --env-file. Значения уже существующего окружения имеют приоритет над значениями из файла.
Документация
Подробная документация доступна в README_FULL.md.
Благодарности
Огромное спасибо автору оригинального проекта MCP сервера для 1С:Напарник: artesk/1copilot_MCP
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Shared memory MCP server for Claude Code, Codex, Gemini CLI and Cursor. Cited, editable.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
A Model Context Protocol server for Wix AI tools
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides a RAG-based search system for 1C:Enterprise platform documentation using hybrid BM25 and semantic search across multiple versions. It enables developers to retrieve API signatures, methods, and usage examples directly within IDEs or through a REST API.22MIT
- AlicenseNot gradedqualityCmaintenanceMCP server providing tools for interacting with 1С:Напарник AI, including asking questions, syntax explanation, code review, and documentation search. Also serves as a web chat interface and OpenAI-compatible API gateway.109AGPL 3.0
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with 1C:Enterprise databases through natural language, providing metadata retrieval, configuration analysis, and code generation.9-
- FlicenseNot gradedqualityDmaintenanceActs as a bridge between AI agents (Claude, Cursor) and 1C:Enterprise databases, enabling metadata retrieval, configuration analysis, and code generation through natural language using the MCP protocol.-