mcp-1c

Integración con 1C:Enterprise — metadatos, búsqueda de código BSL, consultas, registro de eventos, referencia de sintaxis. Un binario Go, cero dependencias.

Documentación

mcp-1c

mcp-1c

Servidor MCP para la integración de asistentes de IA con 1C:Enterprise

SafeSkill 92/100 Telegram

La IA ve los metadatos de su configuración de 1C y genera código BSL preciso. Funciona con cualquier cliente compatible con MCP.

Funciona con modelos locales

MCP-1C no está vinculado a una red neuronal específica. Funciona con cualquier cliente compatible con MCP:

  • Modelos locales (Ollama, LM Studio, llama.cpp): los datos no salen de su red
  • Servicios en la nube (Claude, GPT, YandexGPT, GigaChat): a través de los clientes MCP correspondientes
  • IDE con IA (Cursor, VS Code + Continue/Cline, JetBrains)

Su código y sus datos de 1C permanecen con usted. MCP-1C es un proceso local que solo se comunica con su base de datos.

Versiones de pago

Además de la versión gratuita Open, hay ediciones de pago con capacidades ampliadas:

  • Extendida (1 990 ₽/mes). Ocho herramientas consolidadas (modelo con parámetro action): lectura del código fuente de módulos, trabajo con esquemas XSD y validación de XML, optimizador de consultas, linter BSL, asistente de sintaxis, multi-base, extensiones .cfe, sandbox de código, memoria de proyecto y plantillas
  • Profesional (4 990 ₽/mes). Todo lo de Extendida, más análisis profundo de toda la base de código, navegación de código y grafo de dependencias, búsqueda semántica, visualización arquitectónica, autodocumentación, generación de pruebas y procesamientos .epf, navegación por configuraciones estándar, comparación de base y extensiones, verificación de consultas y API de plataforma, análisis de derechos RLS y planes de intercambio

Al registrarse, obtiene 14 días de la versión Profesional gratis.

→ Más información sobre tarifas → Documentación

[!TIP] Prueba beta de la versión Profesional. Hemos lanzado la edición Profesional para el análisis profundo de toda la base de código: análisis masivo (antipatrones, duplicados, código muerto, auditoría de seguridad, métricas de calidad), navegación de código y grafo de dependencias, búsqueda semántica, visualización arquitectónica, autodocumentación, generación de pruebas (YAxUnit, Vanessa-Automation) y procesamientos .epf, navegación por configuraciones estándar, comparación de base y extensiones, verificación de consultas y API de plataforma, análisis de derechos RLS y planes de intercambio.

Regístrese y obtenga 14 días gratis. A los probadores beta activos que comparten comentarios útiles y desean continuar las pruebas, les extendemos el período de prueba. Los 5 mejores probadores beta recibirán una suscripción gratuita de por vida a la versión Profesional.

→ Registrarse | Documentación Pro | Informar de un problema

Comparación de versiones

AbiertaExtendidaProfesional
Herramientas11 separadas8 consolidadas8 + herramientas Pro
PrecioGratis1 990 ₽/mes4 990 ₽/mes
Período de prueba--14 días
LicenciaMITSuscripciónSuscripción

Extendida añade (8 herramientas consolidadas):

  • Lectura del código fuente de módulos: objetos, formularios, módulos comunes, extensiones
  • Contexto comprimido de metadatos y resolución de nombres de objetos por índice de descarga
  • Trabajo con esquemas XSD y validación estructural de XML según la descarga real
  • Optimizador de consultas (15 antipatrones) y linter BSL (más de 30 diagnósticos)
  • Asistente de sintaxis (más de 10 000 definiciones) y verificación de compatibilidad de versiones
  • Generadores de consultas y formularios impresos, conversor de llamadas modales a asíncronas
  • Sandbox de código con confirmación y registro de auditoría
  • Multi-base y trabajo con extensiones .cfe (lectura, búsqueda)
  • Memoria de proyecto (memory) y biblioteca de plantillas de código (templates)
  • Trabajo mediante sondeo inverso (long polling): una tarea programada en segundo plano en 1C consulta el servidor por sí misma, no es necesario publicar un servicio HTTP en el servidor web

