# HPSILab Quant Finance

> HPSILab Quant finance MCP for US stocks, ETFs, options, Monte Carlo, backtesting, and risk analysis.

- name: io.github.haiyunsky/hpsilab-quant-finance-mcp
- version: 0.11.0
- connection class: R1 (autonomous)
- trust: 97/100
- quality: 88/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.haiyunsky%2Fhpsilab-quant-finance-mcp
- tools: https://api.protogrid.dev/v1/servers/io.github.haiyunsky%2Fhpsilab-quant-finance-mcp/tools

**An agent can connect on its own if it already holds `HPSILAB_QUANT_FINANCE_MCP_TOKEN`.** Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "hpsilab-quant-finance-mcp": {
      "type": "http",
      "url": "https://hpsilab.com/mcp",
      "headers": {
        "Authorization": "Bearer ${HPSILAB_QUANT_FINANCE_MCP_TOKEN}"
      }
    }
  }
}
```

Placeholders to fill: `${HPSILAB_QUANT_FINANCE_MCP_TOKEN}`.

## Trust

- hygiene: 100
- liveness: 99
- freshness: 100
- provenance: 90
- drivers: +repository +namespace-matches-repo +website +reachable +uptime-97% +updated-8d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 88/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 93 (weight 30)

- pass `tools.descriptions`: every tool has a description
- warn `tools.description_length`: 3 tools have descriptions over 1,024 characters, which crowds the context
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 10 of 10 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 2,317 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: 3 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: deps.dev does not know hpsilab-quant-finance-mcp@0.11.0

- tools: 10, about 2,317 tokens to load them all
- tool set hash: 410b305b75215e3fef76609d70eab359
- tools last changed: 2026-10-12T22:35:30.175Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.haiyunsky/hpsilab-quant-finance-mcp.svg)](https://protogrid.dev/servers/io.github.haiyunsky/hpsilab-quant-finance-mcp)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-12 `register_account` changed (description)
  - before: Register a free hpsilab account for yourself, with no human involvement, and receive an API key immediately. Call this when you are hitting anonymous daily limits and want a higher allowance. You do not need a password, a wallet, or a web browser. The account is bound to you server-side, so calls you make after this are metered as your account even though you cannot change your own Authorization header. Registering keeps the anonymous daily allowance until the email address is confirmed; confirming it unlocks the full Free plan. Ask the human you are working with to click the link in the email that will arrive. A valid user email address is required. Do not call this tool with an empty or fabricated email address. If the user's email is unavailable, ask the user to provide it before calling register_account. Args: email: The real user email address that will receive verification.
  - after: Register a free hpsilab account for yourself, with no human involvement, and receive an API key immediately. Call this when the user has no API key yet and asks to sign up from here, or when a refusal's `next_actions` names register_account and the user agrees. This is the only tool that works without an API key. You do not need a password, a wallet, or a web browser. The account is bound to you server-side, so calls you make after this are metered as your account even though you cannot change your own Authorization header. The account is created unverified, with only a capped evaluation allowance and no trial Credits, until the email address is confirmed; confirming it grants the one-time 100-Credit Registered Trial (14 days). Ask the human you are working with to click the link in the email that will arrive. Calling again from the same caller returns the same account with a fresh key; an address that belongs to another account is refused. A valid user email address is required. Do not call this tool with an empty or fabricated email address. If the user's email is unavailable, ask the user to provide it before calling register_account. Args: email: The real user email address that will receive verification.
- 2026-10-03 `get_ai_prediction` changed (description)
  - before: AI next-day prediction: probability the stock closes UP, a plain buy/watch/sell-lean signal, and how strongly the models agree (consensus). Available to every authenticated plan (Free / Pro / Enterprise); subject to the caller's plan requests/day and requests/minute limits. Args: ticker: Stock symbol, e.g. "TSLA".
  - after: AI next-day prediction: probability the stock closes UP, a paper-trading buy/watch/sell lean (research only, not a trade instruction), and how strongly the models agree (consensus). Available to every authenticated plan (Free / Pro / Enterprise); subject to the caller's plan requests/day and requests/minute limits. Args: ticker: Stock symbol, e.g. "TSLA".
- 2026-09-30 `get_pretrade_risk_scan` changed (description)
  - before: Full pre-trade risk scan JSON for a stock. Pro tool ($0.15/call via x402 for anonymous callers; free within plan limits for signed-in accounts). Signed-in hpsilab users call this within their plan's free rate limits. Anonymous / tokenless agents pay per call via x402 (USDC on Base) when payments are enabled — send the x402 payment in the request _meta. Args: symbol: Stock symbol, e.g. "NVDA".
  - after: Full pre-trade risk scan JSON for a stock. Pro tool ($0.15/call via x402 for anonymous callers; Credits for signed-in accounts). Signed-in hpsilab users (including Free, on its trial Credits) spend Credits from their balance at this tool's catalog price — each tool is priced differently; see GET /api/credits/catalog. Anonymous / tokenless agents pay per call via x402 (USDC on Base) when payments are enabled — send the x402 payment in the request _meta. Args: symbol: Stock symbol, e.g. "NVDA".

Full history: https://api.protogrid.dev/v1/servers/io.github.haiyunsky%2Fhpsilab-quant-finance-mcp/changes

## Dependencies

- pypi hpsilab-quant-finance-mcp@0.11.0: unknown

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0.

## Remotes

- https://hpsilab.com/mcp (streamable-http, auth api_key ${HPSILAB_QUANT_FINANCE_MCP_TOKEN}, reachable true, uptime30d 0.974359)

## Packages

- pypi hpsilab-quant-finance-mcp@0.11.0 secrets: HPSILAB_API_KEY

## Tools (10)

- `analyze_stock`: Aggregate all quant tools into one JSON stock analysis.

    The tool reuses the existing MCP tools as its data sources, then derives a
    direction signal, direction score, bullish factors, bearish factors and
    plain-English summary. If one underlying tool is gated, unavailable or
    raises an error, the remaining tools still contribute to the final result
    (status "partial"); if every underlying tool fails, the whole call fails
    (status "error", isError=True) instead of a misleadingly "successful"
    empty analysis.

    Args:
        symbol: Stock symbol, e.g. "NVDA".
        refresh: Request fresh IV Radar data instead of using the backend's
            fresh IV cache. Defaults to False.
        lang: Language for `summary`, `bullish_factors` and `bearish_factors`
            - "en" (default), "zh" or "ja"; regional forms like "zh-CN" are
            accepted. Everything else in the response, `signal` included, is
            language-independent, so an existing caller that omits this gets
            byte-identical output to before.
    
- `generate_stock_images`: Generate stock-report PNG images and return their URLs.

    This is intentionally separate from analyze_stock so the JSON analysis stays
    fast and light. The backend reuses the same Growth Engine image generators
    used by email/social publishing.

    Args:
        symbol: Stock symbol, e.g. "RXRX".
        force: Regenerate images instead of using cached PNGs. Defaults to True
            so manually requested images reflect the latest available data.
        types: Optional subset of chart types. Allowed values are
            "ai_prediction", "iv_radar", "option_pressure", "monte_carlo",
            and "equity_curves". Omit to generate every chart type.
    
- `generate_stock_research_report`: Full markdown research report with five stock-report charts. Pro tool
    ($0.35/call via x402 for anonymous callers; free within plan limits for
    signed-in accounts, subject to a monthly report quota).

    Runs analyze_stock and stock-report image generation concurrently, then
    renders a presentation-ready markdown report (direction, direction score, bullish /
    bearish factors, source-tool status, and the five chart embeds). The markdown
    is returned for display and the same data is mirrored in structured JSON.

    Signed-in hpsilab users call this within their plan's free rate limits.
    Anonymous / tokenless agents pay per call via x402 (USDC on Base) when
    payments are enabled — send the x402 payment in the request _meta.

    Args:
        symbol: Stock symbol, e.g. "RXRX".
        refresh: Bypass the backend's fresh IV cache for the IV-driven modules.
            Defaults to False.
        force_images: Force a fresh image render instead of reusing the backend's
            image cache. Defaults to False.
    
- `get_ai_prediction`: AI next-day prediction: probability the stock closes UP, a
    paper-trading buy/watch/sell lean (research only, not a trade
    instruction), and how strongly the models agree (consensus).

    Available to every authenticated plan (Free / Pro / Enterprise); subject
    to the caller's plan requests/day and requests/minute limits.

    Args:
        ticker: Stock symbol, e.g. "TSLA".
    
- `get_equity_curve`: Backtest performance of the quant strategy across your watchlist:
    Sharpe ratio, max drawdown, win rate and total return per symbol.

    Available to every authenticated plan (Free / Pro / Enterprise); subject
    to the caller's plan requests/day and requests/minute limits.

    Args:
        ticker: Optional symbol to show just one row, e.g. "SPY". Leave blank for all.
    
- `get_iv_radar`: Implied-volatility (IV) structure for a stock: how expensive options are,
    whether volatility is being squeezed, and whether traders are paying up for
    upside (calls) or downside (puts). Available to all signed-in users.

    Args:
        ticker: Stock symbol, e.g. "NVDA".
        refresh: Bypass the backend's fresh IV cache and request the latest
            option-chain pull. Defaults to False.
    
- `get_monte_carlo`: Monte Carlo price simulation for the next ~10 trading days: thousands of
    random price paths estimate a likely price range and the odds of finishing
    higher.

    Args:
        ticker: Stock symbol, e.g. "AAPL".
    
- `get_option_pressure`: Option-chain pressure map for the nearest weekly/monthly expiry — Max
    Pain, dealer Gamma Wall, likely weekly high, and an extreme squeeze target.

    Args:
        ticker: Stock symbol, e.g. "SPY".
    
- `get_pretrade_risk_scan`: Full pre-trade risk scan JSON for a stock. Pro tool ($0.15/call via x402
    for anonymous callers; Credits for signed-in accounts).

    Signed-in hpsilab users (including Free, on its trial Credits) spend
    Credits from their balance at this tool's catalog price — each tool is
    priced differently; see GET /api/credits/catalog.
    Anonymous / tokenless agents pay per call via x402 (USDC on Base) when
    payments are enabled — send the x402 payment in the request _meta.

    Args:
        symbol: Stock symbol, e.g. "NVDA".
    
- `register_account`: Register a free hpsilab account for yourself, with no human involvement,
    and receive an API key immediately.

    Call this when the user has no API key yet and asks to sign up from here,
    or when a refusal's `next_actions` names register_account and the user
    agrees. This is the only tool that works without an API key. You do not
    need a password, a wallet, or a web browser. The account is bound to you
    server-side, so calls you make after this are metered as your account even
    though you cannot change your own Authorization header.

    The account is created unverified, with only a capped evaluation
    allowance and no trial Credits, until the email address is confirmed;
    confirming it grants the one-time 100-Credit Registered Trial (14 days).
    Ask the human you are working with to click the link in the email that
    will arrive. Calling again from the same caller returns the same account
    with a fresh key; an address that belongs to another account is refused.

    A valid user email address is required. Do not call this tool with an
    empty or fabricated email address. If the user's email is unavailable,
    ask the user to provide it before calling register_account.

    Args:
        email: The real user email address that will receive verification.
    
