1C AI MCP
1C AI MCP - MCP-Server für 1C:Assistent
MCP-Server (Model Context Protocol) zur Integration von IDEs mit der API 1C:Assistent. Basierend auf FastMCP (Python), verpackt in Docker. Funktioniert mit Cursor, Claude Code und beliebigen MCP-kompatiblen Clients.
12 Tools: Code-Analyse (Prüfung, Review, Refactoring) und Dokumentationssuche (ITS, Plattform, Konfigurationen).
Basiert auf der Idee von comol/1c-code-checker mit Korrekturen des API-Formats (Fehler 422), übernommen aus SteelMorgan/spring-mcp-1c-copilot.
Voraussetzungen
Docker (oder Docker Desktop)
1C:Assistent-Token - erhalten Sie auf code.1c.ai (ITS-Abonnement erforderlich)
Related MCP server: 1C_MCP_SERVER_OWN
Schnellstart
Variante A: Fertiges Image von Docker Hub (empfohlen)
docker run -d --name 1c-ai-mcp -p 8007:8007 \
-e ONEC_AI_TOKEN="ваш-токен" \
desko77/1c-ai-mcp:latestOder über Docker Compose - erstellen Sie die Datei docker-compose.yml:
services:
1c-ai-mcp:
image: desko77/1c-ai-mcp:latest
container_name: 1c-ai-mcp
ports:
- "8007:8007"
environment:
ONEC_AI_TOKEN: "${ONEC_AI_TOKEN}"
restart: always# Создать .env с токеном (не попадает в git)
echo 'ONEC_AI_TOKEN=ваш-токен' > .env
# Запустить
docker compose up -dVariante B: Build aus dem Quellcode
git clone https://github.com/Desko77/1c-ai-mcp.git
cd 1c-ai-mcp
# Создать .env с токеном
echo 'ONEC_AI_TOKEN=ваш-токен' > .env
# Собрать и запустить
docker compose up -d --buildFunktionsprüfung
# Должен вернуть HTTP 200
curl http://localhost:8007/mcpVerbindung zur IDE
Cursor
Fügen Sie in ~/.cursor/mcp.json hinzu:
{
"mcpServers": {
"1c-naparnik": {
"url": "http://localhost:8007/mcp"
}
}
}Claude Code
Fügen Sie in ~/.claude/settings.json hinzu:
{
"mcpServers": {
"1c-naparnik": {
"url": "http://localhost:8007/mcp"
}
}
}Andere MCP-Clients
Endpoint: http://localhost:8007/mcp
Transport: Streamable HTTP (Standard) oder SSE (USESSE=true).
Tools
Code-Analyse
check_1c_code
Prüfung von 1C-Code: Syntax, Logik, Performance. Im Direct-Mode wird die Syntax über den Upstream-Syntax-Checker geprüft.
Parameter | Typ | Beschreibung |
| string | Zu prüfender 1C-Code |
| string |
|
ask_1c_ai
Beliebige Frage an 1C:Assistent. Speichert den Dialogkontext zwischen Aufrufen.
Parameter | Typ | Beschreibung |
| string | Frage |
| bool | Neue Sitzung (Standard |
review_1c_code
Code-Review: Stil, ITS-Standards, Benennung, Struktur, Lesbarkeit. Prüft keine Syntax.
Parameter | Typ | Beschreibung |
| string | Zu prüfender 1C-Code |
rewrite_1c_code
Die KI schlägt eine eigene verbesserte Version des Codes mit Erklärung der Änderungen vor.
Parameter | Typ | Beschreibung |
| string | Zu überschreibender 1C-Code |
| string | Richtung: |
modify_1c_code
Modifikation des Codes gemäß expliziter Anweisung. Wenn kein Code angegeben ist - wird neuer generiert.
Parameter | Typ | Beschreibung |
| string | Beschreibung der gewünschten Änderungen |
| string | Quellcode (optional) |
explain_1c_syntax
Erklärung eines konkreten Syntaxelements von 1C.
Parameter | Typ | Beschreibung |
| string | Syntaxelement |
| string | Verwendungskontext (optional) |
Dokumentation und Hilfe
its_help
Suche in der ITS-Wissensdatenbank (Standards, Methodiken, Artikel). Gibt Dokument-IDs für fetch_its zurück.
Parameter | Typ | Beschreibung |
| string | Suchanfrage |
fetch_its
Lesen eines ITS-Dokuments anhand der ID. Wird nach its_help verwendet.
Parameter | Typ | Beschreibung |
| string | Dokument-ID ( |
search_1c_documentation
Suche in der Dokumentation der Plattform 1C:Enterprise für eine bestimmte Version.
Parameter | Typ | Beschreibung |
| string | Suchanfrage |
| string | Version (Standard |
onec_help
Suche in der Plattformdokumentation (neueste Version). Wie search_1c_documentation, aber ohne Versionsangabe.
Parameter | Typ | Beschreibung |
| string | Suchanfrage |
diff_1c_documentation_versions
Vergleich der Plattformdokumentation zwischen zwei Versionen.
Parameter | Typ | Beschreibung |
| string | Frühere Version (z. B. |
| string | Spätere Version (z. B. |
| string | Fachbereich (optional) |
config_help
Suche in der Dokumentation zu angewandten Konfigurationen (ERP, Buchhaltung, ZUP, UT u. a.).
Parameter | Typ | Beschreibung |
| string | Suchanfrage |
| string | Name der Konfiguration (optional, wird aus |
Konfiguration
Alle Parameter werden über Umgebungsvariablen übergeben.
Variable | Erforderlich | Standard | Beschreibung |
| Ja* | - | API-Token von 1C:Assistent |
| Nein | - | Pfad zur Datei mit dem Token (Docker Secrets) |
| Nein |
| Basis-URL der API |
| Nein |
| Skill für Diskussionen ( |
| Nein |
| Authorization-Format: |
| Nein |
| HTTP-Request-Timeout (Sek.) |
| Nein | - | Konfiguration für config_help (z. B. |
| Nein |
| Modus: |
| Nein |
| Max. Länge der Eingabedaten (Zeichen) |
| Nein |
| Port des MCP-Servers |
| Nein |
| Transport: |
| Nein |
| Limit gleichzeitiger Sitzungen |
| Nein |
| Sitzungs-TTL (Sek.) |
| Nein |
| Logging-Level ( |
* Erforderlich ist ONEC_AI_TOKEN oder ONEC_AI_TOKEN_FILE.
Docker Secrets
Für Produktionsumgebungen kann das Token über eine Datei übergeben werden:
services:
1c-ai-mcp:
image: desko77/1c-ai-mcp:latest
environment:
ONEC_AI_TOKEN_FILE: /run/secrets/onec_token
secrets:
- onec_token
secrets:
onec_token:
file: ./onec_token.txtDirect Mode
Bei MCP_TOOL_CALL_MODE=direct rufen die Dokumentationstools und check_1c_code (syntax) die Upstream-Tools von 1C:Assistent direkt beim Namen auf, statt Text-Prompts zu verwenden. Dies liefert genauere Ergebnisse.
Upstream-Tools:
mcp__knowledge-hub__Search_ITS- fürits_helpmcp__knowledge-hub__Fetch_ITS- fürfetch_itsmcp__knowledge-hub__Search_Documentation- fürsearch_1c_documentation,onec_helpmcp__knowledge-hub__Diff_Documentation_Versions- fürdiff_1c_documentation_versionsmcp__syntax-checker__validate- fürcheck_1c_code(syntax)
Bei einem Fehler des Direct-Aufrufs erfolgt automatisch ein Fallback auf den Prompt-Modus. Standardmäßig standard für Abwärtskompatibilität.
Architektur
MCP-клиент (Cursor / Claude Code)
-> FastMCP HTTP endpoint (:8007/mcp)
-> mcp_server.py (обработчики инструментов)
-> OneCApiClient (HTTP-клиент)
-> code.1c.ai API (SSE-стриминг)
-> парсинг ответа -> возврат клиентуZwei Betriebsmodi
Standard-Modus (Standard): Die Tools erstellen Text-Prompts und senden sie an die API. Die Dokumentationstools verwenden eine Tool-Chain - das Modell entscheidet selbst, welches Server-Tool aufgerufen wird.
Direct-Modus (
MCP_TOOL_CALL_MODE=direct): Die Tools fordern explizit ein bestimmtes Upstream-Tool beim Namen an, matchen die Antwort und bestätigen den Aufruf. Bei einem Fehler - automatischer Fallback auf den Standard-Modus.
SSE-Parser
Unterstützt drei Antwortformate der API:
Format | Struktur | Typ |
Legacy |
| Inkrementell |
OpenAI-like |
| Inkrementell |
Completed |
| Final |
Zusätzlich:
Automatisches Entfernen von
<thinking>/thinking-Blöcken aus AntwortenUnicode-Normalisierung und Bereinigung von Steuerzeichen
Fallback bei Erhalt von
tool_calls- erneute Anfrage mitskill_name="raw"Kürzung der Eingabedaten gemäß
ONEC_AI_INPUT_MAX_LENGTH
Entwicklung
Lokaler Start ohne Docker
pip install -r requirements.txt
export ONEC_AI_TOKEN="ваш-токен"
python main.pyProjektstruktur
main.py # Точка входа
src/
mcp_server.py # MCP-инструменты (@mcp.tool)
onec_api_client.py # HTTP-клиент к API 1С:Напарник
Dockerfile # Dockerfile
docker-compose.yml # Compose для сборки из исходников
tests/ # Тестовые скрипты
.github/workflows/
docker-publish.yml # CI: сборка и публикация в Docker HubDanksagungen
comol/1c-code-checker - ursprüngliche Idee (Repository geschlossen)
SteelMorgan/spring-mcp-1c-copilot - korrekte API-Algorithmen
FastMCP - Framework für MCP-Server
Lizenz
MIT - siehe LICENSE
This server cannot be deployed
Maintenance
Related MCP Connectors
Get up-to-date, version-specific documentation and code examples from official sources directly in…
Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.
Run App Store Connect from your IDE: pricing, listings, screenshots, releases, AI visibility.
Provides Vaadin Documentation and help with development tasks
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
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with 1C:Enterprise databases through natural language, providing metadata retrieval, configuration analysis, and code generation.9-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to lint, search documentation, and perform metadata scaffolding for 1C:Element projects.402 PyPI3MIT
- AlicenseNot gradedqualityCmaintenanceProvides AI assistants in Cursor with local access to 1C platform documentation and XML configuration exports, enabling metadata lookup, BSL code search, and platform help queries without manual file copying.MIT