Profesional añade:

  • Análisis masivo de toda la base de código (bulk_analyze): antipatrones, duplicados, código muerto, auditoría de seguridad BSL, métricas de calidad, tendencias
  • Búsqueda semántica de código (LSA + Randomized SVD) y modo híbrido
  • Navegación de código y grafo de dependencias: jerarquía de llamadas, ir a declaración, búsqueda de lugares de llamada, análisis de límites arquitectónicos, consultas estructurales al grafo
  • Expediente de objeto y lectura de esquemas de composición de datos (SKD) de informes
  • Visualización arquitectónica (diagramas) y autogeneración de documentación
  • Generación de pruebas (YAxUnit, Vanessa-Automation) y procesamientos .epf
  • Navegación por configuraciones estándar (BP, ZUP, UT, Retail, KA, ERP)
  • Diff estructural de extensiones .cfe y verificación de la configuración principal con la extensión (code_review)
  • Asistente de actualización de configuraciones estándar
  • Verificación semántica de consultas según metadatos y verificación de API de plataforma en código BSL
  • Análisis de derechos y roles RLS, así como planes de intercambio (sin conexión, según descarga)
  • Integración CI/CD (--ci, --json, quality gates), informes HTML/PDF/SARIF

→ Registrarse | Tarifas

Por qué mcp-1c

  • Un solo binario, cero dependencias. Escrito en Go: no necesita Python, Node.js, JVM ni EDT. Descargue, ejecute, funciona.
  • 11 herramientas para trabajar con la base en vivo. Metadatos, información de configuración, formularios, consultas de datos (con parámetros), búsqueda de código, recarga de descarga, validación, registro de eventos, ayuda BSL, análisis de subsistemas.
  • Búsqueda de texto completo en código (search_code). Tres modos: smart (clasificación BM25), regex, exact. Sinónimos BSL integrados: buscar StrFind encuentra СтрНайти y viceversa.
  • Indexación fragmentada. Construcción paralela del índice según el número de núcleos. ~7 segundos para más de 13 000 módulos. Caché en disco: el reinicio es instantáneo.
  • Inicio no bloqueante. El índice se construye en segundo plano, el servidor MCP está disponible de inmediato. La búsqueda funcionará después de completar la indexación.
  • Funciona con su base. La IA ve la configuración real y los datos reales: no una referencia abstracta, sino exactamente su base.
  • No está vinculado a IDE ni a red neuronal. Funciona con Configurator, EDT o sin IDE. Funciona con cualquier modelo, incluidos los locales (Ollama, LM Studio). Solo necesita un servicio HTTP de 1C.
  • Instalación automática. mcp-1c --install "C:\путь\к\базе": encuentra la plataforma por sí mismo, instala la extensión, actualiza la configuración de la base de datos.
  • Ayuda BSL integrada. La sintaxis de las funciones de la plataforma está disponible sin servicios externos y sin 1C en ejecución.

Inicio rápido

¿Es la primera vez que oye hablar de MCP? Lea la guía paso a paso: allí todo desde cero, incluida la explicación de qué es MCP.

1. Descargar

El binario para su sistema operativo está en Releases. O: go build -o mcp-1c ./cmd/mcp-1c/

2. Instalar la extensión en 1C

# Windows
mcp-1c --install "C:\путь\к\базе"

# macOS / Linux
mcp-1c --install ~/Documents/InfoBase

# Клиент-серверная база (MS SQL, PostgreSQL)
mcp-1c --install "srv-1c\buh_prod" --server --db-user Admin --db-password pass

Si la plataforma está instalada en una carpeta no estándar: mcp-1c --install "путь" --platform "/custom/path/to/1cv8"

Si la versión de la plataforma no se determina automáticamente (ruta no estándar sin número de versión), indíquela explícitamente: mcp-1c --install "путь" --platform "/custom/path/to/1cv8" --platform-version 8.3.13

Esta compilación requiere la extensión versión 0.4.8 o posterior. Una más antigua no impide el inicio: el servidor funciona, pero escribe en el registro Extension is OLDER than this build requires, y algunas herramientas responderán con error.

3. Iniciar el servicio HTTP de 1C

Publique el servicio HTTP de 1C a través de Apache o IIS (Configurador → Administración → Publicación en servidor web). Funciona en Windows y Linux. Detalles en la guía paso a paso.

4. Configurar el cliente de IA

Configuración del servidor MCP:

{
  "mcpServers": {
    "1c": {
      "command": "/path/to/mcp-1c",
      "args": ["--base", "http://localhost:8080/hs/mcp-1c"]
    }
  }
}

En Windows, rutas con barras invertidas: "command": "C:\\путь\\к\\mcp-1c.exe"

Reinicie el cliente de IA. En Claude Desktop recomendamos: «+» → Connectors → Tool access → Always available.

También se admiten: Claude Code, Codex, Cursor, Windsurf, VS Code + Copilot, VS Code + Continue, JetBrains IDE, así como cualquier cliente para modelos locales con soporte MCP. La configuración de cada uno está en la guía paso a paso.

Pregunte: «Muestra la estructura de configuración de mi base 1C»

Herramientas disponibles

