A Model Context Protocol (MCP) server that provides AI assistants with real-time financial market data through Yahoo Finance.
- Stock Data: Current prices, historical data, market metrics
- Options: Options chains with strikes, prices, and volume
- Technical Analysis: Moving averages, RSI, Sharpe ratio
- Comparisons: Compare multiple stocks across metrics
- News: Get recent company news headlines
- Dividends: Get dividend history for a stock
pip install "mcp[cli]" yfinance pandas numpyAdd to Claude Desktop config:
{
"mcpServers": {
"financial-data": {
"command": "python",
"args": ["path/to/server.py"],
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}Here is a detailed list of the tools available through this server.
-
get_stock_price(symbol: str)Get current stock price and basic info.
-
get_historical_data(symbol: str, period: str = "1mo", interval: str = "1d")Get historical price data for a stock.
-
get_options_chain(symbol: str, expiration_date: Optional[str] = None, sort_by: Optional[str] = "volume", limit: int = 20, descending: bool = True)Get options chain data for a stock.
-
get_company_news(symbol: str, limit: int = 5)Get recent company news headlines.
-
get_dividends(symbol: str, period: str = "5y")Get dividend history for a stock.
-
calculate_moving_average(symbol: str, period: int = 20, ma_type: str = "SMA")Calculate moving average for a stock.
-
calculate_rsi(symbol: str, period: int = 14)Calculate Relative Strength Index (RSI) for a stock.
-
calculate_sharpe_ratio(symbol: str, period: str = "1y", risk_free_rate: float = 0.05)Calculate Sharpe Ratio for a stock.
compare_stocks(symbols: List[str], metric: str = "performance")Compare multiple stocks by various metrics.
clear_cache()Clear the cache to force fresh data retrieval.
"What's the current price of AAPL?"
"Show me TSLA's 50-day moving average"
"Compare AAPL, MSFT, and GOOGL performance"
"Get SPY options expiring this Friday"
"What is the latest news for NVDA?"
"Show me the dividend history for KO over the last 10 years."
- Missing modules: Run
pip install yfinance pandas numpy "mcp[cli]" - No data: Verify ticker symbol and internet connection
- Server issues: Check Python path in config, restart Claude Desktop
- Data from Yahoo Finance (15-20 minute delay)
- Automatic caching and rate limiting
- For informational purposes only
MIT License