pbu-fsbu-mcp
pbu-fsbu-mcp
Servidor MCP con los textos de las normas contables rusas: los 29 PBU y FSBU del registro del Ministerio de Finanzas, con precisión hasta el punto, teniendo en cuenta la fecha y con proyección sobre los objetos de configuración de «1С:Contabilidad de la empresa 3.0».
Responde a preguntas del tipo «qué exige el FSBU 6/2020 sobre el valor de liquidación» y a las inversas: «qué norma respalda el registro ПараметрыАмортизацииОС».
Inicio rápido
git clone https://github.com/MihasikPro/pbu-fsbu-mcp.git
cd pbu-fsbu-mcp
docker compose -f deploy/compose.local.yml up --buildcurl http://127.0.0.1:18010/healthzSe espera {"status":"ok"}. El endpoint MCP es http://127.0.0.1:18010/mcp.
El corpus no se almacena en git: se compila a partir de las fuentes YAML en la etapa docker build y allí mismo lo verifica un validador, por lo que un corpus no válido hace fallar la compilación en lugar de llegar al runtime. No es necesario instalar nada antes del primer arranque: ni Python ni Tesseract.
Related MCP server: onec-meta-mcp
Herramientas
Herramienta | Responde a la pregunta |
| Qué normas existen, cuáles están vigentes en la fecha |
| Metadatos e índice de una norma |
| Texto exacto del punto con los datos de la orden y el número de edición |
| Qué punto responde a la pregunta formulada en lenguaje natural |
| Con qué objetos de BP 3.0 se implementa el punto |
| Qué norma respalda el objeto de configuración |
| Qué artículos de ITS analizan este punto |
El recurso pbu-fsbu://registry es una tabla compacta de todas las normas que el cliente puede cargar una sola vez al inicio de la sesión en lugar de repetir llamadas a list_standards.
Qué contiene
29 normas, 1768 puntos. Todo el registro del Ministerio de Finanzas: PBU y FSBU vigentes y derogados, una edición de cada uno.
La respuesta siempre se da con fecha. Cada herramienta acepta on_date y devuelve el estado de la norma en esa fecha. No es un adorno: el PBU 9/99 y el 10/99 pierden vigencia el 01.01.2027, el FSBU 9/2025 y el 10/2026 entran en vigor en esa misma fecha, y una respuesta sin fecha en ese horizonte sería incorrecta.
La proyección sobre 1С está verificada. El FSBU 6/2020 está vinculado a objetos de BP 3.0: 18 vínculos en 17 puntos, cada uno con un nivel de confianza y una explicación de cómo exactamente el objeto implementa la norma. Todos los registros tienen verified: true: los verificó una persona, no solo el código. Los otros 28 estándares aún no tienen proyección, y las herramientas responden con un mensaje explícito, no con una lista vacía.
La proyección es una interpretación, no una norma. Siempre está en un campo separado del texto del punto y va acompañada de un descargo de responsabilidad. Los registros no verificados además generan una advertencia aparte, y esta no desaparece mientras al menos uno de esos registros entre en la respuesta.
El servidor no accede a la red. Ni al arrancar ni al procesar una solicitud. La base se abre estrictamente en modo lectura; la imagen es inmutable.
Lo que no hace
No asesora ni interpreta normas más allá del texto exacto del estándar.
No almacena los textos de los artículos de ITS: solo identificadores, títulos y resúmenes breves con palabras propias. El texto completo se lee mediante suscripción.
No sustituye a un jurista ni toma decisiones contables.
Conexión de clientes
El cliente se conecta a un servidor ya en ejecución: local o en un servidor interno.
Codex CLI
~/.codex/config.toml:
[mcp_servers.pbu_fsbu]
url = "http://127.0.0.1:18010/mcp"Claude Code
claude mcp add --transport http pbu-fsbu http://127.0.0.1:18010/mcpClaude Desktop
Claude Desktop no puede conectarse a un endpoint HTTP: la aplicación rechaza el esquema http://, y la conexión del conector personalizado se establece desde la nube de Anthropic, que no puede alcanzar ni localhost ni una dirección de la red local. Codex CLI y Claude Code son procesos locales; no tienen ese problema.
Para Claude Desktop, el servidor se ejecuta localmente por stdio, desde un checkout con el corpus ya compilado: %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"pbu-fsbu": {
"command": "uv",
"args": ["--directory", "C:\\path\\to\\pbu-fsbu-mcp", "run", "pbu-fsbu-mcp"]
}
}
}La instalación directa desde una dirección git (uvx --from git+...) no sirve para esto: data/build/ no entra en el repositorio, el corpus no se compilará y el servidor se negará a arrancar. Se necesita un checkout local; véase «Desarrollo».
Despliegue en servidor
deploy/compose.server.yml está pensado para un servidor interno con acceso solo desde la red local:
git clone https://github.com/MihasikPro/pbu-fsbu-mcp.git
cd pbu-fsbu-mcp/deploy
docker compose -f compose.server.yml up -d --buildAntes del primer arranque, sustituya en el archivo la dirección de publicación del puerto por la dirección de su servidor. El puerto se publica en una dirección LAN concreta, no en 0.0.0.0: si el host adquiere una segunda interfaz (VPN o IP pública), la vinculación a 0.0.0.0 expondría el servicio allí en silencio, y esta configuración no puede hacerlo.
TLS y autenticación se omiten deliberadamente: el corpus son textos normativos públicos sin secretos y la red es cerrada. No se debe exponer el servicio al exterior sin TLS y autorización.
corpus_meta.built_at se fija en el momento del docker build, no al arrancar el contenedor. La advertencia de corpus desactualizado cuenta 90 días desde la fecha de compilación de la imagen; restart y up sin --build no actualizan el corpus: se necesita una recompilación.
Fuentes
Ministerio de Finanzas de Rusia — Normas federales de contabilidad
publication.pravo.gov.ru — publicación oficial de actos jurídicos
La fuente principal del texto es la página propia de la norma en el sitio del Ministerio de Finanzas (https://minfin.gov.ru/ru/document?id_4=NNNN, el enlace está en el registro): allí el texto se entrega como HTML de servidor normal, sin escaneos ni OCR, y está disponible incluso para normas más antiguas que el archivo de publication.pravo.gov.ru, que comienza aproximadamente en noviembre de 2011 y por eso no contiene 19 de las 29 normas en absoluto.
La excepción es el FSBU 27/2021: su página en el sitio del Ministerio de Finanzas no contiene el texto, solo un <iframe> con un visor de PDF. Para esta única norma, el texto se obtuvo mediante el reconocimiento del escaneo oficial de la orden (Tesseract 5.x, modelo rus de tessdata_best) con una posterior revisión línea por línea. El OCR es una vía de respaldo documentada, no el método principal.
El texto se contrasta con el acto oficial antes de trasladar el archivo de data/drafts/ a data/sources/standards/. La prueba test_html_sourced_standard_reproduces_byte_for_byte regenera el corpus a partir de las instantáneas HTML confirmadas y exige una coincidencia byte a byte, de modo que el corpus es reproducible por construcción, no por confianza.
Qué no entra en el corpus
Los anexos de la propia norma —modelos de formularios de informes y ejemplos numéricos detallados, presentados como anexo aparte con numeración propia— no entran en el corpus. Formalmente forman parte del acto, pero su numeración («1.», «2.» …) comienza de nuevo y entra en conflicto con los puntos de la norma.
La diferencia con los ejemplos de trabajo dentro de los puntos está solo en el marcado de la fuente: un anexo real tiene su propio título «Anexo al Reglamento de contabilidad «…»». Los ejemplos numéricos de los párrafos 14–15 del PBU 18/02 no tienen ese título; son parte del texto del punto y están presentes íntegramente en el corpus.
Norma | Recortado |
PBU 8/2010 | 12 010 car. |
PBU 24/2011 | 4 062 car. |
PBU 16/02 | 3 814 car. |
PBU 19/02 | 3 208 car. |
PBU 7/98 | 2 768 car. |
PBU 18/02 | 2 372 car. |
PBU 3/2006 | 1 508 car. |
Licencia
Los actos normativos no son objeto de derechos de autor (art. 1259 del Código Civil de la Federación de Rusia). El código es MIT; las condiciones sobre los datos están en data/LICENSE.
Actualización del corpus
Cuando se publica una nueva orden del Ministerio de Finanzas:
uv run --group etl python -m etl.watch --live— compara el registro del sitio del Ministerio de Finanzas con el corpus y muestra las diferencias.uv run --group etl python -m etl.draft_yaml --live— extrae el texto de los puntos y coloca un borrador endata/drafts/.Revisar el texto según la orden oficial, trasladarlo a
data/sources/standards/y eliminar el banner# ЧЕРНОВИК.uv run python -m etl.build_db && uv run python -m etl.validateuv run --group etl pytest
Una vez por semana, el workflow etl-watch realiza la misma comparación y, si hay diferencias, abre un pull request con el informe. No hay fusión automática: la nueva orden la lee una persona.
Las reglas para añadir vínculos con 1С y referencias a ITS están en CONTRIBUTING.md.
Desarrollo
uv sync --all-groups
uv run python -m etl.build_db
uv run python -m etl.validate
uv run --group etl pytestLa fuente de verdad es el YAML en data/sources/. El archivo data/build/pbu_fsbu.db se compila a partir de ellos y no se confirma en el repositorio.
El servidor también se puede ejecutar sin contenedor:
uv run pbu-fsbu-mcp # stdio
uv run pbu-fsbu-mcp --transport http --port 18010 # HTTPPruebas de OCR y Tesseract
Las pruebas de reconocimiento (tests/test_ocr_text.py) requieren Tesseract 5.x instalado localmente con el modelo rus. Sin él se omiten; el resto del conjunto no depende de esto. Para que se ejecuten realmente:
TESSERACT_CMD— ruta atesseract, si el binario no está enPATH;TESSDATA_PREFIX— directorio con los modelos*.traineddata, si no es el estándar.
$env:TESSERACT_CMD = "C:\Program Files\Tesseract-OCR\tesseract.exe"
$env:TESSDATA_PREFIX = "C:\Users\<user>\.tessdata"
uv run --group etl pytestEn CI, Tesseract y el modelo rus se instalan mediante apt-get; véase .github/workflows/ci.yml.
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
AlicenseBqualityBmaintenanceMCP server for 1C:Enterprise ERP with 35 tools: metadata inspection, document CRUD, register queries, and BSP integration. First MCP server for Russian ERP systems (300,000+ organizations). JSON-RPC 2.0 compliant BSL implementation.5130MIT- FlicenseNot gradedqualityCmaintenanceMCP server for searching and analyzing 1C enterprise metadata and BSL code using a SQLite backend. Enables querying configuration structure, code routines, and performing compliance checks via natural language.
- AlicenseNot gradedqualityDmaintenanceMCP server for RAG-based search over 1C Enterprise configuration documentation, enabling natural language queries to find objects like справочники, документы, and отчеты.MIT
- AlicenseNot gradedqualityBmaintenanceMCP сервер с встроенным AI агентом для поиска по графу метаданных и кода конфигураций 1С88AGPL 3.0
Related MCP Connectors
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
Brazilian fiscal MCP server - issue NF-e, NFC-e, NFS-e, CT-e, MDF-e and DC-e via SEFAZ.
AI-native ERP MCP: ES/EU fiscal compliance (VeriFactu/TicketBAI/Facturae), invoicing, tax, banking
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/MihasikPro/pbu-fsbu-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server