HerramientaDescripción
get_metadata_treeÁrbol de metadatos: directorios, documentos, registros, tipos definidos, módulos comunes, etc.
get_object_structureAtributos, partes tabulares, dimensiones, recursos y estructura de subsistema (object_type=Subsystem) de un objeto específico
get_form_structureEstructura del formulario: elementos, comandos, manejadores de eventos. La composición completa se lee de la descarga, por lo que se necesita ejecutar con --dump; sin él, solo se devuelve lo que proporcionó el servicio HTTP de 1C, y el formulario lo elige él mismo
get_configuration_infoNombre de configuración, versión, proveedor, versión de plataforma, modo de operación
search_codeBúsqueda de texto completo en código de módulos: smart (BM25), regex, exact. Sinónimos BSL (rus↔ing). Filtrado por tipo de metadatos y módulo
reload_dumpRecargar la descarga sin reiniciar el servidor: después de una nueva descarga de configuración, search_code comienza a buscar en el nuevo contenido. Solo disponible con --dump
bsl_syntax_helpAyuda sobre 180 funciones integradas, métodos de tipos y patrones BSL
execute_queryEjecutar una consulta en el lenguaje de consultas de 1C con parámetros (solo SELECT/ВЫБРАТЬ)
validate_queryVerificar la sintaxis de la consulta sin ejecutarla
get_event_logLectura del registro de eventos con filtrado por fecha, nivel, usuario y evento
analyze_subsystemsAnálisis de distribución de objetos por subsistemas: objetos fuera de subsistemas (orphans), subsistemas de un objeto específico (containing), objetos en varios subsistemas (intersections)

Configuración

FlagEnv varPor defectoDescripción
--baseMCP_1C_BASE_URLhttp://localhost:8080/hs/mcp-1cURL del servicio HTTP de 1C
--userMCP_1C_USER-Usuario del servicio HTTP
--passwordMCP_1C_PASSWORD-Contraseña del servicio HTTP
--max-response-sizeMCP_1C_MAX_RESPONSE_SIZE128Tamaño máximo de respuesta de 1C en mebibytes (MiB). Una respuesta más grande se rechaza con un error claro. Aumente el límite para bases grandes con extensiones.
--request-timeoutMCP_1C_REQUEST_TIMEOUT300Tiempo de espera de la solicitud HTTP a 1C en segundos. Auméntelo si la transferencia de una respuesta muy grande (por ejemplo, extensiones de una base grande) no se completa a tiempo.
--dump--Ruta a la descarga de configuración (DumpConfigToFiles), incluye las herramientas search_code y reload_dump
--reindex--Reconstrucción forzada del índice de búsqueda (ignora la caché)
--install--Instalar la extensión en la base de 1C en la ruta especificada
--server--Modo de base cliente-servidor: --install acepta una cadena de conexión сервер\база (por ejemplo srv-1c\buh_prod)
--platform--Ruta al binario de 1C (detección automática si no se especifica)
--platform-version--Versión de la plataforma 1C (por ejemplo 8.3.13). Se determina automáticamente desde la ruta de la plataforma. Indíquela manualmente si la plataforma está instalada en una ruta no estándar sin información de versión. Versión mínima compatible: 8.3.10
--db-user--Usuario de la base de 1C para DESIGNER (modo --install)
--db-password--Contraseña de la base de 1C para DESIGNER (modo --install)

Pase el inicio de sesión y la contraseña con los flags --user y --password (o las variables MCP_1C_USER y MCP_1C_PASSWORD), no dentro de la dirección. Indique ambos a la vez: --user sin --password envía HTTP Basic con contraseña vacía. La notación http://Admin:secret@сервер/база/hs/mcp-1c también funciona, mcp-1c extrae las credenciales de la dirección al inicio y no aparecen en los textos de error ni en el registro, pero parte de esas direcciones se rechazan al inicio: con ? o #, con letras rusas en el inicio de sesión o la contraseña, y también con @ en la ruta con un puerto explícito. Análisis completo: Dirección del servicio HTTP en --base.

mcp-1c solo realiza redirecciones dentro de la dirección de --base: mismo esquema, mismo host, mismo puerto. Si el servidor web redirige http a https o a otro puerto, indique la dirección final en --base.

Registro y salida

