Triggers on stock/market analysis, investment research, earnings, valuations, sentiment queries.
Add this skill
npx mdskills install ferdousbhai/investment-analysisComprehensive financial analysis tools with good guidelines but minimal usage examples
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:
The server integrates with yfinance for market data and automatically optimizes data volume for better performance.
Robust Caching & Error Handling Strategy:
yfinance[nospam] → Built-in smart caching + rate limiting for Yahoo Finance APIhishel → HTTP response caching for external APIs (CNN, crypto, earnings data)tenacity → Retry logic with exponential backoff for transient failuresThis multi-layered approach ensures reliable data delivery while respecting API rate limits and minimizing redundant requests.
curl -LsSf https://astral.sh/uv/install.sh | sh
# Core features only
uvx investor-agent
# With technical indicators (requires TA-Lib)
uvx "investor-agent[ta]"
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 dataget_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/downgradesget_options(ticker_symbol, num_options=10, start_date=None, end_date=None, strike_lower=None, strike_upper=None, option_type=None) - 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 volumeget_financial_statements(ticker, statement_types=["income"], frequency="quarterly", max_periods=8) - Financial statements with parallel fetching support. Returns dict with statement type as keyget_institutional_holders(ticker, top_n=20) - Major institutional and mutual fund holders dataget_earnings_history(ticker, max_entries=8) - Historical earnings data with configurable entry limitsget_insider_trades(ticker, max_trades=20) - Recent insider trading activity with configurable trade limitsget_nasdaq_earnings_calendar(date=None, limit=100) - Upcoming earnings announcements using Nasdaq API (YYYY-MM-DD format, defaults to today).get_cnn_fear_greed_index(indicators=None) - CNN Fear & Greed Index with 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_demandget_crypto_fear_greed_index() - Current Crypto Fear & Greed Index with value, classification, and timestampget_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.calculate_technical_indicator(ticker, indicator, period="1y", timeperiod=14, fastperiod=12, slowperiod=26, signalperiod=9, nbdev=2, matype=0, num_results=100) - Calculate technical indicators (SMA, EMA, RSI, MACD, BBANDS) with configurable parameters and result limiting. Returns dictionary with price_data and indicator_data as CSV strings. matype values: 0=SMA, 1=EMA, 2=WMA, 3=DEMA, 4=TEMA, 5=TRIMA, 6=KAMA, 7=MAMA, 8=T3. Requires TA-Lib library.Add to your claude_desktop_config.json:
{
"mcpServers": {
"investor": {
"command": "uvx",
"args": ["investor-agent"]
}
}
}
For local development and testing, use the included chat.py script:
# Install dev dependencies
uv sync --group dev
# Set up your API key
export OPENAI_API_KEY="your-api-key" # or ANTHROPIC_API_KEY, GEMINI_API_KEY, etc.
# Optional: Set custom model (defaults to openai:gpt-5-mini)
export MODEL_IDENTIFIER="your-preferred-model"
# Run the chat interface
python chat.py
For available model providers and identifiers, see the pydantic-ai documentation.
npx @modelcontextprotocol/inspector uvx investor-agent
MIT License. See LICENSE file for details.
Install via CLI
npx mdskills install ferdousbhai/investment-analysisinvestor-agent: A Financial Analysis MCP Server is a free, open-source AI agent skill. Triggers on stock/market analysis, investment research, earnings, valuations, sentiment queries.
Install investor-agent: A Financial Analysis MCP Server with a single command:
npx mdskills install ferdousbhai/investment-analysisThis downloads the skill files into your project and your AI agent picks them up automatically.
investor-agent: A Financial Analysis MCP Server works with Claude Code, Claude Desktop, Cursor, Vscode Copilot, Windsurf, Continue Dev, Codex, Gemini Cli, Amp, Roo Code, Goose, Opencode, Trae, Qodo, Command Code. Skills use the open SKILL.md format which is compatible with any AI coding agent that reads markdown instructions.