Stores structured metadata from parsed investment statements in a SQLite database, enabling programmatic queries for holdings, transactions, account balances, and other financial data.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Investment Statement MCP ServerWhat were my total dividends last quarter?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Investment Statement MCP Server
Parse and query investment statements from multiple institutions using natural language.
Features
Multi-Institution Support: Questrade, Interactive Brokers, Scotia iTRADE, TD Direct Investing
Hybrid Storage: SQLite for structured queries + LanceDB for semantic search
Natural Language Queries: Ask questions like "What were my dividends in Q3?" or "Show my SPY holdings"
Structured Tools: Programmatic access via MCP tools
Portfolio Analytics: Risk metrics, performance tracking, benchmark comparisons
Monte Carlo Simulation: 5-year portfolio projections with percentile analysis and visualizations
Archive Management: Keeps original PDFs/CSVs and parsed JSON for reference
Installation
Configuration
The server is configured via .mcp.json. Key environment variables:
LANCEDB_PATH: Vector database location (default:./data/lancedb)SQLITE_PATH: SQLite database location (default:./data/statements.db)PDF_ARCHIVE_PATH: Original PDF storage (default:./data/pdfs)JSON_ARCHIVE_PATH: Parsed JSON storage (default:./data/json)MODEL_NAME: Embedding model (default:all-MiniLM-L6-v2)
Usage
Starting the Server
Indexing Statements
Querying Data
Natural Language Search:
Structured Queries:
Monte Carlo Simulation:
See MONTE_CARLO.md for detailed documentation.
Resources
statements://catalog- List all indexed statementsstatements://{statement_id}- Get specific statementstatements://{statement_id}/summary- Account summarystatements://{statement_id}/holdings- Holdings/positionsstatements://{statement_id}/transactions- Transaction history
Supported Statements
Questrade
✅ Account Summary (balances, FX rates, TFSA info)
✅ Holdings/Positions (securities with cost basis, P&L)
✅ Transactions (trades, dividends, deposits, withdrawals)
Interactive Brokers (Coming Soon)
⏳ Planned
Scotia (Coming Soon)
⏳ Planned
Development
Architecture
FastMCP 2.0: MCP server framework
pymupdf4llm: PDF parsing optimized for LLMs
LanceDB: Vector database for semantic search
SQLite: Structured metadata storage
sentence-transformers: Embedding generation
License
MIT