fintools-mcp

mcp
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Financial analysis tools for AI assistants via MCP — technical indicators, options analysis, position sizing, and trade statistics

README.md

fintools-mcp

Financial analysis tools for AI assistants via MCP (Model Context Protocol).

Give Claude, ChatGPT, Cursor, or any MCP-compatible AI access to real financial analysis — not just stock prices, but the analytical toolkit a trader actually uses.

This repository is Fintools Core: the free, open-source MCP foundation. See VISION.md for the public product direction and guardrails.

Tools

Tool What it does
get_technical_indicators RSI, MACD, ATR, EMAs (9/21/50/200), Fibonacci levels, trend assessment
get_stock_quote Current price, volume, 52-week range, market cap
get_trend_score Trend score from -100 (strong downtrend) to +100 (strong uptrend) with component breakdown
get_support_resistance Key support/resistance levels with touch counts and strength ratings
screen_stocks Screen S&P 500 by RSI, trend score, EMA position, relative volume — find setups fast
get_data_source_stats Show cache status and provider request counters for the current MCP session
analyze_options_chain Options chain with IV analysis, liquidity filtering, put/call ratios
calculate_position_size Risk-based position sizing with stop loss and profit target
calculate_atr_position ATR-based position sizing — auto-calculates stop and target from volatility
analyze_trades Win rate, profit factor, Sharpe ratio, drawdown, streaks from trade P&Ls
compare_tickers Side-by-side technical comparison across multiple symbols

How it works

fintools-mcp sequence diagram

Quick Start

Install

pip install fintools-mcp

Or with uv:

uv pip install fintools-mcp

Add to Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "fintools": {
      "command": "uv",
      "args": ["run", "--from", "fintools-mcp", "fintools-mcp"]
    }
  }
}

Or if installed via pip:

{
  "mcpServers": {
    "fintools": {
      "command": "fintools-mcp"
    }
  }
}

Add to Claude Code

claude mcp add fintools -- uv run --from fintools-mcp fintools-mcp

Examples

Once configured, you can ask your AI assistant things like:

  • "Find oversold S&P 500 stocks still above their 200 EMA"
  • "What's SPY's trend score?"
  • "Show me support and resistance levels for NVDA"
  • "What's the technical setup on AAPL right now?"
  • "Analyze the SPY options chain for next Friday"
  • "If I want to go long NVDA with a $100k account risking 1.5%, how many shares and where's my stop?"
  • "Compare AAPL, GOOGL, MSFT, and AMZN — which has the strongest trend?"
  • "Here are my last 20 trades: [150, -80, 200, ...] — what's my win rate and Sharpe?"

Example Output

Technical Indicators

> "What's the technical setup on SPY?"

SPY @ $573.42
  RSI(14): 58.3 — bullish momentum
  MACD: 2.14 (histogram +0.38, bullish)
  ATR(14): $7.82
  EMAs: 9 > 21 > 50 > 200 (fully stacked bullish)
  Fibonacci: In golden pocket (0.618-0.65 retracement)
  Trend: Bullish (all signals aligned)

Position Sizing

> "Size a long position on AAPL at $227, stop $220, target $245"

  Shares: 214
  Position value: $48,578
  Risk: $1,498 (1.5% of $100k)
  Reward: $3,852
  R:R ratio: 2.57

Architecture

fintools-mcp/
├── fintools_mcp/
│   ├── server.py              # MCP server — tool definitions
│   ├── data.py                # Market data via yfinance/Public with cache + batch fetch helpers
│   ├── data_cache.py          # File-backed cache for repeated quote/bar requests
│   ├── indicators/            # Technical indicators (standalone, no deps)
│   │   ├── rsi.py             # RSI — Wilder's smoothing
│   │   ├── macd.py            # MACD (12, 26, 9)
│   │   ├── atr.py             # ATR — Average True Range
│   │   ├── ema.py             # EMA — any period
│   │   ├── vwap.py            # VWAP — intraday, daily reset
│   │   └── fibonacci.py       # Fibonacci retracement + golden pocket
│   └── analysis/
│       ├── position_sizer.py  # Risk-based + ATR-based sizing
│       └── trade_stats.py     # KPI calculator (60+ metrics)
└── tests/

Data Sources

  • Stock data: Yahoo Finance (free, no API key required)
  • Options data: Yahoo Finance options chains
  • Optional daily bars: Public.com via FINTOOLS_DATA_SOURCE=public + PUBLIC_SECRET_KEY
  • Cache: enabled by default at ~/.cache/fintools-mcp
  • No API keys needed for basic functionality.

Cache controls:

FINTOOLS_CACHE_ENABLED=0                 # disable cache
FINTOOLS_CACHE_DIR=/path/to/cache        # override cache location
FINTOOLS_DAILY_CACHE_TTL_SECONDS=900     # default daily-bar TTL
FINTOOLS_INTRADAY_CACHE_TTL_SECONDS=60   # default intraday-bar TTL
FINTOOLS_QUOTE_CACHE_TTL_SECONDS=15      # default quote TTL

For live options marks and execution-quality chains, use your broker's own data
or MCP integration instead of yfinance-backed option tools.

Development

git clone https://github.com/slimbiggins007/fintools-mcp.git
cd fintools-mcp
uv sync
uv run python -m fintools_mcp  # starts the MCP server

Run tests:

uv run pytest

License

MIT

Yorumlar (0)

Sonuc bulunamadi