Asset Register MCP
Activos fijos y calendarios de depreciación (KST, HMRC, IRS MACRS) desde Claude. Todo local.
Documentación
mcp-asset-register
Servidor MCP para un registro de activos fijos con calendarios de depreciación. Un registro de activos fijos que deprecia según las tasas que las autoridades fiscales realmente publican, con el calendario, el asiento contable y la ganancia en la venta.
Funciona con Claude Desktop, Claude Code, Cursor y cualquier cliente del Model Context Protocol. Se ejecuta en tu propia máquina, o alojado sin instalación.
Página del producto: https://mcp.zovo.one/s/asset-register — qué hace, las herramientas que expone y un endpoint de token en vivo.
Instalación
Alojado, nada que instalar. Obtén un token de https://mcp.zovo.one/mcp/connect (la página de conexión) o https://mcp.zovo.one/mcp/token (el mismo token como JSON); se emite uno anónimo gratuito al momento y una clave Pro funciona igual. Luego apunta un cliente MCP a https://mcp.zovo.one/mcp/asset-register a través de streamable-http y envía el token como Authorization: Bearer <token>.
Si tu cliente no puede configurar cabeceras, coloca el token en la ruta en su lugar: https://mcp.zovo.one/mcp/asset-register/t/<token>. Ambas formas funcionan. La URL sin token responde 401 en tools/call, por lo que el token no es opcional.
Claude Desktop, un clic. Descarga asset-register.mcpb desde la última versión y haz doble clic en él.
Desde el código fuente. El espejo es autocontenido: cada dependencia de @theluckystrike/* está incluida, por lo que un clon nuevo se compila sin configuración adicional.
git clone https://github.com/theluckystrike/mcp-asset-register.git
cd mcp-asset-register
npm install && npm run build
Luego apunta tu cliente al punto de entrada compilado:
{
"mcpServers": {
"asset-register": {
"command": "node",
"args": ["/absolute/path/to/mcp-asset-register/dist/index.js"]
}
}
}
@theluckystrike/mcp-asset-registeraún no está publicado en npm, por lo que un comandonpx -y @theluckystrike/mcp-asset-registerfallará. Las tres rutas anteriores son las que funcionan y cada una es probada por CI.

Espejo de solo lectura de mcp-servers/servers/asset-register. Consulta MIRROR.md.
En el Registro oficial de MCP (io.github.theluckystrike/asset-register).
Mantén un registro de activos fijos y deprecialo según las tasas que las autoridades fiscales realmente publican. Tú le das lo que compraste, cuánto costó, cuándo entró en uso y en qué categoría cae; él te da la tasa, la vida útil, la convención, el calendario completo año por año o mes por mes, el asiento contable mensual y la ganancia o pérdida cuando lo vendes. Tres tablas vienen incluidas: las tasas de depreciación anuales polacas del anexo a las leyes CIT y PIT vinculadas a la clasificación KST, los grupos de desgravaciones de capital del Reino Unido con la desgravación anual de inversión, y las tablas estadounidenses MACRS GDS de medio año para propiedades de 3, 5 y 7 años. Las tablas son archivos incluidos, no una fuente en vivo, por lo que el mismo activo depreciado dos veces da la misma respuesta, y cada tasa lleva su instrumento, su URL de origen y la fecha en que entró en vigor. Nada sale de tu máquina.
Creado por theluckystrike.
Instalación
Un clic (.mcpb): descarga asset-register.mcpb desde la última versión y haz doble clic en él en Claude Desktop:
https://github.com/theluckystrike/mcp-servers/releases/latest
Alojado, sin instalación: apunta un cliente basado en URL a https://mcp.zovo.one/mcp/asset-register. GET https://mcp.zovo.one/mcp/connect genera un token e imprime una URL lista.
La publicación en npm para @theluckystrike/mcp-asset-register está pendiente, por lo que la línea npx a continuación devuelve 404 hoy.
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"asset-register": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-asset-register"]
}
}
}
Claude Code:
claude mcp add asset-register -- npx -y @theluckystrike/mcp-asset-register
Cursor (~/.cursor/mcp.json o .cursor/mcp.json): la misma entrada que Claude Desktop.
Herramientas
| herramienta | qué hace |
|---|---|
asset_add | Añade un activo al registro. La tasa, la vida útil y la convención provienen de la tabla incluida; ambas pueden ser anuladas. |
asset_list | El registro con costo, depreciación acumulada y valor neto contable en una fecha, totalizado por moneda. |
asset_schedule | El calendario completo para un activo almacenado o para uno que solo estás cotizando, por año o por mes, hasta cero o el valor residual. |
asset_journal | El asiento de un mes: débito al gasto de depreciación, crédito a la depreciación acumulada, por activo y en total, más un payload de expense_add. |
asset_dispose | Registra una venta, un desguace o una cancelación y obtén la ganancia o pérdida contra el valor neto contable en esa fecha. |
asset_delete | Elimina un activo del que nada depende y recupera su espacio del nivel gratuito. Un activo que ha sido dispuesto o contabilizado es rechazado, con el dependiente nombrado. |
asset_report | Valor neto contable por categoría y moneda, el cargo del año y cada disposición del año con su resultado. |
license_status | Gratuito o Pro, y dónde actualizar. |
license_activate | Activa una clave Pro. Verificada sin conexión. |
Lee el recurso assets://categories para cada categoría incluida, su código, su tasa y lo que cada tabla omite.
Gratuito vs Pro
| Gratuito | Pro | |
|---|---|---|
| Activos en el registro | 10 | Ilimitado |
asset_schedule | Sí, ilimitado | Sí |
asset_list, asset_dispose, asset_delete | Sí, ilimitado | Sí |
asset_journal | No | Sí |
asset_report | No | Sí |
Obtén Pro: $19 de pago único, o $39 por el paquete.
Qué hay en las tablas y qué se omitió deliberadamente
Cada tabla bajo src/tables/ lleva un header con la autoridad, el instrumento, la URL de origen, la fecha en que las tasas entraron en vigor y la fecha en que fueron leídas. El recurso assets://categories devuelve esas cabeceras con las tasas, por lo que la procedencia viaja con el número.
La regla sobre qué contienen: un valor que no pudiera afirmarse con confianza a partir del texto público se omitió, no se adivinó. Una tasa de depreciación termina en una declaración de impuestos. Una incorrecta que parece autoritativa es peor que una ausente, porque una ausente se rechaza por nombre y vas a buscarla.
| tabla | incluida | omitida |
|---|---|---|
| Polonia, KST | 33 filas que cubren las posiciones del anexo que esta compilación pudo afirmar con confianza: 0 por ciento (terreno, no depreciado en absoluto), 1.5, 2.5, 4.5, 7, 10, 14, 20 y 30 por ciento, a nivel de grupo y subgrupo KST, con la elegibilidad de saldo decreciente de cada una | Las posiciones de 18 y 25 por ciento del anexo. Su pertenencia a KST no pudo afirmarse con confianza, por lo que ninguna fila las reclama. También cada código KST individual de seis dígitos: un contribuyente clasifica el activo, esta tabla lleva la tasa |
| Reino Unido, desgravaciones de capital | El grupo de tasa principal al 18 por ciento, el grupo de tasa especial al 6 por ciento y la desgravación anual de inversión como una fila de primer año al 100 por ciento con su límite de GBP 1,000,000 | Las reglas de primer año y gasto total, la desgravación de estructuras y edificios, la desgravación de grupos pequeños, los umbrales de CO2 que deciden en qué grupo entra un automóvil y cada cargo de ajuste. Todo sensible a la fecha, nada afirmado con confianza aquí |
| EE. UU., MACRS | Las clases GDS de 3, 5 y 7 años bajo la convención de medio año, como los porcentajes publicados de la Tabla A-1 de Pub 946 | Las convenciones de trimestre medio y mes medio, las clases de propiedad inmobiliaria de 27.5 y 39 años, las clases de 10, 15 y 20 años, el Sistema de Depreciación Alternativo, la sección 179 y la depreciación de bonificación. Una clase de 10 años se rechaza por nombre, no se aproxima a la de 7 años |
Las tasas cambian. Verifica el effective_date en cualquier respuesta antes de confiar en ella y lee el source_url si la compra es reciente.
Reglas que aplica el motor
- Polonia cobra desde el mes DESPUÉS de que el activo entra en el registro (art. 16h ust. 1 pkt 1). Un activo en servicio el 15 de marzo comienza el 1 de abril, por lo que el año uno es nueve doceavos de la tasa anual y el calendario se extiende un año calendario más de lo que sugiere la vida. Cada respuesta nombra el primer mes de cargo.
- El método de saldo decreciente polaco cambia (art. 16k). La tasa se multiplica por un coeficiente de hasta 2.0 sobre el valor contable reducido, y en el primer año en que el monto decreciente caería por debajo del monto de línea recta, el resto del calendario es de línea recta. Los automóviles de pasajeros (KST 741) y los edificios están excluidos del método por completo y se rechazan en lugar de calcularse silenciosamente.
- Una desgravación por reducción del Reino Unido es una tasa de grupo, no un cargo por activo. Este servidor la aplica a un activo para que exista una cifra por activo, y lo dice en cada respuesta. Un saldo decreciente puro nunca llega a cero, por lo que el calendario se corta en 25 períodos y el último cancela lo que queda, con la línea de base indicando que eso es lo que ocurrió.
- MACRS ignora el valor de rescate. Los porcentajes publicados recuperan el costo total. Un residual pasado para un activo estadounidense se informa como ignorado y se mantiene en el registro para fines contables, en lugar de reducir silenciosamente la base.
- Los períodos suman la base depreciable, hasta la unidad menor. El dinero son unidades menores enteras de principio a fin y el calendario se asigna por redondeo acumulativo, por lo que
sum(periods) == cost - residualse cumple para cada entrada, y las filas mensuales suman su año. - Un activo byte-idéntico se rechaza, no se almacena dos veces.
asset_addnormaliza el nombre, la categoría, el costo, la moneda, las fechas, el método, la vida, el esquema y el valor de rescate, y un registro que coincide con un activo ya en el registro se rechaza por el id de ese activo sin escribir nada. Una llamada reintentada y un script re-ejecutado se ven exactamente como una segunda máquina, y en un nivel gratuito de diez activos la segunda fila es un espacio que no puedes recuperar. Dos unidades genuinamente idénticas son un registro legítimo: dale a la segunda un nombre distintivo y será aceptada. asset_deletees el camino de regreso, y es gratuito. Elimina un activo del que nada depende. Una disposición registrada o un mes queasset_journalya ha contabilizado es un dependiente, y la eliminación se rechaza con ese dependiente nombrado en lugar de eliminar el costo detrás de una cifra que ya ha salido de este servidor. El id nunca se reemite.- La depreciación se carga hasta e incluyendo el mes de la disposición, y luego se detiene. La ganancia o pérdida es el producto menos el valor neto contable en ese mes, y el asiento de disposición cuadra a cero.
- Las monedas nunca se suman entre sí. No hay tipo de cambio en este servidor, por lo que un registro en PLN y uno en USD siguen siendo dos cifras.
Publicación en el rastreador de gastos
asset_journal devuelve los argumentos exactos de expense_add para el servidor expense-tracker, un payload por moneda, y no escribe ningún gasto en sí mismo. Eso es deliberado: expense-tracker no publica un punto de entrada de biblioteca, y su contador de id, sus reglas de categoría, su división de IVA y sus valores predeterminados de moneda viven todos dentro de su propio manejador de expense_add bajo su propio bloqueo. Añadir una fila a su data.json directamente produciría una entrada sin ninguno de esos aplicados: una que parece nativa y no lo es. Devolver los argumentos es el mismo contrato que usan per-diem y kanban. Sí marca el registro: cada activo para el que produjo una línea registra el mes, por lo que asset_delete puede rechazar un activo cuya depreciación ya ha sido contabilizada en lugar de eliminar el costo detrás de una cifra publicada.
No se establece ningún vat_rate en el payload. La depreciación es un cargo contable, no una compra, por lo que no hay IVA de entrada sobre ella.
Una percepción medida
El calendario anual es donde buscas errores de redondeo, y el asiento mensual es donde realmente están.
De los 67 calendarios que estas tres tablas pueden producir para un activo de prueba (costo 12,345.67, residual 45.67, en servicio el 12 de marzo de 2026), las filas anuales salen limpias bajo casi cualquier regla de redondeo, porque un monto anual es un porcentaje de una base y cae en o cerca de un centavo completo. Divide esos mismos años en meses redondeando cada mes de forma independiente y 35 de los 67 ya no suman la base depreciable, con una diferencia de hasta 390 unidades menores, 3.90 en un activo de 12,345.67. Los peores infractores son las filas de mayor vida: un edificio residencial al 1.5 por ciento extiende su base sobre 800 meses, y 800 redondeos de medio centavo es de donde proviene el 3.90.
Esa es la forma equivocada de verlo, al revés de la intuición. La división mensual parece el paso presentacional inofensivo, el que viene después de que se ha hecho la aritmética real, por lo que es el paso que recibe un simple Math.round y ninguna prueba. También es el único paso cuyo resultado se publica: nadie registra un año, registran un mes, así que el número que llega al libro mayor es el del paso que no se verificó. La solución es que allocate redondea el total ACUMULADO en cada paso y toma cada cantidad como la diferencia entre dos acumulados redondeados, con el último período ajustado a lo que quede, y se aplica tanto a la división mensual como a la anual. test/contract.test.mjs luego verifica la identidad para cada calendario que las tablas puedan producir, en lugar de solo los dos o tres que una prueba unitaria habría elegido.
Privacidad
Todo permanece en tu máquina. Los activos son JSON bajo ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/asset-register/. Las tablas de tasas son archivos dentro del paquete. No hay ninguna llamada de red en este servidor, ni cuenta ni clave de API. Las claves de licencia se verifican sin conexión.
Licencia
MIT. Soporte: support@zovo.one
Usa estos documentos como un servidor MCP
Cualquier cliente MCP (Claude, Cursor, Windsurf, VS Code) puede leer la documentación de este repositorio directamente a través de GitMCP, sin instalación:
- URL de MCP de documentos: https://gitmcp.io/theluckystrike/mcp-asset-register