MCP Server / yahoo finance
yahoo finance
This is a Model Context Protocol (MCP) server that provides comprehensive financial data from Yahoo Finance. It allows you to retrieve detailed information about stocks, including historical prices, company information, financial statements, options data, and market news.
Transport
Tools (9)
get_historical_stock_prices
Get historical OHLCV data for a stock with customizable period and interval
get_stock_info
Get comprehensive stock data including price, metrics, and company details
get_yahoo_finance_news
Get latest news articles for a stock
get_stock_actions
Get stock dividends and splits history
get_financial_statement
Get income statement, balance sheet, or cash flow statement (annual/quarterly)
get_holder_info
Get major holders, institutional holders, mutual funds, or insider transactions
get_option_expiration_dates
Get available options expiration dates
get_option_chain
Get options chain for a specific expiration date and type (calls/puts)
get_recommendations
Get analyst recommendations or upgrades/downgrades history
Dokumentation
Yahoo Finance MCP Server
This is a Model Context Protocol (MCP) server that provides comprehensive financial data from Yahoo Finance. It allows you to retrieve detailed information about stocks, including historical prices, company information, financial statements, options data, and market news.
Demo
MCP Tools
The server exposes the following tools through the Model Context Protocol:
Stock Information
| Tool | Description |
|------|-------------|
| get_historical_stock_prices | Get historical OHLCV data for a stock with customizable period and interval |
| get_stock_info | Get comprehensive stock data including price, metrics, and company details |
| get_yahoo_finance_news | Get latest news articles for a stock |
| get_stock_actions | Get stock dividends and splits history |
Financial Statements
| Tool | Description |
|------|-------------|
| get_financial_statement | Get income statement, balance sheet, or cash flow statement (annual/quarterly) |
| get_holder_info | Get major holders, institutional holders, mutual funds, or insider transactions |
Options Data
| Tool | Description |
|------|-------------|
| get_option_expiration_dates | Get available options expiration dates |
| get_option_chain | Get options chain for a specific expiration date and type (calls/puts) |
Analyst Information
| Tool | Description |
|------|-------------|
| get_recommendations | Get analyst recommendations or upgrades/downgrades history |
Real-World Use Cases
With this MCP server, you can use Claude to:
Stock Analysis
- Price Analysis: "Show me the historical stock prices for AAPL over the last 6 months with daily intervals."
- Financial Health: "Get the quarterly balance sheet for Microsoft."
- Performance Metrics: "What are the key financial metrics for Tesla from the stock info?"
- Trend Analysis: "Compare the quarterly income statements of Amazon and Google."
- Cash Flow Analysis: "Show me the annual cash flow statement for NVIDIA."
Market Research
- News Analysis: "Get the latest news articles about Meta Platforms."
- Institutional Activity: "Show me the institutional holders of Apple stock."
- Insider Trading: "What are the recent insider transactions for Tesla?"
- Options Analysis: "Get the options chain for SPY with expiration date 2024-06-21 for calls."
- Analyst Coverage: "What are the analyst recommendations for Amazon over the last 3 months?"
Investment Research
- "Create a comprehensive analysis of Microsoft's financial health using their latest quarterly financial statements."
- "Compare the dividend history and stock splits of Coca-Cola and PepsiCo."
- "Analyze the institutional ownership changes in Tesla over the past year."
- "Generate a report on the options market activity for Apple stock with expiration in 30 days."
- "Summarize the latest analyst upgrades and downgrades in the tech sector over the last 6 months."
Requirements
- Python 3.11 or higher
- Dependencies as listed in
pyproject.toml, including:- mcp
- yfinance
- pandas
- pydantic
- and other packages for data processing
Setup
Recommended: run with uvx
Run the server directly from the repository without creating a local virtual environment:
uvx --from git+https://github.com/Alex2Yang97/yahoo-finance-mcp yahoo-finance-mcp
Local development
-
Clone this repository:
git clone https://github.com/Alex2Yang97/yahoo-finance-mcp.git cd yahoo-finance-mcp -
Create and activate a virtual environment and install dependencies:
uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate uv pip install -e .
Usage
Quick Start
Run the packaged entrypoint with:
uvx --from git+https://github.com/Alex2Yang97/yahoo-finance-mcp yahoo-finance-mcp
For local changes in this checkout, use:
uvx --from . yahoo-finance-mcp
Development Mode
If you are working inside a local clone and want to run the source tree directly:
uv run server.py
Integration with Claude for Desktop
To integrate this server with Claude for Desktop:
-
Install Claude for Desktop to your local machine.
-
Install VS Code to your local machine. Then run the following command to open the
claude_desktop_config.jsonfile:- MacOS:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json - Windows:
code $env:AppData\Claude\claude_desktop_config.json
- MacOS:
-
Edit the Claude for Desktop config file, located at:
-
macOS:
{ "mcpServers": { "yfinance": { "command": "uvx", "args": [ "--from", "git+https://github.com/Alex2Yang97/yahoo-finance-mcp", "yahoo-finance-mcp" ] } } } -
Windows:
{ "mcpServers": { "yfinance": { "command": "uvx", "args": [ "--from", "git+https://github.com/Alex2Yang97/yahoo-finance-mcp", "yahoo-finance-mcp" ] } } } -
Note: You may need to put the full path to the uv executable in the command field. You can get this by running
which uvon MacOS/Linux orwhere uvon Windows.
-
-
Restart Claude for Desktop
License
MIT