Skip to content

OptimistFi

by optimistfi.com · remote · no sign-in to list tools · v1.30.1 · published by com.optimistfi

Perpetual futures across 40 venues, perps prop firms and sourced theses on 6,100+ US stocks.

Changes · 2

17 tools: 2 change things and 15 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http optimistfi https://mcp.optimistfi.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

17 tools

Changes things 2Claude Code: ask
  • answerA stock's full read in one call: the standing investment case, valuation off its filed financials, and the latest quarter.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    A stock's full read in one call: the standing investment case, valuation off its filed financials, and the latest quarter. Use when the user asks: is X a buy; is X cheap; what are X's earnings; how was X's quarter; did X beat. response_mode=plain for beginners. Not for: several companies → compare. Args: entity; response_mode.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • what_changedWhat has happened for a company since a date, read against its case: the latest quarter's earnings, filings and 8-K events, insider trades, capital returns, price move.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    What has happened for a company since a date, read against its case: the latest quarter's earnings, filings and 8-K events, insider trades, capital returns, price move. Use when the user asks: what changed with X; catch me up on X. response_mode=plain for beginners. Not for: the standing case → get_thesis. Args: entity; since.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 15Claude Code: allow
  • compareTwo or more companies side by side: each one's valuation, investment case, and what supports or challenges it, so the comparison rests on the cases, not just ratios.No findings

    Why it is in this group

    • The name "compare" says "compare": a word for reading.
    Description, as the server wrote it
    Two or more companies side by side: each one's valuation, investment case, and what supports or challenges it, so the comparison rests on the cases, not just ratios. Use when the user asks: X vs Y; which is the better buy; is X or Y more defensive. response_mode=plain for beginners. Not for: one company → answer. Args: entities (2-5).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_calendarWhat is ahead for a company, nearest first: the next earnings date projected from its own filing cadence (held, not rolled, marked overdue when lapsed) and trial readouts.No findings

    Why it is in this group

    • The name "get_calendar" says "get": a word for reading.
    Description, as the server wrote it
    What is ahead for a company, nearest first: the next earnings date projected from its own filing cadence (held, not rolled, marked overdue when lapsed) and trial readouts. Use when the user asks: when does X report next; what's coming up for X. Not for: past events → get_filings; what the earnings were → answer. Args: entity; types; limit.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_capital_returnsHow a company returns capital: dividend-rate history with each raise or cut, buyback authorizations beside the cash actually spent, splits and name changes.No findings

    Why it is in this group

    • The name "get_capital_returns" says "get": a word for reading.
    Description, as the server wrote it
    How a company returns capital: dividend-rate history with each raise or cut, buyback authorizations beside the cash actually spent, splits and name changes. Forward ex-dates are not served. Use when the user asks: did X raise its dividend; is X buying back stock; has X cut it. Args: entity; kind = dividends | buybacks | actions.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_congress_tradesUS House stock-trade disclosures (STOCK Act) by ticker or by member, dated by transaction.No findings

    Why it is in this group

    • The name "get_congress_trades" says "get": a word for reading.
    Description, as the server wrote it
    US House stock-trade disclosures (STOCK Act) by ticker or by member, dated by transaction. Use when the user asks: which members of Congress traded X; what did a named member buy; is Congress selling X. Not for: company insiders → get_insider_trades. Args: ticker or member; limit.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_filingsA company's own disclosures: filed 8-K events, its press releases, the text of those 8-Ks, and governance red flags (late filings, auditor changes, selling clusters).No findings

    Why it is in this group

    • The name "get_filings" says "get": a word for reading.
    Description, as the server wrote it
    A company's own disclosures: filed 8-K events, its press releases, the text of those 8-Ks, and governance red flags (late filings, auditor changes, selling clusters). Use when the user asks: any red flags at X; what did X announce; latest 8-K from X. Not 10-K/10-Q sections. Args: entity; kind = events | press_releases | event_text | red_flags.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_insider_tradesForm 4 insider transactions for one company, newest first: who, role, code (P buy, S sell, A grant, M exercise, F tax), shares and dollar value.No findings

    Why it is in this group

    • The name "get_insider_trades" says "get": a word for reading.
    Description, as the server wrote it
    Form 4 insider transactions for one company, newest first: who, role, code (P buy, S sell, A grant, M exercise, F tax), shares and dollar value. Use when the user asks: are insiders buying X; did X's CEO sell; insider activity at X. Not for: Congress → get_congress_trades. Args: entity; start; end; limit.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_perpsOne perp market right now, venue by venue: price and premium to the index or stock, open interest, funding, max leverage, liquidation levels, whale trades, positioning; a stock per…No findings

    Why it is in this group

    • The name "get_perps" says "get": a word for reading.
    Description, as the server wrote it
    One perp market right now, venue by venue: price and premium to the index or stock, open interest, funding, max leverage, liquidation levels, whale trades, positioning; a stock perp's weekend move. Use when the user asks: X funding rate; where do X longs get liquidated. Not for: trends or book depth → get_perps_history. Args: entity.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_perps_deskOptimistFi's perps desk: its stories, the traders directory with checked calls, and the Hyperliquid wallets it covered.No findings

    Why it is in this group

    • The name "get_perps_desk" says "get": a word for reading.
    Description, as the server wrote it
    OptimistFi's perps desk: its stories, the traders directory with checked calls, and the Hyperliquid wallets it covered. Use when the user asks: latest perps news on X; is trader Y worth following. Args: view; market; trader; wallet; limit.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_perps_historyOne perp market over time (1d to 90d): price, open interest, funding, taker buying vs selling, big accounts' net position; plus the latest book depth (±0.5/1/2%) and big accounts' …No findings

    Why it is in this group

    • The name "get_perps_history" says "get": a word for reading.
    Description, as the server wrote it
    One perp market over time (1d to 90d): price, open interest, funding, taker buying vs selling, big accounts' net position; plus the latest book depth (±0.5/1/2%) and big accounts' P&L and leverage. Use when the user asks: X funding this week; are whales adding to X; how deep is X's book. Args: entity; window.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_perps_marketPerps market research and sized trade costs.No findings

    Why it is in this group

    • The name "get_perps_market" says "get": a word for reading.
    Description, as the server wrote it
    Perps market research and sized trade costs. trade/cost: BTC/ETH entry, holding and exit dollars from fresh books. Funding, OI, whales and advanced supplied-data studies. Use when the user asks: what does my position cost; where can I trade 100x. Not for: one market overview → get_perps. Args: view; workflow; parameters; market; venue.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_prop_firmsPerps prop firms from their own pages: rules, challenge prices and live codes, country, platforms, assets, max allocation; a named firm's on-chain hedge book, reserves or payouts.No findings

    Why it is in this group

    • The name "get_prop_firms" says "get": a word for reading.
    Description, as the server wrote it
    Perps prop firms from their own pages: rules, challenge prices and live codes, country, platforms, assets, max allocation; a named firm's on-chain hedge book, reserves or payouts. Use when the user asks: prop firm rules; X discount code; cheapest $50K challenge; can Propr pay. Args: firm; rule; account_usd; country; asset; on_chain; max_price_usd.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_thesisThe standing investment case for a stock: the thesis, its testable claims with the condition that breaks each, the bear case, catalysts, whether it still holds.No findings

    Why it is in this group

    • The name "get_thesis" says "get": a word for reading.
    Description, as the server wrote it
    The standing investment case for a stock: the thesis, its testable claims with the condition that breaks each, the bear case, catalysts, whether it still holds. Use when the user asks: what's the bull case for X; what would break X's thesis; is X's story holding up. response_mode=plain for beginners. Not for: valuation → answer. Args: entity; view.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_thesis_impactOne metric's recent quarters read against the investment case: the claim it tests, whether it supports or challenges it, and what it cannot prove.No findings

    Why it is in this group

    • The name "get_thesis_impact" says "get": a word for reading.
    Description, as the server wrote it
    One metric's recent quarters read against the investment case: the claim it tests, whether it supports or challenges it, and what it cannot prove. item=earnings covers revenue, profit and EPS. Use when the user asks: what do X's earnings mean for the thesis. response_mode=plain for beginners. Not for: the full read → answer. Args: entity; item.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_track_recordOptimistFi's dated track record on a company: each time a filing crossed or held its thesis's break condition.No findings

    Why it is in this group

    • The name "get_track_record" says "get": a word for reading.
    Description, as the server wrote it
    OptimistFi's dated track record on a company: each time a filing crossed or held its thesis's break condition. A crossing whose thesis predates the filing is a genuine call, dated before the event. Use when the user asks: has OptimistFi been right on X; did X's thesis break. response_mode=plain for beginners. Args: entity.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • resolve_entityResolve a ticker, company name or CIK to the canonical company (name, ticker, CIK, FIGI), confirming which company a name means before other tools run.No findings

    Why it is in this group

    • The name "resolve_entity" says "resolve": a word for reading.
    Description, as the server wrote it
    Resolve a ticker, company name or CIK to the canonical company (name, ticker, CIK, FIGI), confirming which company a name means before other tools run. Use when the user asks: which company is X; what's the ticker for X; is X listed. Args: query.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.30.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http optimistfi https://mcp.optimistfi.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__optimistfi__resolve_entity",
      "mcp__optimistfi__get_calendar",
      "mcp__optimistfi__get_capital_returns",
      "mcp__optimistfi__get_filings",
      "mcp__optimistfi__get_congress_trades",
      "mcp__optimistfi__get_perps",
      "mcp__optimistfi__get_perps_history",
      "mcp__optimistfi__get_prop_firms",
      "mcp__optimistfi__get_perps_desk",
      "mcp__optimistfi__get_perps_market",
      "mcp__optimistfi__compare",
      "mcp__optimistfi__get_track_record",
      "mcp__optimistfi__get_thesis",
      "mcp__optimistfi__get_thesis_impact",
      "mcp__optimistfi__get_insider_trades"
    ],
    "ask": [
      "mcp__optimistfi__what_changed",
      "mcp__optimistfi__answer"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as optimistfi. Review it before you use it.