FinSight Copilot MCP Server
FinSight Copilot: финансовый исследовательский и аналитический RAG-агент
FinSight Copilot — это комплексный AI-ассистент для финансовых исследований, предназначенный для финансовых аналитиков. Построенный на основе Anthropic Claude Messages API, PostgreSQL с pgvector, инструментов реального времени для финансовых рынков и Model Context Protocol (MCP), FinSight Copilot предоставляет анализ отчётов о прибылях с цитированием, детерминированные метрики портфельного риска и возможности финансовых исследований с соблюдением ограничений.
Ключевые возможности и функции
Движок аналитического копилота: Работает на Claude Messages API с XML-структурированными подсказками, рассуждениями Chain-of-Thought (CoT), разбором структурированных выходных данных и обработкой ответов в реальном времени.
Векторный RAG с встроенными цитатами: Обоснованный анализ документов SEC (10-K, раскрытий о прибылях и стенограмм) с использованием
pgvector. Каждое утверждение сопровождается строгими цитатами на документ и раздел.Инструменты реального времени для финансовых рынков: Поиск данных о финансовых рынках в реальном времени (котировки, коэффициенты P/E, объёмы торгов) через внешние API финансовых данных (Yahoo Finance /
yfinance).Детерминированная математика портфеля: Расчёты Value at Risk (VaR) в сочетании с обязательными конституционными оговорками.
Model Context Protocol (MCP): Предоставляет финансовые инструменты в виде стандартизированных MCP-эндпоинтов с использованием
fastmcp.Оптимизация и кэширование: Использует активное кэширование подсказок Anthropic (
cache_control={"type": "ephemeral"}) для снижения накладных расходов на входные токены до ~90% при повторяющихся RAG-запросах.Среда оценки и защиты: Включает автоматизированный набор тестов, проверяющих точность обоснования, защиту от инъекций в подсказки, соблюдение ограничений и отслеживание стоимости выполнения.
Related MCP server: FinImpulse MCP Server
Структура проекта
finsight-copilot/
│
├── data/
│ ├── 10k_reports/ # Seed Data: Raw PDF filings (e.g., Tesla, Nvidia, Amazon 10-Ks)
│ ├── research_notes/ # Supplementary RAG context (e.g., tech_sector_2024.txt)
│ └── transcripts/ # Adversarial testing data (e.g., malicious_hack.txt for prompt injection defenses)
│
├── src/
│ ├── agent.py # Autonomous State Machine loop (e.g., FETCH -> FLAG_RISK -> SUMMARIZE)
│ ├── copilot.py # Main agent logic, tool routing, guardrails, and prompt caching
│ ├── eval.py # Automated evaluation suite testing accuracy, security, and token costs
│ ├── mcp_server.py # Model Context Protocol (MCP) server exposing tools via fastmcp
│ ├── rag.py # Ingestion pipeline, PDF sliding-window chunker, and pgvector engine
│ ├── skills.py # Modular AI skill definitions and instructions used by the agent/server
│ └── tools.py # Live yfinance integration and portfolio risk (VaR) math functions
│
├── .env # Local environment variables (Git ignored)
├── .env.example # Template for required environment variables
├── requirements.txt # Python project dependencies
└── README.md # Project documentationПредварительные требования
Убедитесь, что на вашем компьютере установлено следующее перед настройкой:
Python:
v3.10или вышеDocker Desktop: Требуется для запуска контейнера PostgreSQL + pgvector (или локальный PostgreSQL v15+ с pgvector)
Anthropic API Key: Активный ключ из Anthropic Console
Руководство по установке и настройке
Шаг 1: Клонирование каталога проекта
git clone https://github.com/ayadav6/finsight-copilot.git
cd finsight-copilotШаг 2: Настройка виртуального окружения Python (venv)
Создайте и активируйте изолированное виртуальное окружение Python:
macOS / Linux:
python3 -m venv venv
source venv/bin/activateWindows (командная строка):
python -m venv venv
venv\Scripts\activate.batWindows (PowerShell):
python -m venv venv
.\venv\Scripts\Activate.ps1Шаг 3: Установка зависимостей проекта
pip install --upgrade pip
pip install -r requirements.txt(Примечание: fastmcp включён в requirements.txt для функциональности MCP-сервера).
Шаг 4: Настройка переменных окружения
Создайте файл .env в корневом каталоге:
touch .envДобавьте свои учётные данные API и параметры подключения к базе данных в .env:
# Anthropic API Configuration
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# PostgreSQL database connection string (Default for local Docker pgvector)
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/postgresШаг 5: Запуск и настройка векторной базы данных PostgreSQL
Запустите контейнеризированный экземпляр PostgreSQL с включённым pgvector с помощью Docker:
docker run --name pgvector-finsight \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=postgres \
-p 5432:5432 \
-d pgvector/pgvector:pg16Руководство по выполнению
Шаг 1: Загрузка данных и приём финансовых отчётов
Поместите все целевые PDF-файлы SEC Form 10-K (например, Tesla_2025_10K.pdf, Nvidia_2025_10K.pdf, Amazon_2025_10K.pdf) в каталог data/10k_reports/.
Запустите скрипт приёма документов RAG для разбора отчётов, разбиения текста на фрагменты с помощью скользящих контекстных окон, вычисления эмбеддингов и заполнения PostgreSQL:
python src/rag.py(Примечание: Приём многостраничных PDF-файлов локально на CPU может занять от 5 до 15 минут. Скрипт содержит автоматическую проверку количества документов, чтобы пропустить повторный приём при последующих запусках).
Шаг 2: Запуск FinSight Copilot
После заполнения векторной базы данных финансовыми отчётами запустите основное интерактивное приложение копилота:
python src/copilot.pyПоддерживаемые операции в copilot.py:
Поиск данных о рынке в реальном времени: Получает текущие цены акций, объёмы и коэффициенты P/E (например, «Какова текущая цена акций NVDA и коэффициент P/E?»).
Расчёты портфельного риска: Вычисляет детерминированные метрики Value at Risk (VaR) для портфелей пользователей с добавлением обязательных оговорок.
RAG на основе документов: Запросы о исторических финансовых данных (например, «Обобщите сделки Tesla со связанными сторонами с xAI в 2025 и 2026 годах») с цитированием документов.
Шаг 3: Запуск автоматизированной среды оценки
Для запуска тестов на соответствие требованиям, проверки обоснованных цитат, проверки ограничений и создания отчёта о микро-затратах на токены выполнения:
python src/eval.pyШаг 4: Запуск MCP-сервера
Инструменты FinSight упакованы в MCP-сервер. Запустите инспектор MCP-сервера с помощью:
fastmcp dev inspector src/mcp_server.pyЭта команда запускает локальный веб-сервер (обычно http://localhost:5173), где вы можете визуально просматривать, подключаться и тестировать инструменты get_stock_quote и compute_portfolio_risk непосредственно через веб-интерфейс.
Инженерные и архитектурные особенности
Особенность | Описание |
Кэширование подсказок | Использует |
Оконное контекстное разбиение | Перекрывающееся скользящее окно разбиения текста (1500 символов, перекрытие 300 символов) предотвращает разрыв финансовых показателей, таблиц или ключевых предложений на границах. |
Конституционные ограничения | Системные инструкции обеспечивают строгую политику неперсонализированных советов и требуют обязательных оговорок об ответственности при выводе портфельного риска. |
This server cannot be deployed
Maintenance
Related MCP Connectors
Financial Datasets AI MCP — wraps financialdatasets.ai
Financial data MCP server for Claude, ChatGPT, Cursor and Codex. Real-time stock quotes, financial statements, options flow, SEC filings, insider trades, 13F holdings, macro data and market news from gloom.sh, the open-source Bloomberg Terminal alternative.
Unlock the power of real-time financial data with our Finance MCP. Easily retrieve the latest
SmartMoney77 MCP v0.6.0 — 14 public tools that turn financial questions into exact numbers and citable links. New: historical_investment_return and compare_investments, which compute "what if I had invested" results from real yearly price data. Also compound interest, FIRE number, credit-card payoff, emergency fund, inflation, latte factor, investment fees, cost of waiting, plus discovery/deep-link/share-pack tools for a catalog of calculators in 6 languages (he/en/ar/es/pt/in). Public, no login. Endpoint: https://smartmoney77.com/mcp
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides real-time stock analysis tools including price lookup, comprehensive investment scoring, and company-to-ticker conversion through a MCP interface.1-
- AlicenseAqualityDmaintenanceProvides structured financial market data (stocks, ETFs, mutual funds, fundamentals, market indicators) to AI systems via MCP, enabling natural language access to financial datasets with both hosted and local deployment options.3130 npmISC
- FlicenseNot gradedqualityDmaintenanceProvides real-time financial data including stock quotes, news, and market movers through a secure FastMCP gateway, enabling conversational finance queries.17-
- AlicenseAqualityBmaintenanceProvides live stock data and market news for financial analysis via any MCP-compatible AI app.2MIT