Yahoo Finance MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Yahoo Finance MCP Server
A Model Context Protocol (MCP) server that provides Yahoo Finance data through FastMCP v2 with HTTP streaming support. This server enables AI assistants to access real-time financial data, historical prices, company information, and market analysis tools. The server is primarily built for ThinkingSand AI agents, but can be deployed locally as well.
Features
Real-time Stock Data: Current prices, historical data, and company information
Financial Statements: Income statements, balance sheets, and cash flow data
Options Trading: Option chains, expiration dates, and pricing data
Market News: Latest financial news and analysis
Institutional Data: Holder information and insider transactions
Analyst Coverage: Recommendations and upgrades/downgrades
HTTP Streaming: Fast, efficient data delivery with FastMCP v2
Related MCP server: Yahoo Finance MCP Server
Available Tools
Tool | Description | Parameters |
| Historical stock price data |
|
| Comprehensive company and stock information |
|
| Latest news articles for a stock |
|
| Dividend and stock split history |
|
| Financial statements (income, balance, cashflow) |
|
| Institutional and insider holder data |
|
| Available options expiration dates |
|
| Option chain data for calls and puts |
|
| Analyst recommendations and upgrades |
|
Installation & Setup
Prerequisites
Python 3.11 or higher
uv package manager
Using uv (Recommended)
# Clone the repository
git clone https://github.com/citizenhicks/yahoo-finance-mcp.git
cd yahoo-finance-mcp
# Install dependencies
uv sync
# Run the server
uv run python server.pyConfiguration
Environment Variables
Create a .env file (copy from .env.example):
# Server configuration
HOST=127.0.0.1 # Server host
PORT=8000 # Server port
LOG_LEVEL=INFO # Logging levelStarting the Server
uv run python server.pyThe server will start on http://127.0.0.1:8000 by default and display:
Starting Yahoo Finance MCP Server locally on 127.0.0.1:8000...Tool Documentation
1. Historical Stock Prices
get_historical_stock_prices(ticker="AAPL", period="1mo", interval="1d")ticker: Stock symbol (e.g., "AAPL", "TSLA", "GOOGL")
period:
1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,maxinterval:
1m,2m,5m,15m,30m,60m,90m,1h,1d,5d,1wk,1mo,3mo
2. Stock Information
get_stock_info(ticker="AAPL")Returns comprehensive company data including current price, market cap, financial metrics, and company details.
3. Financial Statements
get_financial_statement(ticker="AAPL", financial_type="income_stmt")financial_type:
income_stmt,quarterly_income_stmt,balance_sheet,quarterly_balance_sheet,cashflow,quarterly_cashflow
4. Holder Information
get_holder_info(ticker="AAPL", holder_type="institutional_holders")holder_type:
major_holders,institutional_holders,mutualfund_holders,insider_transactions,insider_purchases,insider_roster_holders
5. Options Data
# Get available expiration dates
get_option_expiration_dates(ticker="AAPL")
# Get option chain
get_option_chain(ticker="AAPL", expiration_date="2024-01-19", option_type="calls")option_type:
callsorputs
6. Recommendations
get_recommendations(ticker="AAPL", recommendation_type="recommendations", months_back=12)recommendation_type:
recommendations,upgrades_downgradesmonths_back: Number of months for historical upgrades/downgrades
MCP Client Integration
Claude Desktop
Add to your Claude Desktop MCP settings (~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"yahoo-finance": {
"command": "uv",
"args": ["run", "python", "/path/to/yahoo-finance-mcp/server.py"],
"env": {
"HOST": "127.0.0.1",
"PORT": "8000"
}
}
}
}HTTP Client Integration
Connect directly to the HTTP endpoint:
http://127.0.0.1:8000Python Client Example
import asyncio
from fastmcp import Client
async def example():
client = Client("http://127.0.0.1:8000")
async with client:
# Get Apple stock info
result = await client.call_tool("get_stock_info", {"ticker": "AAPL"})
print(result)
# Get historical prices
result = await client.call_tool("get_historical_stock_prices", {
"ticker": "AAPL",
"period": "1y",
"interval": "1d"
})
print(result)
asyncio.run(example())Project Structure
yahoo-finance-mcp/
├── server.py # Main FastMCP server implementation
├── main.py # Alternative entry point
├── pyproject.toml # Project dependencies and metadata
├── .env.example # Environment configuration template
├── .env # Your local environment variables (gitignored)
└── README.md # This documentationError Handling
The server includes robust error handling:
Invalid tickers: Returns clear error messages for non-existent symbols
Missing data: Graceful handling when specific data isn't available
Network issues: Proper error reporting for Yahoo Finance API issues
Parameter validation: Clear error messages for invalid parameters
Example error response:
"Error: Company ticker INVALID123 not found"Data Sources
All financial data is sourced from Yahoo Finance through the yfinance Python library:
Stock prices: Real-time and historical market data
Company information: Fundamentals, metrics, and company details
Financial statements: Official SEC filings and quarterly reports
Options data: Real-time options chains and pricing
News: Latest financial news and analyst coverage
Institutional data: Holdings and insider transaction data
Production Deployment
Docker (Optional)
FROM python:3.11-slim
WORKDIR /app
COPY . .
RUN pip install uv
RUN uv sync
EXPOSE 8000
CMD ["uv", "run", "python", "server.py"]Environment Variables for Production
HOST=0.0.0.0
PORT=8000
LOG_LEVEL=INFOContributing
Fork the repository
Create a feature branch
Add new tools or improve existing ones
Update tests and documentation
Submit a pull request
License
This project is open source. Yahoo Finance data is subject to Yahoo's terms of service.
Troubleshooting
Common Issues
Server won't start: Check if port 8000 is available
Tool failures: Verify internet connection for Yahoo Finance API
Import errors: Ensure all dependencies are installed with
uv sync
Debug Mode
Set LOG_LEVEL=DEBUG in your .env file for detailed logging.
Support
FastMCP Issues: FastMCP Documentation
Server Issues: Open an issue in this repository
Built with FastMCP v2 and yfinance
This server cannot be deployed
Maintenance
Related MCP Connectors
Yahoo Finance for AI agents: quotes, price history, options with Greeks, financials, news, movers.
Financial data MCP server for Claude, ChatGPT, Cursor and Codex. Real-time stock quotes, financial statements, options flow, SEC filings, insider trades, 13F holdings, macro data and market news from gloom.sh, the open-source Bloomberg Terminal alternative.
Your agent needs company financials it can compute on — statements, ratios, earnings, estimates, filings and insider activity as structured data, not a PDF. **What you can ask for** • "Give me 8 quarters of income statement, balance sheet and cash flow for this ticker." • "What do analysts estimate for next quarter, and how did the last four surprise?" • "Find this exact line item across every filing." • "Who bought or sold as an insider in the last 90 days?" • "Screen for profitable companies under this valuation with growing revenue." **How to use it** Point any MCP client at https://mcp.aisa.one/marketpulse/mcp and sign in with OAuth — there is no key to create or paste. 21 tools: prices and snapshots, income statements, balance sheets, cash-flow statements, financial metrics and snapshots, earnings, analyst estimates, company facts, filings and filing items, line-item search, a screener, insider trades, macro interest rates, news, plus EDINET documents and filing digests for Japanese issuers. **Why this rather than the source** Statements as fields you can compute on, and a screener in the same place. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Read the fundamentals here, then ask the same agent what social is saying about the ticker — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/finance/mcp for equities, crypto and prediction markets in one place.
Research US-listed companies and funds with the StockPortfolio.pro MCP server. Tools cover SEC filing-grounded financials, filing timelines, company comparisons, watchlist screens, fund profiles, and cited filing questions. Filed figures include their fiscal period and EDGAR source URL; missing filing data is returned as null. Public tools work without authentication; optional API-key or OAuth access is supported. US-listed, USD-reporting companies only. Keyless access includes 3 free AI questions per rolling 30-day window. To get more now, choose the Dev plan ($19.99/month, 200 credits) at https://www.stockportfolio.pro/register?plan=dev, then follow https://www.stockportfolio.pro/docs/api-mcp to connect with OAuth or an API key. Or wait for the free allowance to renew.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to retrieve real-time stock data, manage watchlists, and perform comprehensive technical analysis using Yahoo Finance API. Provides 18+ tools for stock price tracking, trend analysis, volatility assessment, and financial indicators through MCP integration.MIT
- AlicenseNot gradedqualityDmaintenanceProvides comprehensive financial data from Yahoo Finance, enabling retrieval of stock prices, company information, financial statements, options data, analyst recommendations, and market news through natural language queries.MIT
- AlicenseNot gradedqualityBmaintenanceProvides real-time stock quotes, historical data, and stock search via Yahoo Finance, enabling AI assistants to access and analyze financial market data.17 npm19MIT
- FlicenseAqualityDmaintenanceProvides financial data from Yahoo Finance via MCP, enabling AI agents to access real-time stock info, historical prices, financial statements, and market analysis.1014-