GitHubスター
5
ユーザー評価
未評価
お気に入り
0
閲覧数
4
フォーク
3
イシュー
0
MCP Securities Analysis
A Python-based flow for securities analysis using the Model Context Protocol (MCP). The repository bundles market data, parsing, analytics and visualisation tools behind a FastMCP server so that they can be consumed locally or remotely by any MCP-aware client (e.g. Claude Desktop, LangChain).
Example deep research report for Tesla.
This report was generated semi-autonomously by the following steps:
connect MCP tools to Claude Desktop, including web search, Perplexity, Wikipedia. (see
claude_desktop_config.json
for details). You can think of the Wikipedia tool as a friend you invite into the chat conversation who knows how to search and navigate Wikipedia, and bring articles, sections, summaries into the chat context, for further discussion with the user and the AI.connect
server.py
MCP server to Claude Desktop. Think of this as writing your own bots in Python that can bring stuff into the chat context: market data, SEC filings, or anything else you can retrieve or compute.prompt Claude Desktop to query Perplexity, Wikipedia, and the 10-K to bring information about Tesla into the context.
prompt Claude Desktop to query market data tools for up-to-date info on Tesla
finally, enable deep research and prompt Claude Desktop to write a deep report in 8 sections with details on what each section should cover, using the information retrieved from the chat context, additional web searches and tool calls.
see
prompts.txt
for prompts used in the example.
While it's not a fully autonomous agent and at an early POC level, it shows the way toward a fully autonomous agent. Create an MCP client that autonomously goes through the steps above and generates a deep report on Tesla in a structured format with graphs and tables. Or create an even more advanced multi-agent workflow with a set of parallel agents for each section, and a critic-optimizer workflow, and a final report generator.
server.py Features
FastMCP server –
server.py
exposes a few MCP tools to get market data, news, charts, SEC filings, fundamental, technical data, research from public web sites, subscription services, and REST APIs.Market data
yfinance
OpenBB
. via the OpenBB platform API, we can call just about any market data REST API via a unified API.
SEC filings - a tool gets 10-K Item 1 via
sec_downloader
and parses it withsec_parser
.Technical analysis - computes a few technical indicators with
pandas_ta
&TA-Lib
.Interactive plots - Make a plot with plotly
News & Social sentiment - Reddit scraping utilities. At startup we launch a browser context and keep it open for the duration of the session. By pointing the browser at your profile, you can access saved credentials. Then you can open any URL and scrape the links or text or full HTML by prompting the LLM to generate the appropriate tool call.
Quick Start
# 1. Clone and enter the project (or fork and clone your own if you want to commit changes)
$ git clone https://github.com/druce/MCP.git
$ cd MCP
# 2. Create & activate a virtualenv (recommended)
$ python -m venv .venv
$ source .venv/bin/activate
# 3. Install python dependencies
$ pip install -r requirements.txt
# 4. Install Playwright browsers (once)
$ playwright install
# 5. Copy environment template & add your keys
$ cp dotenv.txt .env # then edit as needed
# 6. Launch and test the server
$ LOGLEVEL=DEBUG mcp dev server.py
# click to the link in the terminal to open the test page, connect, view tools, and then test them individually
# 7. Use the server in your MCP client of choice. For Claude Desktop, edit the provided claude_desktop_config.json file and move it to the proper location for your platform (macOS, Windows).
https://claude.ai/download
https://modelcontextprotocol.io/quickstart/user
# 8. For additional optional market data MCP servers install these repos
Wikipedia MCP (no API key required)
pip install wikipedia-mcp
Filesystem MCP (use local files, no API key required)
git clone https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem
Yahoo Finance MCP (no API key required)
git clone https://github.com/Alex2Yang97/yahoo-finance-mcp.git
FMP MCP (API key required - https://site.financialmodelingprep.com/developer/docs/stable )
git clone https://github.com/cdtait/fmp-mcp-server
Alpha Vantage MCP (API key required - https://www.alphavantage.co/documentation/)
git clone https://github.com/calvernaz/alphavantage.git
# see alphavantage.patches for edits to alphavantage/src/alphavantage_mcp_server/server.py
Brave Search MCP (API key required https://brave.com/search/api/ )
npm install -g @modelcontextprotocol/server-brave-search
Perplexity Ask MCP (API key, Docker required)
Follow setup instructions here:
https://github.com/ppl-ai/modelcontextprotocol/tree/main
Project Structure
MCP/
├── claude_desktop_config.json # Configuration for Claude Desktop
├── dotenv.txt # Secrets / Environment variables
├── README.md # This file
├── server.py # FastMCP server, launched by mcp dev or Claude desktop or other MCP client
├── requirements.txt # Python dependencies
├── sources.yaml # Data-source configuration used by server
├── Market Data.ipynb # Jupyter notebook to fetch market data
├── TearSheet.ipynb # Jupyter notebook to do basic analysis