This project sets up a stock Price server powered by the Yahoo Finance (YFinance) API and built for seamless integration with MCP (Model Control Protocol).
It allows AI agents or clients to:
Before diving into the full-blown stock server, I recommend starting with this simple crypto tracker built with Python + MCP π
π GitHub Repo: https://github.com/Adity-star/mcp-crypto-server
π Then Level Up: Build the yFinance Stock ServerYou'll learn how to:
- Use MCP to expose crypto tools like get_price("BTC")
- Build an API with FastAPI
- Fetch real-time prices using the Alpaca API
Once you're familiar with the flow, move on to this more advanced stock tracker πΉ
π GitHub Repo: https://github.com/Adity-star/mcp-yfinance-server
π Detailed Blog: π How I Built My Own Stock Server with Python, yFinance, and a Touch of Nerdy Ambition
π¦ Step 1: Set Up the Environment (with uv)Includes:
- Watchlists
- Real-time(ish) price updates
- Technical summaries
- A full-featured dashboard
- Trend + momentum indicators
- Watchlist management
We use uv β a modern, ultra-fast Python package manager β to manage our project environment.
Run the following commands in your terminal:
# Install uv curl -LsSf https://astral.sh/uv/install.sh | sh # Create and navigate to your project directory mkdir mcp-yfinance-server cd mcp-yfinance-server # Initialize a new project uv init # Create and activate the virtual environment uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
Once your pyproject.toml is set up with dependencies, run:
# Run uv pip install -e .π Step 2: Running the MCP Server
Once your environment is ready, start the stock server:
π§ͺ Want a quick test first? Try checking the tools first:
python run test_server_fun.py
π Curious how the full server works?
Explore the source code here:
The server exposes many tools for AI agents and CLI users.
Here are some important tools, check out the complete tools list here:
add_to_watchlist
Add a stock ticker to your personal watchlist. analyze_stock
Perform a 1-month technical trend analysis (RSI, MACD, MAs).. get_technical_summary
Generate a comprehensive technical summary including indicators & signals.. get_watchlist_prices
Fetch the most recent prices for all watchlisted tickers. get_trend_analysiss
Analyze recent trend shifts, patterns, and divergences.. get_stock_price
Retrieve the current price for a given ticker symbol. get_volatility_analysis
Calculate historical volatility and ATR metrics.. compare_stocks
Compare two stock prices (useful for relative performance analysis).
β Total: 18 powerful tools to analyze and monitor stocks with precision.
These tools are ideal for:
π Step 3: Inspecting the MCP ServerβοΈ Keep this reference handy for building intelligent financial applications with the MCP server.
Easily explore and test your MCP tools using the MCP Server Inspector. Run the following command in your terminal:
$ mcp dev source/yf_server.py
This launches an interactive UI to:
To integrate your YFinance MCP server, add the following entry to your mcp.config.json file:
{ "mcpServers": { "yfinance-price-tracker": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/YOUR/mcp-yfinance-server", "run", "main.py" ] } } }
π Step 5: Restart Claude Desktopβ οΈ Replace /ABSOLUTE/PATH/TO/... with actual file paths. π‘ Tip: Rename your server from crypto-price-tracker to yfinance-price-tracker for clarity.
Restart Claude Desktop (or any interface that uses MCP) to reload and activate your new YFinance tools.
β Step 6: Testing the MCP Server with Claude DesktopThis ensures the updated MCP configuration is recognized and all stock tracking tools are ready to use.
Use these example queries to test your MCP YFinance Server in action:
"Compare the stock prices of Tesla and Apple." β π§ Uses
compare_stocks
"Get the historical data for Tesla over the past month." β π Uses
get_stock_history
"Add Apple, Tesla, and Reliance to my watchlist." β π Uses
add_to_watchlist
"Show me a chart of Appleβs stock over the last 30 days." β πΌοΈ Claude can fetch + visualize data using your server
π· Sample Chart: πΌ view Screenshot
π Live Claude Site: Open Demo on Claude.site
π§ͺ These tests ensure your MCP integration is working end-to-endβfrom data retrieval to real-time analysis and visualization.
βοΈ Outcomes You Can Expect Feature Outcome β Stock Analysis Analyse stock giving price, OHLC, returns, volume, insights and data. π Technical Analysis Access indicators like RSI, MACD, MA, and a complete technical summary. π Volatility Reports Analyze stock risk with ATR and volatility metrics. π Trend Analysis Detect trend shifts and divergence using price movement analysis. π§ Visualisations 18+ tools ready to power AI agents or dashboards to visualise stock. π Technical Charts Analyse and monitor technical indicators for stocks in real-time. πΌοΈ Visual Insights Generate charts and visual summaries with Claude Desktop.π« Feedback & Contributionsπ Ready to build your stock-tracking bot or intelligent financial dashboard? This project has all the core pieces.
Contributions are welcome! Whether you're fixing bugs, adding features, or improving documentation, your help makes this project better.
If you encounter bugs or have suggestions, please open an issue in the Issues section. Be sure to include:
Have a fix or improvement? Head over to the Pull Requests section and submit your PR. Weβll review and merge it ASAP!
If this project saved you from API rate limits or overpriced SaaS tools...
π Letβs build better tools together.
If youβd like a tweet thread, carousel, or launch post for this β Iβve got your back π
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4