1С:Напарник - MCP Tools Reference
MCP-сервер 1c-naparnik - интеграция с API 1С:Напарник (code.1c.ai). 12 инструментов: 6 для анализа/модификации BSL-кода, 6 для поиска по документации и базе знаний ИТС.
When to Use
Используй инструменты 1c-naparnik когда:
- Нужно проверить качество BSL-кода (стиль, архитектура, стандарты)
- Нужно проверить код на синтаксические ошибки, логические проблемы, антипаттерны производительности
- Нужно получить code review по стандартам ИТС
- Нужно переписать или модифицировать BSL-код с улучшениями
- Нужно объяснение конкретной конструкции языка BSL
- Нужно найти методологическую статью или стандарт на ИТС
- Нужно прочитать конкретный документ ИТС по ID
- Нужно найти информацию в документации платформы (встроенные функции, типы, события)
- Нужно сравнить изменения между версиями платформы
- Нужно найти информацию по конкретной конфигурации (ERP, ЗУП, Бухгалтерия)
Prerequisites Check
Сервер работает через Docker-контейнер на порту 8007. Если инструменты не отвечают - сообщи пользователю:
MCP-сервер 1c-naparnik недоступен. Запустите Docker-контейнер:
cd <путь к 1c-code-checker> && docker compose up -d
Tools by Category
Анализ и модификация кода (6 инструментов)
ask_1c_ai - Свободный вопрос к ИИ
Основной инструмент для любых вопросов по 1С. Поддерживает контекст диалога (сессии).
| Параметр | Обязательный | Описание |
|---|---|---|
question |
да | Вопрос (код, задача, архитектурный вопрос) |
create_new_session |
нет | true - новая сессия (сброс контекста), false - продолжение (default) |
Когда использовать:
- ОБЯЗАТЕЛЬНО после каждого написания/изменения BSL-кода - быстрая проверка качества
- Общие вопросы по архитектуре, паттернам, подходам 1С
- Вопросы, не подходящие под специализированные инструменты
- Когда нужен контекст предыдущего диалога (серия связанных вопросов)
check_1c_code - Техническая проверка кода
Проверка синтаксиса, логических ошибок, антипаттернов производительности (запросы в цикле, N+1, обращение через точку).
| Параметр | Обязательный | Описание |
|---|---|---|
code |
да | BSL-код для проверки |
check_type |
нет | Тип проверки (по умолчанию - полная) |
Когда использовать:
- Проверка: скомпилируется ли код, есть ли баги
- Поиск антипаттернов производительности
- Альтернатива
syntaxcheck(1c-syntax-checker-mcp) с расширенным анализом логики
review_1c_code - Code review стиля и стандартов
Ревью по стандартам ИТС: именование, структура, читаемость, соответствие стандартам. НЕ проверяет синтаксис.
| Параметр | Обязательный | Описание |
|---|---|---|
code |
да | BSL-код для ревью |
Когда использовать:
- Проверка соответствия стандартам ИТС (именование переменных, структура модуля)
- Оценка читаемости и поддерживаемости кода
- Перед коммитом - финальное ревью стиля
rewrite_1c_code - Улучшение кода (ИИ решает что улучшить)
ИИ анализирует код и предлагает свою улучшенную версию. В отличие от modify_1c_code, здесь ИИ сам решает, что и как улучшить.
| Параметр | Обязательный | Описание |
|---|---|---|
code |
да | BSL-код для улучшения |
goal |
нет | Направление улучшения (например: "производительность", "читаемость") |
Когда использовать:
- Рефакторинг: хочешь увидеть, как ИИ переписал бы код
- Нужна альтернативная реализация для сравнения
- Оптимизация кода без конкретной инструкции
modify_1c_code - Модификация по инструкции
Изменение кода по точной инструкции пользователя. В отличие от rewrite_1c_code, здесь ИИ следует конкретному указанию.
| Параметр | Обязательный | Описание |
|---|---|---|
instruction |
да | Что именно изменить (например: "добавить обработку пустого результата запроса") |
code |
нет | BSL-код для модификации (если не указан - генерирует с нуля) |
Когда использовать:
- Точечное исправление бага ("исправить обработку NULL")
- Добавление конкретной функциональности
- Рефакторинг с конкретным направлением ("вынести в отдельную функцию")
explain_1c_syntax - Объяснение синтаксиса
Объяснение конкретного ключевого слова, оператора, конструкции или встроенной функции BSL.
| Параметр | Обязательный | Описание |
|---|---|---|
syntax_element |
да | Элемент синтаксиса (например: ДобавитьОбработчикОповещения, Запрос.УстановитьПараметр) |
context |
нет | Контекст для более точного объяснения |
Когда использовать:
- Незнакомая конструкция BSL
- Нужно точное объяснение конкретного ключевого слова/оператора
- Для широких вопросов лучше
ask_1c_ai
Документация и база знаний (6 инструментов)
its_help - Поиск по ИТС
Поиск методологических рекомендаций, стандартов разработки, статей на ИТС (its.1c.ru). Возвращает список документов с ID.
| Параметр | Обязательный | Описание |
|---|---|---|
query |
да | Поисковый запрос (например: "стандарт именования переменных", "обработка ошибок") |
Когда использовать:
- Поиск стандартов разработки ИТС
- Методологические рекомендации (как правильно реализовать обмен, печатные формы, отчеты)
- Статьи по конфигурированию и администрированию
- Результат - список документов с ID. Для чтения используй
fetch_its
fetch_its - Чтение документа ИТС
Получение содержимого документа ИТС по ID. Используется после its_help.
| Параметр | Обязательный | Описание |
|---|---|---|
id |
нет | ID документа (its-...-hdoc, its-...-hdir) или root для оглавления |
Когда использовать:
- Чтение конкретного документа ИТС после поиска через
its_help - Навигация по структуре ИТС (
id="root"- корень) - Поддерживает:
root,superior,v8std, документы и каталоги
Типичный workflow: its_help("стандарты именования") -> получить ID -> fetch_its(id="its-...-hdoc")
search_1c_documentation - Документация платформы (по версии)
Поиск в документации платформы 1С:Предприятие конкретной версии. Встроенные функции, типы, события, свойства, объекты платформы.
| Параметр | Обязательный | Описание |
|---|---|---|
query |
да | Поисковый запрос (например: "HTTPСоединение", "ЗаписьJSON") |
version |
нет | Версия платформы (например: "8.3.25", "8.5.1") |
Когда использовать:
- Нужна документация для конкретной версии платформы
- Проверка: есть ли метод/тип в определенной версии
- Если версия не важна - используй
onec_help
onec_help - Документация платформы (последняя версия)
Поиск в документации платформы последней версии. Упрощенный вариант search_1c_documentation без указания версии.
| Параметр | Обязательный | Описание |
|---|---|---|
query |
да | Поисковый запрос |
Когда использовать:
- Быстрый поиск по документации платформы без привязки к версии
- Проверка существования метода/типа/свойства
- Если нужна конкретная версия - используй
search_1c_documentation
diff_1c_documentation_versions - Сравнение версий
Сравнение документации платформы между двумя версиями. Что изменилось, добавлено, удалено.
| Параметр | Обязательный | Описание |
|---|---|---|
version_a |
да | Ранняя версия (например: "8.3.24") |
version_b |
да | Поздняя версия (например: "8.3.25") |
query |
нет | Фильтр по теме (например: "HTTP", "JSON") |
Когда использовать:
- Миграция между версиями платформы - что изменилось
- Проверка: когда появился конкретный метод/тип
- Оценка breaking changes между версиями
config_help - Документация конфигураций
Поиск по документации прикладных конфигураций: ERP, ЗУП, Бухгалтерия, УТ и др. Объекты, модули, регистры, документы, бизнес-логика конфигурации.
| Параметр | Обязательный | Описание |
|---|---|---|
query |
да | Поисковый запрос (например: "расчет себестоимости", "регистр взаиморасчетов") |
config_name |
нет | Имя конфигурации: ERP, ЗУП, Бухгалтерия, УТ и др. |
Когда использовать:
- Как работает конкретный механизм в ERP/ЗУП/Бухгалтерии
- Назначение объекта, регистра, документа конфигурации
- Бизнес-логика конкретной конфигурации
- НЕ для API платформы (используй
onec_help/search_1c_documentation)
Typical Workflows
Проверка качества BSL-кода (после написания/изменения)
1. ask_1c_ai(question="<код>") - быстрая проверка качества (ОБЯЗАТЕЛЬНО)
2. check_1c_code(code="<код>") - синтаксис + логика + производительность (при необходимости)
3. review_1c_code(code="<код>") - стиль и стандарты ИТС (перед коммитом)
Рефакторинг кода
1. review_1c_code(code="<код>") - получить замечания
2. ПРОВЕРИТЬ каждое замечание по факту: существование метода и сигнатуру - через bsl-platform-help или
исходники БСП, поведение - через код проекта. Неподтвержденное замечание НЕ исправлять
3. rewrite_1c_code(code="<код>", goal="производительность") - вариант ИИ
ИЛИ
modify_1c_code(instruction="вынести запрос в отдельную функцию", code="<код>") - точечное изменение
4. Результат генерации ИИ тоже проверить: вызванные методы должны существовать
5. ask_1c_ai(question="<новый код>") - проверка результата
Напарник дает false positives и ссылается на несуществующие API. Правка кода по непроверенному замечанию или прием сгенерированного варианта без сверки методов - источник багов. Обязательный порядок -
rules/mcp-tool-priority.md, раздел "Обязательные проверки".
Поиск стандарта ИТС
1. its_help(query="обработка исключений") - найти документы
2. fetch_its(id="its-...-hdoc") - прочитать нужный документ
Проверка API платформы
Вариант A (с версией):
search_1c_documentation(query="HTTPСоединение", version="8.3.25")
Вариант B (последняя версия):
onec_help(query="HTTPСоединение")
Миграция между версиями
1. diff_1c_documentation_versions(version_a="8.3.24", version_b="8.3.25")
2. diff_1c_documentation_versions(version_a="8.3.24", version_b="8.3.25", query="HTTP")
Поиск по документации конфигурации
config_help(query="расчет себестоимости", config_name="ERP")
Разграничение с другими MCP-серверами
| Задача | 1c-naparnik | Альтернатива | Когда что |
|---|---|---|---|
| Синтаксис BSL (изолированный код) | check_1c_code |
syntaxcheck (1c-syntax-checker-mcp) |
Напарник дополнительно проверяет логику и производительность |
| Синтаксис BSL (в контексте проекта EDT) | check_1c_code |
get_project_errors (ai-edt) |
EDT проверяет в контексте проекта (типы, ссылки), Напарник - изолированный код |
| Валидация запросов | - | validate_query (ai-edt) |
EDT для запросов (семантика + контекст метаданных), Напарник не валидирует запросы отдельно |
| API платформы | onec_help, search_1c_documentation |
search (bsl-platform-help) |
bsl-platform-help - локальный, быстрый, офлайн. Напарник - через API, полнее, поддерживает версии |
| Стандарты ИТС | its_help + fetch_its |
- | Только в Напарнике. Уникальная возможность |
| Документация конфигураций | config_help |
- | Только в Напарнике. Уникальная возможность |
| Сравнение версий | diff_1c_documentation_versions |
- | Только в Напарнике. Уникальная возможность |
| Code review стиля | review_1c_code |
- | Только в Напарнике. По стандартам ИТС |
| Рефакторинг BSL | rewrite_1c_code, modify_1c_code |
- | Только в Напарнике |
| Функции БСП | - | ssl_search (1c-mcp_ssl_server) |
Только в БСП-сервере |
Когда что искать
| Что ищешь | Инструмент | Сервер |
|---|---|---|
| Стандарт разработки ИТС, методологическая статья | its_help + fetch_its |
1c-naparnik |
| Встроенная функция/тип платформы (быстро, офлайн) | search |
bsl-platform-help |
| Встроенная функция/тип для конкретной версии | search_1c_documentation |
1c-naparnik |
| Механизм конфигурации (ERP, ЗУП, Бухгалтерия) | config_help |
1c-naparnik |
| Функция/модуль БСП | ssl_search |
1c-mcp_ssl_server |
| Код в проекте (полнотекстовый/regex) | search_in_code |
ai-edt |
| Структура объекта метаданных | get_metadata_details |
ai-edt |
| Что изменилось между версиями платформы | diff_1c_documentation_versions |
1c-naparnik |