StockScreen MCP Server

by twolven
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Leverages NumPy for numerical operations in stock data analysis, supporting technical indicators calculation and data processing

  • Utilizes pandas for handling financial data frames, enabling efficient stock screening, filtering, and result organization

  • Implemented as a Python-based MCP server that enables stock screening functionality through structured API calls

StockScreen MCP 服务器

模型上下文协议 (MCP) 服务器通过雅虎财经提供全面的股票筛选功能。它使 LLM 能够根据技术、基本面和期权标准筛选股票,并支持关注列表管理和结果存储。

特征

股票筛选

  • 技术分析筛选
    • 价格和数量过滤器
    • 移动平均线(20、50、200 SMA)
    • RSI 指标
    • 平均真实波动幅度 (ATR)
    • 趋势分析(1天、5天、20天变化)
    • MA 距离计算
  • 基础筛查
    • 市值过滤器
    • 市盈率分析
    • 股息收益率标准
    • 收入增长指标
    • ETF 特定指标(资产管理规模、费用率)
  • 选项筛选
    • 隐含波动率(IV)过滤器
    • 期权交易量和未平仓合约
    • 看跌/看涨比率分析
    • 买卖价差评估
    • 收益日期临近检查

数据管理

  • 监视列表创建和管理
  • 筛选结果存储
  • 默认符号类别
    • 超大市值(>2000亿美元)
    • 大盘股(100亿美元-2000亿美元)
    • 中型股(20亿美元-100亿美元)
    • 小型股(3亿至20亿美元)
    • 微型股(<3亿美元)
    • ETF

安装

# Install dependencies pip install -r requirements.txt # Clone the repository git clone https://github.com/twolven/mcp-stockscreen.git cd mcp-stockscreen

用法

  1. 添加到您的 Claude 配置:在您的claude-desktop-config.json中,将以下内容添加到mcpServers部分:
{ "mcpServers": { "stockscreen": { "command": "python", "args": ["path/to/stockscreen.py"] } } }

将“path/to/stockscreen.py”替换为保存 stockscreen.py 文件的完整路径。

可用工具

可用工具

  1. run_stock_screen

技术筛选标准

