Financial MCP Server

by osamadev
Integrations
  • Uses .env files for storing and managing sensitive configuration like API keys and tokens for various external services.

  • Uses local Ollama models (specifically Mistral) to generate detailed, sentiment-tagged summaries of financial news articles for contextual financial insights.

  • Sends formatted financial alerts and summaries to a configured Telegram chat, including price threshold notifications, trading opportunities, and system errors.

Финансовый MCP-сервер

Пользовательский сервер Model Context Protocol (MCP) для расширенного финансового анализа, мониторинга акций и рыночной разведки в реальном времени. Этот сервер предоставляет набор инструментов и конечных точек API для управления портфелем, рыночных сводок, оповещений о акциях и контекстных финансовых идей, разработанных для бесшовной интеграции с Claude Desktop и другими MCP-совместимыми клиентами.


Основные характеристики

  • Мониторинг цен акций в режиме реального времени : отслеживайте и оповещайте о движении цен для определенных пользователем акций и пороговых значений.
  • Управление портфелем : добавляйте, удаляйте и просматривайте отслеживаемые акции в постоянном портфеле.
  • Сводки по рынку : получайте актуальные данные по мировому рынку, включая индексы, лидеры роста/падения и заголовки новостей.
  • Контекстная финансовая аналитика : анализируйте запросы пользователей, извлекайте финансовые данные, извлекайте и обобщайте соответствующие новости, а также генерируйте полезные подсказки.
  • Автоматические оповещения : получайте уведомления Telegram о ценовых порогах, торговых возможностях и системных ошибках.
  • Настраиваемая конфигурация : конфигурация секторов и акций на основе JSON для гибкого оповещения.
  • Надежное ведение журналов и обработка ошибок : подробные журналы и сообщения об ошибках для прозрачности и устранения неполадок.

Обзор системы

Основные конечные точки и инструменты

  • финансовый_контекст(запрос: str)
    • Извлекает тикеры и ключевые слова из пользовательского запроса, выбирает и обобщает соответствующие новости, а также возвращает структурированный контекст и подсказку для последующего анализа.
  • market_summary()
    • Возвращает актуальную сводку мировых рынков, включая индексы, лидеры движения и заголовки новостей.
  • получить_портфолио()
    • Возвращает текущий список отслеживаемых акций в портфеле пользователя.
  • add_stock(тикер: str) / remove_stock(тикер: str)
    • Добавить или удалить акцию из портфеля с аннулированием кэша и проверкой.
  • portfolio_alerts(случайная_строка: str)
    • Возвращает все сработавшие оповещения для портфеля или для определенного тикера, если он указан.
  • check_stock_alerts(тикер: str) / single_stock_alert(тикер: str)
    • Возвращает оповещения для определенных акций с подробной обработкой ошибок.

Автоматическое оповещение

  • Интеграция с Telegram : отправляет форматированные оповещения и сводки в настроенный чат Telegram.
  • Торговые возможности : обнаруживает и уведомляет о действенных торговых сигналах.

Контекстное обобщение

  • News Summarizer : использует местную степень магистра права (Ollama/Mistral) для создания подробных, с тегами настроений, резюме статей финансовых новостей.
  • Конструктор подсказок : создает подсказку, учитывающую потребности рынка, для использования последующими магистрами права или помощниками.

Структура файла

config/ alerts_config.json # Main alert configuration (sector/ticker/thresholds) tech_alerts_config.json # Tech sector-specific alerts services/ alerts.py # Core alert logic tech_alerts.py # Tech sector alert logic telegram_alerts.py # Telegram integration market_summary.py # Market data and news summarizer.py # News summarization (LLM) fetcher.py # Web data fetching context_builder.py # Prompt/context construction intent_parser.py # Financial entity extraction portfolio.py # Portfolio management server.py # MCP server entry point and API definitions requirements.txt # Python dependencies

Конфигурация и настройка

Конфигурация оповещений ( config/alerts_config.json )

  • Организуйте акции по секторам с настраиваемыми верхними/нижними ценовыми порогами и описаниями.
  • Пример структуры:
{ "Tech Giants": { "AAPL": {"above": 200, "below": 180, "description": "Apple Inc."} }, "Financial": { "JPM": {"above": 160, "below": 140, "description": "JPMorgan Chase"} } }

Переменные среды

Установите их в файле .env или в системной среде:

TELEGRAM_BOT_TOKEN=your_bot_token TELEGRAM_CHAT_ID=your_chat_id SERPAPI_API_KEY=your_serpapi_key

Установка и запуск с рабочего стола Claude

Предпосылки

  • Питон 3.7+
  • Claude Desktop (или любой MCP-совместимый клиент)
  • Учетные данные бота Telegram (для оповещения)
  • Подключение к Интернету (для рыночных/новостных данных)

