# 1CCodeChecker

Проверка, анализ и работа с кодом и документацией 1С через сервис 1С:Напарник.

## Назначение

1CCodeChecker — MCP-сервер, построенный на базе [FastMCP](https://github.com/jlowin/fastmcp), который интегрируется с сервисом **1С:Напарник** (code.1c.ai). Предоставляет ИИ-ассистенту набор из **11 инструментов** для полноценной работы с экосистемой 1С:Предприятие:

* Проверка и анализ кода (синтаксис, логика, производительность, стиль)
* Переписывание и модификация кода с автоматической валидацией
* Поиск по документации платформы с поддержкой версий
* Работа с базой знаний ИТС (поиск, чтение документов, стандарты)
* Сравнение документации между версиями платформы
* Поиск по документации прикладных конфигураций (ERP, БП, УТ и др.)
* Свободные вопросы к ИИ-ассистенту 1С:Напарник

## Возможности

ИИ получает инструменты для:

* **Проверки кода** — синтаксические ошибки, логические проблемы, производительность
* **Ревью кода** — стиль, стандарты ИТС, именование, структура, комментирование
* **Переписывания кода** — ИИ предлагает улучшенную версию с объяснениями
* **Модификации кода** — точное выполнение инструкций пользователя
* **Поиска по документации платформы** — с указанием версии (v8.3.x, v8.5.x)
* **Поиска по базе знаний ИТС** — стандарты, методики, статьи
* **Чтения документов ИТС** — получение полного содержимого по ID
* **Сравнения версий документации** — что изменилось между версиями платформы
* **Поиска по конфигурациям** — документация прикладных решений
* **Свободных вопросов** — любые вопросы по разработке на 1С

## Примеры использования

* "Проверь этот код на ошибки" → `check_1c_code`
* "Проведи code review этого модуля" → `review_1c_code`
* "Перепиши этот код, улучши производительность" → `rewrite_1c_code`
* "Добавь обработку ошибок в эту процедуру" → `modify_1c_code`
* "Что такое РегистрНакопления в 1С?" → `onec_help`
* "Найди в документации v8.3.25 описание HTTP-соединений" → `search_1c_documentation`
* "Какие стандарты именования переменных в ИТС?" → `its_help`
* "Что изменилось между v8.3.25 и v8.5.1?" → `diff_1c_documentation_versions`
* "Как работает проведение документов в ERP?" → `config_help`
* "Объясни разницу между ОбщийМодуль и МодульОбъекта" → `ask_1c_ai`

## Требования

* Docker Desktop с WSL2
* Лицензионный ключ MCP (`LICENSE_KEY`)
* **Токен 1С:Напарник** (`ONEC_AI_TOKEN`, только для подписчиков ИТС)
* Доступ в интернет к code.1c.ai

{% hint style="info" %}
Токен 1С:Напарник доступен **подписчикам ИТС**. Оформить подписку можно на [developer.1c.ru](https://developer.1c.ru/). Если у вас нет подписки, используйте [SyntaxCheckServer](/mcp-servery-1c/servery/syntax-check-server.md) как альтернативу для проверки синтаксиса.
{% endhint %}

## Доступные инструменты MCP

ИИ получает **11 инструментов**:

### Анализ и работа с кодом

| Инструмент        | Описание                                                           |
| ----------------- | ------------------------------------------------------------------ |
| `ask_1c_ai`       | Свободный вопрос к ИИ 1С:Напарник (с поддержкой контекста диалога) |
| `check_1c_code`   | Проверка кода: синтаксис, логика, производительность               |
| `review_1c_code`  | Code review: стиль, стандарты ИТС, именование, структура           |
| `rewrite_1c_code` | Переписывание кода ИИ с улучшениями и объяснениями                 |
| `modify_1c_code`  | Модификация кода по явной инструкции пользователя                  |

### Документация и база знаний

| Инструмент                       | Описание                                                            |
| -------------------------------- | ------------------------------------------------------------------- |
| `search_1c_documentation`        | Поиск в документации платформы (с указанием версии)                 |
| `onec_help`                      | Поиск в документации платформы (последняя версия)                   |
| `its_help`                       | Поиск по базе знаний ИТС (стандарты, методики, статьи)              |
| `fetch_its`                      | Чтение содержимого документа ИТС по ID                              |
| `diff_1c_documentation_versions` | Сравнение документации между версиями платформы                     |
| `config_help`                    | Поиск документации по прикладным конфигурациям (ERP, БП, ЗУП и др.) |

Подробное описание каждого инструмента — в разделе [Инструменты](/mcp-servery-1c/servery/code-checker/instrumenty.md).

## Порт

**8007**

## Образ Docker

```
comol/1c-code-checker:latest
```

## Быстрый старт

```powershell
docker run -d -p 8007:8007 `
  --name 1c_code_checker `
  -e LICENSE_KEY=YOUR_LICENSE_KEY `
  -e ONEC_AI_TOKEN=YOUR_NAPARNIR_TOKEN `
  comol/1c-code-checker:latest
```

## Конфигурация Cursor

```json
{
  "mcpServers": {
    "1c-code-checker-mcp": {
      "url": "http://localhost:8007/mcp",
      "connection_id": "1c_code_checker_001"
    }
  }
}
```

## Режимы вызова инструментов

Сервер поддерживает два режима работы (переменная `MCP_TOOL_CALL_MODE`):

* **`direct`** (по умолчанию) — инструменты вызывают upstream-инструменты 1С.ai напрямую для более точных результатов
* **`standard`** — все инструменты работают через промпты (текстовые запросы)

Подробнее — в разделе [Конфигурация](/mcp-servery-1c/servery/code-checker/konfiguraciya.md).

## Оригинальная идея

[github.com/artesk/1copilot\_MCP](https://github.com/artesk/1copilot_MCP)

## Структура раздела

* [Установка](/mcp-servery-1c/servery/code-checker/ustanovka.md) — команды запуска и проверка работы
* [Получение токена](/mcp-servery-1c/servery/code-checker/poluchenie-tokena.md) — как получить токен 1С:Напарник
* [Инструменты](/mcp-servery-1c/servery/code-checker/instrumenty.md) — подробное описание всех 11 инструментов
* [Конфигурация](/mcp-servery-1c/servery/code-checker/konfiguraciya.md) — переменные окружения и режимы работы


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.onerpa.ru/mcp-servery-1c/servery/code-checker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
