MP

mattstockton/portfolio-analysis

API development
6 stars Quality 47 Trend 14MIT

Turn brokerage CSV exports into a tax-aware, prioritized action plan — through a guided conversation. No spreadsheets, no manual data entry, no hardcoded parsers.

Overview

Turn brokerage CSV exports into a tax-aware, prioritized action plan — through a guided conversation. No spreadsheets, no manual data entry, no hardcoded parsers. Export your positions, drop the files in, and answer a few structured questions. The skill handles parsing, classification, gap analysis, and phased recommendations. - — Inspects your file's headers and writes a targeted parser on the fly. Works with Fidelity, Schwab, Vanguard, E*TRADE, Merrill, or any format it hasn't seen before. - — Maps 190+ funds/ETFs to standard asset classes, with keyword fallback and Morningstar category support for everything else. - — Handles the real-world case: a locked employer 401k you can't change plus accounts you control. Computes gaps against the combined portfolio, then tells you what to do with the part you can actually move. - — Flags bonds in taxable accounts, cash wasting Roth space, and other misplacements. Computes payback periods so you know if a fix is worth the tax cost.

README

Portfolio Analysis — A Claude Code Skill

Turn brokerage CSV exports into a tax-aware, prioritized action plan — through a guided conversation. No spreadsheets, no manual data entry, no hardcoded parsers. Export your positions, drop the files in, and answer a few structured questions. The skill handles parsing, classification, gap analysis, and phased recommendations.

What It Does

  • Adaptive CSV parsing — Inspects your file’s headers and writes a targeted parser on the fly. Works with Fidelity, Schwab, Vanguard, E*TRADE, Merrill, or any format it hasn’t seen before.
  • Asset classification — Maps 190+ funds/ETFs to standard asset classes, with keyword fallback and Morningstar category support for everything else.
  • Combined portfolio analysis — Handles the real-world case: a locked employer 401k you can’t change plus accounts you control. Computes gaps against the combined portfolio, then tells you what to do with the part you can actually move.
  • Tax-efficient location — Flags bonds in taxable accounts, cash wasting Roth space, and other misplacements. Computes payback periods so you know if a fix is worth the tax cost.
  • Phased action plans — Immediate (free moves in Roth), near-term (low-tax fixes), ongoing (redirect contributions), long-term (hold and dilute). Each recommendation includes what, why, tax cost, and priority.
  • Contribution alignment — Shows whether your recurring investments are closing gaps or making them worse.

How It Works

The skill walks Claude through a six-step workflow. At each gate, Claude uses AskUserQuestion to present structured choices — you pick from options rather than typing freeform responses.

  1. Intake — Goals, timeline, risk tolerance (structured multiple-choice)
  2. Data collection — You provide CSV exports; Claude writes a small Python script to parse them
  3. Profile setup — Tax bracket, account types, target allocation from templates or custom
  4. Analysis — Classification, gap analysis, tax impact, contribution alignment
  5. Recommendations — Prioritized, phased action plan with tax costs
  6. Report — Interactive discussion, markdown export, or both

Claude adapts at each step — if you have a locked 401k, it factors that into the math. If your CSVs have zero cost basis, it asks whether that’s real or missing data. If you prefer active funds over index funds, it respects that.

What’s Inside

portfolio-analysis/
├── SKILL.md                              # Full workflow, algorithms, and instructions
└── references/
    ├── allocation-templates.md           # 7 templates (3-fund, factor-tilted, aggressive, etc.)
    ├── asset-classification.md           # 190+ fund/ETF mappings across 8 brokerages
    └── tax-reference.md                  # 2025 federal/state brackets, TLH swap pairs, asset location rules

Getting Started

Copy the skill into any project’s .claude/skills/ directory:

cp -r portfolio-analysis/ /path/to/your-project/.claude/skills/portfolio-analysis

Works with both Claude Code and CoWork. The skill activates automatically when you mention portfolio analysis, rebalancing, or brokerage exports.

Privacy

This skill doesn’t collect, store, or transmit your data — it’s just markdown files. However, your brokerage CSVs are sent to your LLM provider (e.g., Anthropic) as part of the conversation context, the same as anything else you share with Claude. No additional services or APIs are involved beyond what Claude Code already uses.

Limitations

  • US only — Tax rates, account types (401k, IRA, HSA, 529), and fund mappings assume the US tax system.
  • Tax data vintage — Brackets reflect 2025 law. The skill flags when its data may be stale and suggests verifying.
  • Not financial advice — See disclaimer below.
  • Passive/index lean — Default templates use index fund examples, though the skill supports active, passive, and blended approaches.

Disclaimer

This skill is not investment advice. It is provided for informational and educational purposes only. Do not act on any output without consulting a qualified financial advisor. No warranty is provided. Accuracy is not guaranteed. The authors assume no liability for financial decisions made using this tool.

License

MIT — see LICENSE.

View the full README on GitHub

Recommended Tools

Try a different keyword or remove a filter.

Install

npx skillfish add mattstockton/portfolio-analysis
New to MCP? Start with the mcpskill.org guide →