Skip to main content
Glama
kimagure-dd

@kimagure-dd/xirr-mcp

by kimagure-dd

@kimagure-dd/xirr-mcp

npm version License: MIT

**XIRR(拡張内部収益率)**を計算するためのMCPサーバーです。楽天証券の取引履歴CSVの読み込みを標準サポートしています。

Claude DesktopやClaude Codeに組み込み、証券会社からエクスポートしたCSVを渡して以下のように質問してください:

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

Claudeが不定期な入出金を考慮してXIRRを計算し、結果を解説します。

機能

  • 🧮 calculate_xirr — 任意のキャッシュフローと現在の評価額からXIRRを計算

  • 📄 parse_rakuten_csv — 楽天証券の取引履歴CSVを正規化されたキャッシュフローに変換

  • 🔌 ネットワークアクセス不要の純粋なstdio MCPサーバー

  • 📦 ランタイム設定不要、npxコマンド一つで実行可能

インストールとセットアップ

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) または %APPDATA%\Claude\claude_desktop_config.json (Windows) を編集します:

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

Claude Desktopを再起動してください。calculate_xirr および parse_rakuten_csv ツールが表示されるはずです。

Claude Code

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

使用例

直接計算

Claudeに以下のように尋ねます:

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

Claudeは構造化された入力で calculate_xirr を呼び出し、以下を返します:

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

楽天証券のCSVから計算

  1. 楽天証券にログイン → 取引履歴 → CSV ダウンロード

  2. (Shift_JIS でダウンロードされるため UTF-8 に変換してください)

  3. Claude にファイル内容を渡して「これで実績年利を計算して。現在の評価額は ¥X」と依頼

Claudeは自動的にCSVを parse_rakuten_csvcalculate_xirr の順で処理します。

ツールリファレンス

calculate_xirr

日付付きキャッシュフローのリストと現在の評価額からXIRRを計算します。

入力:

フィールド

説明

cashFlows

array

{ date, amount } のリスト。正の値=投資、負の値=引き出し。

currentValue

number

現在のポートフォリオ評価額。

valuationDate

string

YYYY-MM-DD。currentValue の日付。

出力:

フィールド

説明

annualRate

number

年率換算された収益率(パーセント)。

monthlyRate

number

月率(年率に複利換算)。

totalInvestment

number

全キャッシュフローの合計。

totalGain

number

currentValue - totalInvestment

gainRate

number

投資額に対する合計利益率(パーセント)。

converged

boolean

反復計算が収束した場合は true。

parse_rakuten_csv

楽天証券の取引履歴CSVを解析します。

入力:

フィールド

説明

csvContent

string

生のCSVテキスト(UTF-8デコード済み)。

必要なCSVヘッダー:

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

動作:

  • 買付 行 → 正の金額(投資)

  • その他の取引タイプ(例: 売却) → 負の金額(引き出し)

  • 無効な行は警告とともにスキップされます

計算方法

  • メインソルバーとしてニュートン・ラフソン法を使用

  • ニュートン法で収束しない場合は二分法にフォールバック

  • 時間単位: 月(1ヶ月あたり 365.25 / 12 日を使用)

  • 収束閾値: 1e-7

kimagure-dd.devのブラウザ版XIRR計算機 と同じロジックを使用しているため、結果は同一です。

免責事項

本ツールは情報提供のみを目的として投資パフォーマンスを計算します。 税金、取引手数料、為替換算は考慮されていません。 出力は投資助言を構成するものではありません。

開発

npm install
npm run build
npm test

公開前にローカルでサーバーをテストするには:

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

ライセンス

MIT © kimagure-dd

関連

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