Skip to main content

A Model Context Protocol server for an investor agent

Project description

MseeP.ai Security Assessment Badge

investor-agent: A Financial Analysis MCP Server

Overview

The investor-agent is a Model Context Protocol (MCP) server that provides comprehensive financial insights and analysis to Large Language Models. It leverages real-time market data, fundamental and technical analysis to deliver:

  • Market Movers: Top gainers, losers, and most active stocks with support for different market sessions
  • Ticker Analysis: Company overview, news, metrics, analyst recommendations, and upgrades/downgrades
  • Options Data: Filtered options chains with customizable parameters
  • Historical Data: Price trends and earnings history
  • Financial Statements: Income, balance sheet, and cash flow statements
  • Ownership Analysis: Institutional holders and insider trading activity
  • Earnings Calendar: Upcoming earnings announcements with date filtering (optional)
  • Market Sentiment: CNN Fear & Greed Index, Crypto Fear & Greed Index, and Google Trends sentiment analysis
  • Technical Analysis: SMA, EMA, RSI, MACD, BBANDS indicators (optional)

The server integrates with yfinance for market data and automatically optimizes data volume for better performance.

Prerequisites

  • Python: 3.12 or higher
  • Package Manager: uv. Install if needed:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    

Optional Dependencies

  • TA-Lib C Library: Required for technical indicators. Follow official installation instructions.
  • Playwright: Required for earnings calendar functionality. Installed automatically with the playwright optional dependency.

Installation

Quick Start

# Core features only
uvx investor-agent

# With technical indicators (requires TA-Lib)
uvx "investor-agent[ta]"

# With earnings calendar (requires Playwright)
uvx "investor-agent[playwright]"
# Note: After first installation, run:
#   playwright install-deps chromium
#   playwright install chromium

# With both technical indicators and earnings calendar
uvx "investor-agent[ta,playwright]"
# Note: After first installation, run:
#   playwright install-deps chromium
#   playwright install chromium

Tools

Market Data

  • get_market_movers(category="most-active", count=25, market_session="regular") - Market movers data including top gainers, losers, or most active stocks. Supports different market sessions (regular/pre-market/after-hours) for most-active category. Returns up to 100 stocks with cleaned percentage changes, volume, and market cap data
  • get_ticker_data(ticker, max_news=5, max_recommendations=5, max_upgrades=5) - Comprehensive ticker report with essential field filtering and configurable limits for news, analyst recommendations, and upgrades/downgrades
  • get_options(ticker_symbol, num_options=10, start_date, end_date, strike_lower, strike_upper, option_type) - Options data with advanced filtering by date range (YYYY-MM-DD), strike price bounds, and option type (C=calls, P=puts)
  • get_price_history(ticker, period="1mo") - Historical OHLCV data with intelligent interval selection: daily intervals for periods ≤1y, monthly intervals for periods ≥2y to optimize data volume
  • get_financial_statements(ticker, statement_type="income", frequency="quarterly", max_periods=8) - Financial statements (income/balance/cash) with period limiting for context optimization
  • get_institutional_holders(ticker, top_n=20) - Major institutional and mutual fund holders data
  • get_earnings_history(ticker, max_entries=8) - Historical earnings data with configurable entry limits
  • get_insider_trades(ticker, max_trades=20) - Recent insider trading activity with configurable trade limits
  • get_earnings_calendar(start=None, end=None, limit=100) - Upcoming earnings announcements with optional date filtering (YYYY-MM-DD format). Requires Playwright dependency.

Market Sentiment

  • get_cnn_fear_greed_index(days=0, indicators=None) - CNN Fear & Greed Index with support for up to 30 days of historical data and selective indicator filtering. Available indicators: fear_and_greed, fear_and_greed_historical, put_call_options, market_volatility_vix, market_volatility_vix_50, junk_bond_demand, safe_haven_demand
  • get_crypto_fear_greed_index(days=7) - Crypto Fear & Greed Index with configurable historical data period
  • get_google_trends(keywords, period_days=7) - Google Trends relative search interest for market-related keywords. Requires a list of keywords to track (e.g., ["stock market crash", "bull market", "recession", "inflation"]). Returns relative search interest scores that can be used as sentiment indicators.

Technical Analysis

  • calculate_technical_indicator(ticker, indicator, period="1y", timeperiod=14, ...) - Calculate technical indicators (SMA, EMA, RSI, MACD, BBANDS) with configurable parameters and result limiting. Returns time-aligned data with price history and indicator values. Requires TA-Lib library.

Usage with MCP Clients

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "investor": {
      "command": "uvx",
      "args": ["investor-agent"]
    }
  }
}

Debugging

npx @modelcontextprotocol/inspector uvx investor-agent

Log locations:

  • macOS: ~/Library/Logs/Claude/mcp*.log
  • Windows: %APPDATA%\Claude\logs\mcp*.log

License

MIT License. See LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

investor_agent-1.2.1.tar.gz (71.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

investor_agent-1.2.1-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file investor_agent-1.2.1.tar.gz.

File metadata

  • Download URL: investor_agent-1.2.1.tar.gz
  • Upload date:
  • Size: 71.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for investor_agent-1.2.1.tar.gz
Algorithm Hash digest
SHA256 cdeb343bc2205e650bbbf848733eb753bd9bffca9bab0808f35cfe26bae356f8
MD5 d4bfa536d19004ad5903cda0a24a777b
BLAKE2b-256 bd14a6e9dee94c7db2879bc46f75103b57b29d70c44e91f7e99eacd788f8d32c

See more details on using hashes here.

File details

Details for the file investor_agent-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: investor_agent-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for investor_agent-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 01dc5a406cfe775205aec1fbdec565dcb2288e0f1ef66a3435f33d7d11c3785a
MD5 19d5a191ca5f57139c2fdc52168809cb
BLAKE2b-256 1cae48b49a846bc53e99b853d46bd6512ba0bb37112a6916a1a4b5fb4bc62ac6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page