Por defecto, el comportamiento depende de si el servidor se ejecuta en una terminal o a través de un cliente MCP:

  • En la terminal (stdin conectado a tty): el progreso de indexación, los mensajes informativos y los errores se escriben en stderr como de costumbre.
  • A través de un cliente MCP (Kilo Code, OpenCode, Claude Desktop, Cursor y otros, cuando stdin es un pipe): stderr está vacío, la salida aleatoria de bibliotecas de terceros se redirige a ~/.cache/mcp-1c/stderr.log. Esto protege a los clientes que interpretan cualquier salida de stderr como un error fatal (Issue #14).

Banderas y variables de entorno

Bandera / envDescripción
--verboseForzar la habilitación de stderr incluso cuando se ejecuta a través de un pipe. Útil para depurar la conexión del cliente MCP.
--quietForzar el silenciamiento de stderr incluso en la terminal. Anula --verbose.
MCP_1C_NO_TTY=1Equivalente a --quiet. Más conveniente que la bandera CLI al ejecutar en Docker / systemd, donde los argumentos de línea de comandos son menos flexibles.
--debugRegistros detallados en el archivo ~/.cache/mcp-1c/server.log. En la terminal también desactiva el indicador de progreso.

Git Bash / MSYS2 / MinTTY en Windows

Estos shells conectan stdin a través de pipes con nombre, no a través de un handle de consola normal. La detección automática los considera no-TTY, por lo que el progreso de indexación no se muestra por defecto. Para diagnóstico manual, use la bandera --verbose o una cmd.exe completa / Windows Terminal.

Desarrollo

go build -o mcp-1c ./cmd/mcp-1c         # сборка
go test ./... -v -race                    # тесты
go run ./cmd/mock-1c -port 9191           # mock-сервер 1С

Extensión 1C

Los fuentes de la extensión se almacenan en extension/src/ en formato de descarga XML de configuración. Al --install se integran en el binario a través de go:embed y se cargan directamente mediante DESIGNER /LoadConfigFromFiles. No se requiere un archivo .cfe listo para la compilación.

El MCP_HTTPService.cfe listo está disponible en Releases: es la forma más sencilla de instalación si no tiene acceso a la línea de comandos en el servidor 1C (por ejemplo, al trabajar a través de RDP). Más detalles: docs/1c-setup.md.

Para compilar manualmente el .cfe desde los fuentes:

# macOS / Linux (требуется установленная платформа 1С)
./scripts/build-extension.sh ~/Documents/InfoBase

# Windows
scripts\build-extension.cmd C:\Users\User\Documents\InfoBase

Compatibilidad

Clientes de IA
Modelos localesOllama, LM Studio, llama.cpp y cualquier cliente compatible con MCP
Servicios en la nubeClaude Desktop, Claude Code, Codex, GPT (a través de cliente MCP), YandexGPT, GigaChat
IDECursor, VS Code (Continue, Cline, Copilot), Windsurf, IDE de JetBrains

MCP-1C no conoce ni determina qué modelo se ejecuta en el lado del cliente.

Plataforma 1CEstado
8.3.10 y superior (comercial)Compatible
8.5.x (comercial)Compatible
8.3.10+ / 8.5.x (educativa)Compatible

Versión mínima compatible de la plataforma: 8.3.10

SOServidor MCPInstalación automáticaServicio HTTP 1C
Windowssísísí (Apache o IIS)
macOSsísíno (limitación de la plataforma 1C), use una VM de Windows
Linuxsísísí (Apache o ibsrv)

Requisitos del sistema

El servidor en sí no exige muchos recursos. Se necesita hardware potente solo si levanta un modelo local, y esos requisitos los define el propio modelo, no MCP-1C.

Servidor MCP-1C:

  • Binario. Un único archivo ejecutable estático sin dependencias (no se necesitan Python, Node.js, JVM ni EDT). Tamaño aproximado de 25-40 MB.
  • SO y arquitecturas. Windows, macOS, Linux; amd64 y arm64.
  • Plataforma 1C. Versión mínima compatible 8.3.10. Para la instalación manual del .cfe listo se necesita la versión 8.3.14 o superior.
  • Acceso a datos. Servicio HTTP 1C o descarga offline de configuración (--dump).
  • CPU y RAM. Los requisitos son mínimos, no hay un mínimo fijo. Al construir el índice de búsqueda, la memoria está limitada por arquitectura: los datos se procesan por lotes y se transmiten al disco.
  • Disco. Caché del índice de búsqueda de aproximadamente 100-200 MB para configuraciones grandes (BSP, ERP, UT). La compilación toma aproximadamente 7 segundos para 13 000+ módulos; la ejecución posterior usa la caché.

Modelo (LLM):

MCP-1C no ejecuta ni aloja ningún modelo. Funciona con cualquier modelo en el lado del cliente, por lo que los requisitos de hardware para el modelo dependen de su elección:

  • Modelo en la nube (Claude, GPT, YandexGPT, GigaChat): no hay requisitos locales de hardware.
  • Modelo local (Ollama, LM Studio, llama.cpp): los requisitos de RAM, VRAM y disco los define el modelo elegido, no MCP-1C.

Publicaciones

Infostart

Licencia

MIT