Stock Analysis MCP Server
A FastMCP-based server that provides tools for analyzing stock market data, including concept sector strength, financial indicators, F10 information, market emotion indicators, and tracking limit-up stocks.
README Documentation
Stock Analysis MCP Server
This project is a server built using the FastMCP framework, providing various tools for accessing and analyzing stock market data.
Features
The server exposes the following tools:
- Concept Power Tools (
/stock): Analyzes the strength of stock concept sectors based on fund flow and price change. - Finance Tools (
/finance): Provides access to stock financial core indicators and company information. - Stock F10 Tools (
/f10): Fetches and summarizes Stock F10 information. - Market Emotion Tools (
/market): Retrieves and summarizes A-share market emotion indicators. - Stock Keep Up Tools (
/stockUp): Provides lists of continuous limit-up stocks and limit-up stocks. - Web Search Tools (Tavily) (
/websearch): Provides a web search tool.
Setup and Installation
-
Clone the repository:
git clone <repository_url> cd mcp_stock -
Create a virtual environment (recommended):
python -m venv venv source venv/bin/activate -
Install dependencies:
Install the required packages using pip:
pip install -r requirements.txt playwright install -
Configuration:
Some tools might require API keys or other configuration. Please refer to the
config.pyfile and potentially create a.envfile if necessary (based onos.getenvusage inserver.py).TAVILY_API_KEY= -
Run the server:
You can run the server using the
server.pyscript. The server will listen on the port specified by thePORTenvironment variable, defaulting to 8000.fastmcp run server.py --transport=sse --port=8000 --host=0.0.0.0To run on a specific port:
fastmcp run server.py --transport=sse --port=8000 --host=0.0.0.0
Usage
Once the server is running, you can interact with the tools via the /mcp prefix followed by the tool's mount path (e.g., /mcp/stock, /mcp/finance). The specific endpoints and expected parameters for each tool can be found by examining the tool definitions within each tool's Python file.