{ "screen_type": "technical", "criteria": { "min_price": float, # Minimum stock price "max_price": float, # Maximum stock price "min_volume": int, # Minimum average volume "above_sma_200": bool, # Price above 200-day SMA "above_sma_50": bool, # Price above 50-day SMA "min_rsi": float, # Minimum RSI value "max_rsi": float, # Maximum RSI value "max_atr_pct": float, # Maximum ATR as percentage of price "category": str # Optional: market cap category filter }, "watchlist": str, # Optional: name of watchlist to screen "save_result": str # Optional: name to save results }

基本筛选标准

{ "screen_type": "fundamental", "criteria": { "min_market_cap": float, # Minimum market capitalization "min_pe": float, # Minimum P/E ratio "max_pe": float, # Maximum P/E ratio "min_dividend": float, # Minimum dividend yield (%) "min_revenue_growth": float, # Minimum revenue growth rate "category": str, # Optional: market cap category filter # ETF-specific criteria "min_aum": float, # Minimum assets under management "max_expense_ratio": float, # Maximum expense ratio "min_volume": float # Minimum trading volume }, "watchlist": str, # Optional: name of watchlist to screen "save_result": str # Optional: name to save results }

选项筛选标准

{ "screen_type": "options", "criteria": { "min_iv": float, # Minimum implied volatility (%) "max_iv": float, # Maximum implied volatility (%) "min_option_volume": int, # Minimum options volume "min_put_call_ratio": float, # Minimum put/call ratio "max_spread": float, # Maximum bid-ask spread (%) "min_days_to_earnings": int, # Minimum days until earnings "max_days_to_earnings": int, # Maximum days until earnings "category": str # Optional: market cap category filter }, "watchlist": str, # Optional: name of watchlist to screen "save_result": str # Optional: name to save results }

新闻筛选标准

{ "screen_type": "news", "criteria": { "keywords": List[str], # Keywords to search for in news "exclude_keywords": List[str], # Keywords to exclude from results "min_days": int, # Minimum days back to search "max_days": int, # Maximum days back to search "management_changes": bool, # Filter for management changes "require_all_keywords": bool, # Require all keywords to match "category": str # Optional: market cap category filter }, "watchlist": str, # Optional: name of watchlist to screen "save_result": str # Optional: name to save results }

自定义筛选标准

{ "screen_type": "custom", "criteria": { "category": str, # Optional: market cap category filter "technical": { # Any technical criteria from above }, "fundamental": { # Any fundamental criteria from above }, "options": { # Any options criteria from above }, "news": { # Any news criteria from above } }, "watchlist": str, # Optional: name of watchlist to screen "save_result": str # Optional: name to save results }

类别值

可供筛选的市值类别:

  • “mega_cap”:>2000亿美元
  • “large_cap”:100亿美元-2000亿美元
  • “中盘股”:20亿美元至100亿美元
  • “small_cap”:3亿至20亿美元
  • “micro_cap”:<3亿美元
  • “etf”:ETF 工具
  1. manage_watchlist
{ "action": str, # Required: "create", "update", "delete", "get" "name": str, # Required: watchlist name (1-50 chars, alphanumeric with _ -) "symbols": List[str] # Required for create/update: list of stock symbols }
  1. get_screening_result
{ "name": str # Required: name of saved screening result }

响应格式

技术屏幕响应

{ "screen_type": "technical", "criteria": dict, # Original criteria used "matches": int, # Number of matching stocks "results": [ # List of matching stocks { "symbol": str, "price": float, "volume": float, "rsi": float, "sma_20": float, "sma_50": float, "sma_200": float, "atr": float, "atr_pct": float, "price_changes": { "1d": float, # 1-day price change % "5d": float, # 5-day price change % "20d": float # 20-day price change % }, "ma_distances": { "pct_from_20sma": float, "pct_from_50sma": float, "pct_from_200sma": float } } ], "rejected": [ # List of stocks that didn't match { "symbol": str, "rejection_reasons": List[str] } ], "timestamp": str }

克劳德的使用提示

我已启用提供股票筛选功能的 stockscreen 工具。您可以使用以下三个主要功能:

  1. 使用多种标准类型筛选股票:
    • 技术面:价格、成交量、RSI、移动平均线、ATR
    • 基本面:市值、市盈率、股息、增长
    • 选项:IV、交易量、收益日期
    • 自定义:组合多种条件类型
  2. 管理关注列表:
    • 创建和更新符号列表
    • 删除现有的关注列表
    • 检索监视列表内容
  3. 访问已保存的筛选结果:
    • 加载上一屏结果
    • 审查匹配的符号和标准

所有功能包括错误处理、详细的市场数据和全面的响应。”

要求

  • Python 3.12+
  • MCP 服务器
  • yfinance
  • 熊猫
  • numpy
  • 异步

限制

  • 数据来源于雅虎财经,可能会有延迟
  • 基于 Yahoo Finance API 限制的速率限制
  • 期权数据的可用性取决于市场时间
  • 某些财务指标可能会延迟或不可用

贡献

欢迎贡献代码!欢迎提交 Pull 请求。

执照

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。

作者

托德·沃尔文 - ( https://github.com/tolven )

致谢

  • 使用 Anthropic 的模型上下文协议 (MCP) 构建
  • 数据由雅虎财经提供
  • 专为与 Anthropic 的 Claude 配合使用而开发
-
security - not tested
A
license - permissive license
-
quality - not tested

通过雅虎财经提供全面的股票筛选功能。帮助法学硕士 (LLM) 根据技术面、基本面和期权标准筛选股票,并支持关注列表管理和结果存储。

  1. Features
    1. Stock Screening
    2. Data Management
  2. Installation
    1. Usage
      1. Available Tools
        1. Available Tools
          1. Technical Screen Criteria
          2. Fundamental Screen Criteria
          3. Options Screen Criteria
          4. News Screen Criteria
          5. Custom Screen Criteria
          6. Category Values
        2. Response Formats
          1. Technical Screen Response
        3. Usage Prompt for Claude
          1. Requirements
            1. Limitations
              1. Contributing
                1. License
                  1. Author
                    1. Acknowledgments
                      ID: ddrv1ksb7n