Multi-Agent Financial Analytics Copilot (fin-copilot-mcp)
An enterprise-grade, deterministic multi-agent financial analytics engine built on Anthropic's Model Context Protocol (MCP) and Claude 3.5 Sonnet. The system processes complex natural language financial queries, translates them into dialect-validated PostgreSQL / DuckDB SQL, pulls live telemetry/market data, and executes a self-healing verification loop before presenting synthesized results.
๐ Architecture & Agent Topology
The system uses specialized, domain-isolated agents decoupled from underlying tools using MCP JSON-RPC protocol standards.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ User Query Interface / API โ
โโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Orchestrator Agent (Claude 3.5 Sonnet) โ
โโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ (MCP Protocol) โ (MCP Protocol) โ (MCP Protocol)
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ
โ mcp-server-sql โ โmcp-server-stripe โ โmcp-server-market โ
โ (PostgreSQL/Duck)โ โ (Billing Specs) โ โ (YFinance API) โ
โโโโโโโโโโฌโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ
โ
โ (Execution Error)
โผ
โโโโโโโโโโโโโโโโโโโโ
โ Self-Healing โ โโ (Retry Stack Trace) โโโบ [ Orchestrator Agent ]
โ Validation Loop โ
โโโโโโโโโโโโโโโโโโโโ
๐ Key Features
- MCP-Native Architecture: Fully decoupled tool servers using standard JSON-RPC over
stdio/ Server-Sent Events (SSE). - Self-Healing Text-to-SQL Loop: Runs deterministic dry-run verification (
EXPLAIN) before execution. Automatically captures AST/syntax errors and feeds stack traces back to Claude for up to 3 repair retries. - Double-Entry Validation: Micro-agent verifying mathematical consistency, row cross-totals, and currency alignment prior to output synthesis.
- Strict Type & Schema Safety: Runtime validation via Pydantic v2 and static type checking with MyPy.
- Cross-Platform Developer Experience: Powers setup, linting, formatting, and testing on Windows (via PowerShell /
py) and Linux/macOS seamlessly.
๐ Tech Stack
| Component | Technology | Purpose |
|---|---|---|
| LLM / Reasoning | Claude 3.5 Sonnet (anthropic) |
Intent decomposition, tool orchestration, and SQL generation |
| Protocol Layer | FastMCP / Model Context Protocol | Standardized tool/resource encapsulation over JSON-RPC |
| Analytical Engine | PostgreSQL / DuckDB / SQLite | OLAP/OLTP query execution, AST validation, and schema inspection |
| Market Data | Yahoo Finance (yfinance) |
Macroeconomic benchmarks, equity quotes, and volume metrics |
| Configuration | pydantic-settings |
Type-safe environment management and secret handling |
| Developer Tooling | uv / pip, ruff, mypy, pytest |
Hermetic builds, linting, typing, and testing |
๐ Repository Structure
fin-copilot-mcp/
โโโ .github/
โ โโโ workflows/
โ โโโ ci.yml # CI pipeline (lint, type-check, unit & integration tests)
โโโ config/
โ โโโ mcp_servers.json # System tool topologies and connection mappings
โโโ docker/
โ โโโ Dockerfile.orchestrator # Production container for agent runtime
โ โโโ Dockerfile.mcp-server # Container specification for standalone MCP servers
โโโ src/
โ โโโ fin_copilot/
โ โโโ core/ # Base configuration, logging, exceptions
โ โโโ mcp_servers/ # Standalone FastMCP server modules (SQL, Stripe, Market)
โ โโโ agents/ # Orchestrator agent logic, prompts, and healing loops
โ โโโ utils/ # Telemetry and formatting helpers
โโโ tests/
โ โโโ unit/ # FastMCP tool & resource unit tests
โ โโโ integration/ # Multi-agent self-healing loop tests
โ โโโ evals/ # Benchmarks for Text-to-SQL translation accuracy
โโโ scripts/
โ โโโ setup.ps1 # Windows PowerShell setup script
โ โโโ setup.sh # Linux / macOS bash setup script
โโโ pyproject.toml # Packaging, dependencies, and linter rules
โโโ .gitignore # Industry-standard Python ignore rules
โโโ .env.example # Environment variable template
โโโ README.md
๐ Quickstart
Prerequisites
- Python
>= 3.11 - uv or standard
pip - Anthropic API Key (
ANTHROPIC_API_KEY)
Installation & Setup
On Windows (PowerShell):
# 1. Clone the repository
git clone https://github.com/your-username/fin-copilot-mcp.git
cd fin-copilot-mcp
# 2. Run PowerShell Setup Script
.\scripts\setup.ps1
# 3. Configure environment variables
Copy-Item .env.example .env
On Linux / macOS (Bash):
# 1. Clone the repository
git clone https://github.com/your-username/fin-copilot-mcp.git
cd fin-copilot-mcp
# 2. Run Setup Script
chmod +x ./scripts/setup.sh
./scripts/setup.sh
# 3. Configure environment variables
cp .env.example .env
๐ก Security & Guardrails
- Read-Only Database Connections: SQL MCP server limits execution strictly to SELECT statements and dialect dry-runs.
- Token Sandboxing: API keys are isolated within environment settings classes and never exposed across tool execution boundaries.
- Data Masking: Structural masking applied to sensitive financial attributes prior to model context generation.
๐ License
Distributed under the MIT License. See LICENSE for details.