Skip to main content
Glama
kimagure-dd

@kimagure-dd/xirr-mcp

by kimagure-dd

@kimagure-dd/xirr-mcp

npm version License: MIT

Servidor MCP para el cálculo de la XIRR (Tasa Interna de Retorno Extendida), con soporte integrado para el CSV de transacciones de Rakuten Securities (楽天証券).

Conéctalo a Claude Desktop o Claude Code, facilítale un CSV exportado de tu bróker y pregunta:

「この CSV と現在の評価額 ¥1,500,000 で、実績年利を計算して」

Claude calculará la XIRR por ti —teniendo en cuenta las aportaciones y retiradas irregulares— y explicará el resultado.

Características

  • 🧮 calculate_xirr — XIRR a partir de series de flujo de caja arbitrarias + valoración actual

  • 📄 parse_rakuten_csv — Analiza el CSV de transacciones de Rakuten Securities (取引履歴) y lo convierte en flujos de caja normalizados

  • 🔌 Servidor MCP puro stdio, no requiere acceso a la red

  • 📦 Configuración en tiempo de ejecución cero, comando npx único

Instalación y configuración

Claude Desktop

Edita ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "xirr": {
      "command": "npx",
      "args": ["-y", "@kimagure-dd/xirr-mcp"]
    }
  }
}

Reinicia Claude Desktop. Deberían aparecer las herramientas calculate_xirr y parse_rakuten_csv.

Claude Code

claude mcp add xirr -- npx -y @kimagure-dd/xirr-mcp

Ejemplos de uso

Cálculo directo

Pregunta a Claude:

「以下のキャッシュフローで XIRR を計算して。2020-01-01 に 100万円投資、2022-01-01 に 50万円追加、現在(2025-01-01)の評価額 200万円」

Claude llamará a calculate_xirr con la entrada estructurada y devolverá:

{
  "annualRate": 12.34,
  "annualRateFormatted": "12.34%",
  "totalInvestment": 1500000,
  "totalGain": 500000,
  "gainRateFormatted": "33.33%",
  "converged": true
}

Desde el CSV de Rakuten Securities

  1. Inicia sesión en Rakuten Securities → Historial de transacciones (取引履歴) → Descargar CSV

  2. (Como se descarga en Shift_JIS, conviértelo a UTF-8)

  3. Pasa el contenido del archivo a Claude y solicita: "Calcula la rentabilidad anual real con esto. La valoración actual es ¥X"

Claude enviará automáticamente el CSV a través de parse_rakuten_csvcalculate_xirr.

Referencia de herramientas

calculate_xirr

Calcula la XIRR a partir de una lista de flujos de caja fechados y una valoración actual.

Entrada:

Campo

Tipo

Descripción

cashFlows

array

Lista de { date, amount }. Positivo = invertido, negativo = retirado.

currentValue

number

Valoración actual de la cartera.

valuationDate

string

YYYY-MM-DD. Fecha de currentValue.

Salida:

Campo

Tipo

Descripción

annualRate

number

Rentabilidad anualizada como porcentaje.

monthlyRate

number

Tasa mensual (compuesta a anual).

totalInvestment

number

Suma de todos los flujos de caja.

totalGain

number

currentValue - totalInvestment.

gainRate

number

Ganancia total como porcentaje de la inversión.

converged

boolean

Verdadero si el solucionador iterativo convergió.

parse_rakuten_csv

Analiza un CSV de transacciones de Rakuten Securities.

Entrada:

Campo

Tipo

Descripción

csvContent

string

Texto CSV sin procesar (decodificado en UTF-8).

Cabeceras CSV requeridas:

約定日, 取引, ファンド名, 受渡金額/(ポイント利用)[円]

Comportamiento:

  • Filas 買付 → cantidad positiva (inversión)

  • Otros tipos de transacciones (ej. 売却) → cantidad negativa (retirada)

  • Las filas no válidas se omiten con advertencias

Método de cálculo

  • Iteración de Newton-Raphson como solucionador principal

  • Alternativa de bisección cuando Newton no logra converger

  • Unidad de tiempo: meses (usando 365.25 / 12 días por mes)

  • Umbral de convergencia: 1e-7

Se utiliza la misma lógica en la calculadora XIRR basada en navegador en kimagure-dd.dev, por lo que los resultados son idénticos.

Descargo de responsabilidad

Esta herramienta calcula el rendimiento de la inversión solo con fines informativos. No se consideran impuestos, comisiones de transacción ni conversión de divisas. El resultado no constituye asesoramiento de inversión.

Desarrollo

npm install
npm run build
npm test

Para probar el servidor localmente antes de publicar:

npm pack
# Then point Claude Desktop to the .tgz path

Licencia

MIT © kimagure-dd

Relacionado

A
license - permissive license
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/kimagure-dd/xirr-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server