Пошаговое руководство

  1. Клонировать репозиторий
    git clone <this-repo-url> cd Finance_MCP_Server
  2. Создать и активировать виртуальную среду
    python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. Установить зависимости
    pip install -r requirements.txt
  4. Настроить переменные среды
    • Создайте файл .env в корне проекта с вашими ключами API и токенами:
      TELEGRAM_BOT_TOKEN=your_bot_token TELEGRAM_CHAT_ID=your_chat_id SERPAPI_API_KEY=your_serpapi_key
  5. Изменить конфигурации оповещений
    • Измените config/alerts_config.json и config/tech_alerts_config.json чтобы задать акции, сектора и пороговые значения.
  6. Установите MCP Server с помощью CLI
    • Используйте MCP CLI для установки и регистрации сервера для Claude Desktop:
      mcp install server.py --name "Financial MCP Server"
    • Это зарегистрирует сервер как пользовательский инструмент MCP, что сделает его доступным для обнаружения Claude Desktop и другими клиентами MCP.
  7. Запустите MCP Server через MCP CLI
    • Запустите сервер с помощью MCP CLI:
      mcp run server.py
    • Сервер запустится и будет прослушивать запросы MCP через stdio.
  8. Подключайтесь с рабочего стола Claude
    • В Claude Desktop добавьте новое пользовательское подключение к серверу MCP.
    • Установите исполняемый файл/команду на mcp run server.py (или выберите зарегистрированный «Financial MCP Server» из списка MCP CLI).
    • Claude Desktop будет взаимодействовать с сервером с использованием протокола MCP, что позволит использовать все описанные инструменты и конечные точки.

Пример: конфигурация сервера Claude Desktop MCP

После установки и регистрации Financial MCP Server вы можете добавить его в конфигурацию Claude Desktop. Вот пример фрагмента claude_desktop_config.json :

{ "mcpServers": { "Financial-MCP-Server": { "command": "uv", "args": [ "run", "--with", "mcp[cli]", "mcp", "run", "server.py" ], "env": { "SERPAPI_API_KEY": "", "TELEGRAM_BOT_TOKEN": "", "TELEGRAM_USER_ID": "", "OPENAI_API_KEY": "", "ALPHA_VANTAGE_API_KEY": "" } } } }
  • При необходимости обновите раздел env , указав фактические ключи API и токены.
  • Такая конфигурация гарантирует, что Claude Desktop сможет запускаться и взаимодействовать с вашим сервером Financial MCP, используя правильную среду и аргументы командной строки.

Использование инструментов в Claude Desktop

После установки и подключения вашего пользовательского сервера Financial MCP все доступные инструменты автоматически появятся в меню инструментов Claude Desktop. Вы можете включать или отключать каждый инструмент по отдельности, что упрощает доступ к таким функциям, как анализ финансового контекста, сводки рынка, управление портфелем и оповещения о состоянии акций непосредственно из интерфейса Claude.

Ниже представлен снимок экрана, показывающий, как инструменты с вашего сервера MCP будут перечислены и переключены в Claude Desktop:

  • Каждый инструмент (например, financial_context , market_summary , add_stock и т. д.) можно включить или отключить по мере необходимости.
  • Эта бесшовная интеграция позволяет вам взаимодействовать с вашим сервером финансового анализа, используя естественный язык и рабочие процессы на основе инструментов в Claude Desktop.

Примеры использования

  • Получить сводку рынка : используйте инструмент market_summary для получения текущих индексов, движущих факторов и новостей.
  • Управление портфелем : используйте add_stock , remove_stock и get_portfolio для обновления и просмотра отслеживаемых акций.
  • Получайте оповещения : настройте пороговые значения и получайте уведомления Telegram об изменениях цен и торговых возможностях.
  • Контекстный анализ : используйте financial_context для анализа запроса, извлечения тикеров и получения сводных новостей и подсказок с информацией о рынке.

Устранение неполадок и журналы

  • Все журналы записываются в файл financial_mcp.log в корне проекта.
  • Для отладки проверьте файл журнала и убедитесь, что переменные среды и файлы конфигурации верны.
  • Если у вас возникли проблемы с Telegram или получением новостей, проверьте ключи API и подключение к интернету.

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server providing real-time stock data and options analysis through Yahoo Finance, enabling LLMs to access market data, analyze stocks, and evaluate options strategies.
    Last updated -
    4
    Python
    MIT License
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol server providing tools for querying A-share stock market data, including historical prices, financial reports, market indices, and macroeconomic indicators.
    Last updated -
    28
    178
    Python
    MIT License
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server focused on China's A-share stock market that provides data on stocks, financials, market indices, and macroeconomic indicators.
    Last updated -
    178
    Python
    MIT License
  • -
    security
    -
    license
    -
    quality
    A Model Context Protocol server that provides tools for interacting with Yahoo Finance, allowing users to retrieve stock prices, company information, and perform financial data comparisons.
    Last updated -
    Python
    MIT License

View all related MCP servers

ID: 6j89keftmu