1C AI MCP
1C AI MCP - Servidor MCP para 1С:Напарник
Servidor MCP (Model Context Protocol) para integrar IDE con la API de 1С:Напарник. Construido sobre FastMCP (Python), empaquetado en Docker. Funciona con Cursor, Claude Code y cualquier cliente compatible con MCP.
12 herramientas: análisis de código (verificación, revisión, refactorización) y búsqueda en documentación (ITS, plataforma, configuraciones).
Basado en la idea de comol/1c-code-checker con correcciones del formato de API (errores 422), tomadas de SteelMorgan/spring-mcp-1c-copilot.
Requisitos previos
Docker (o Docker Desktop)
Token de 1С:Напарник - obtener en code.1c.ai (se requiere suscripción a ITS)
Related MCP server: 1C_MCP_SERVER_OWN
Inicio rápido
Opción A: Imagen lista de Docker Hub (recomendada)
docker run -d --name 1c-ai-mcp -p 8007:8007 \
-e ONEC_AI_TOKEN="ваш-токен" \
desko77/1c-ai-mcp:latestO mediante Docker Compose - cree el archivo 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 -dOpción B: Compilación desde el código fuente
git clone https://github.com/Desko77/1c-ai-mcp.git
cd 1c-ai-mcp
# Создать .env с токеном
echo 'ONEC_AI_TOKEN=ваш-токен' > .env
# Собрать и запустить
docker compose up -d --buildVerificación de funcionamiento
# Должен вернуть HTTP 200
curl http://localhost:8007/mcpConexión a IDE
Cursor
Agregue en ~/.cursor/mcp.json:
{
"mcpServers": {
"1c-naparnik": {
"url": "http://localhost:8007/mcp"
}
}
}Claude Code
Agregue en ~/.claude/settings.json:
{
"mcpServers": {
"1c-naparnik": {
"url": "http://localhost:8007/mcp"
}
}
}Otros clientes MCP
Endpoint: http://localhost:8007/mcp
Transporte: Streamable HTTP (por defecto) o SSE (USESSE=true).
Herramientas
Análisis de código
check_1c_code
Verificación de código 1С: sintaxis, lógica, rendimiento. En modo directo, la sintaxis se verifica mediante el verificador de sintaxis upstream.
Parámetro | Tipo | Descripción |
| string | Código 1С para verificar |
| string |
|
ask_1c_ai
Pregunta arbitraria a 1С:Напарник. Guarda el contexto del diálogo entre llamadas.
Parámetro | Tipo | Descripción |
| string | Pregunta |
| bool | Nueva sesión (por defecto |
review_1c_code
Revisión de código: estilo, estándares ITS, nomenclatura, estructura, legibilidad. No verifica sintaxis.
Parámetro | Tipo | Descripción |
| string | Código 1С para revisión |
rewrite_1c_code
La IA propone su versión mejorada del código con explicación de los cambios.
Parámetro | Tipo | Descripción |
| string | Código 1С para reescribir |
| string | Dirección: |
modify_1c_code
Modificación del código según instrucción explícita. Si no se especifica código, genera uno nuevo.
Parámetro | Tipo | Descripción |
| string | Descripción de los cambios requeridos |
| string | Código fuente (opcional) |
explain_1c_syntax
Explicación de un elemento específico de la sintaxis de 1С.
Parámetro | Tipo | Descripción |
| string | Elemento de sintaxis |
| string | Contexto de uso (opcional) |
Documentación y ayuda
its_help
Búsqueda en la base de conocimientos ITS (estándares, metodologías, artículos). Devuelve IDs de documentos para fetch_its.
Parámetro | Tipo | Descripción |
| string | Consulta de búsqueda |
fetch_its
Lectura de un documento ITS por identificador. Se usa después de its_help.
Parámetro | Tipo | Descripción |
| string | ID del documento ( |
search_1c_documentation
Búsqueda en la documentación de la plataforma 1С:Предприятие para una versión específica.
Parámetro | Tipo | Descripción |
| string | Consulta de búsqueda |
| string | Versión (por defecto |
onec_help
Búsqueda en la documentación de la plataforma (última versión). Como search_1c_documentation, pero sin especificar versión.
Parámetro | Tipo | Descripción |
| string | Consulta de búsqueda |
diff_1c_documentation_versions
Comparación de la documentación de la plataforma entre dos versiones.
Parámetro | Tipo | Descripción |
| string | Versión anterior (por ejemplo, |
| string | Versión posterior (por ejemplo, |
| string | Área temática (opcional) |
config_help
Búsqueda de documentación sobre configuraciones aplicadas (ERP, Бухгалтерия, ЗУП, УТ, etc.).
Parámetro | Tipo | Descripción |
| string | Consulta de búsqueda |
| string | Nombre de la configuración (opcional, se toma de |
Configuración
Todos los parámetros se pasan mediante variables de entorno.
Variable | Obligatoria | Por defecto | Descripción |
| Sí* | - | Token de API de 1С:Напарник |
| No | - | Ruta al archivo con el token (Docker Secrets) |
| No |
| URL base de la API |
| No |
| Skill para discusiones ( |
| No |
| Formato de Authorization: |
| No |
| Tiempo de espera de solicitudes HTTP (seg) |
| No | - | Configuración para config_help (por ejemplo, |
| No |
| Modo: |
| No |
| Longitud máxima de datos de entrada (caracteres) |
| No |
| Puerto del servidor MCP |
| No |
| Transporte: |
| No |
| Límite de sesiones simultáneas |
| No |
| TTL de sesión (seg) |
| No |
| Nivel de registro ( |
* Es obligatorio ONEC_AI_TOKEN o ONEC_AI_TOKEN_FILE.
Docker Secrets
Para entornos de producción, el token se puede pasar mediante un archivo:
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.txtModo Directo
Con MCP_TOOL_CALL_MODE=direct, las herramientas de documentación y check_1c_code (syntax) llaman directamente a las herramientas upstream de 1С:Напарник por nombre, en lugar de prompts de texto. Esto da resultados más precisos.
Herramientas upstream:
mcp__knowledge-hub__Search_ITS- paraits_helpmcp__knowledge-hub__Fetch_ITS- parafetch_itsmcp__knowledge-hub__Search_Documentation- parasearch_1c_documentation,onec_helpmcp__knowledge-hub__Diff_Documentation_Versions- paradiff_1c_documentation_versionsmcp__syntax-checker__validate- paracheck_1c_code(syntax)
Ante un fallo de la llamada directa, se produce un fallback automático al modo prompt. Por defecto es standard para compatibilidad inversa.
Arquitectura
MCP-клиент (Cursor / Claude Code)
-> FastMCP HTTP endpoint (:8007/mcp)
-> mcp_server.py (обработчики инструментов)
-> OneCApiClient (HTTP-клиент)
-> code.1c.ai API (SSE-стриминг)
-> парсинг ответа -> возврат клиентуDos modos de funcionamiento
Modo estándar (por defecto): las herramientas forman prompts de texto y los envían a la API. Las herramientas de documentación usan la cadena de herramientas: el modelo decide qué herramienta del servidor llamar.
Modo directo (
MCP_TOOL_CALL_MODE=direct): las herramientas solicitan explícitamente una herramienta upstream específica por nombre, comparan la respuesta y confirman la llamada. Ante un fallo, se produce un fallback automático al modo estándar.
Analizador SSE
Soporta tres formatos de respuesta de la API:
Formato | Estructura | Tipo |
Legacy |
| Incremental |
OpenAI-like |
| Incremental |
Completed |
| Final |
Además:
Eliminación automática de bloques
<thinking>/thinkingde las respuestasNormalización Unicode y limpieza de caracteres de control
Fallback al recibir
tool_calls- repetición de la solicitud conskill_name="raw"Recorte de datos de entrada según
ONEC_AI_INPUT_MAX_LENGTH
Desarrollo
Ejecución local sin Docker
pip install -r requirements.txt
export ONEC_AI_TOKEN="ваш-токен"
python main.pyEstructura del proyecto
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 HubAgradecimientos
comol/1c-code-checker - idea original (repositorio cerrado)
SteelMorgan/spring-mcp-1c-copilot - algoritmos correctos de la API
FastMCP - framework de servidores MCP
Licencia
MIT - ver LICENSE
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceProvides 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 gradedqualityAmaintenanceEnables searching through 1C:Enterprise configuration source code (XML+BSL) with full-text indexing, providing tools to find code, metadata objects, procedures, and modules.MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to lint, search documentation, and perform metadata scaffolding for 1C:Element projects.1MIT
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.
Provide AI-powered real-time analysis and intelligence on NPM packages, including security, depend…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/serezhenkov-lab/1c-ai-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server