Financial Analysis MCP Server
by cristianleoo
A powerful server for financial analysis, providing stock data retrieval and visualization features. It leverages yfinance and Alpha Vantage API for data and Plotly for interactive visualizations.
View on GitHub
Last updated: N/A
Financial Analysis MCP Server
A powerful server for financial analysis capabilities, providing stock data retrieval and visualization features.
Features
- Stock data retrieval from yfinance
- Alpha Vantage API integration
- Web search for financial information
- Interactive visualization with Plotly
- RESTful API endpoints
Prerequisites
- Python 3.8+
- Alpha Vantage API key (for additional data)
Installation
- Clone the repository:
git clone <repository-url>
cd fin-mcp
- Create a virtual environment and activate it:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Create a
.env
file in the root directory and add your Alpha Vantage API key:
ALPHA_VANTAGE_API_KEY=your_api_key_here
Usage
- Start the server:
cd src
python main.py
-
The server will start at
http://localhost:8000
-
Access the API documentation at
http://localhost:8000/docs
API Endpoints
Stock Data
GET /api/v1/stock/{symbol}
- Get stock data from yfinanceGET /api/v1/alpha-vantage/{symbol}
- Get stock data from Alpha VantageGET /api/v1/search/{query}
- Search for financial information
Visualization
GET /api/v1/visualize/candlestick/{symbol}
- Get candlestick chartGET /api/v1/visualize/volume/{symbol}
- Get volume chartGET /api/v1/visualize/combined/{symbol}
- Get combined price and volume chart
Example Usage
import requests
# Get stock data
response = requests.get("http://localhost:8000/api/v1/stock/AAPL")
data = response.json()
# Get candlestick chart
response = requests.get("http://localhost:8000/api/v1/visualize/candlestick/AAPL")
chart_data = response.json()
License
This project is licensed under the MIT License - see the LICENSE file for details.