Model Context Protocol (MCP) server for freee API integration
OptimistFi is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Perpetual futures across 40 venues, perps prop firms and sourced theses on 6,100+ US stocks.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http optimistfi-mcp https://mcp.optimistfi.com/mcp
# 2 — ask your agent for something these tools do
# what_changed, resolve_entity, get_calendar and 14 more
OptimistFi costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http optimistfi-mcp https://mcp.optimistfi.com/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
17 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| since | no | Window start as an ISO date (YYYY-MM-DD); unset reads the last 30 days. | |
| response_mode | string | no | "standard" (default): the full read with the investment case; "plain": a short beginner-friendly explanation at the reading_level grade. |
| reading_level | no | With response_mode plain, who the explanation is written for: 5 a complete beginner, 10 a general reader, 13 an informed investor (unset reads as 13, with precise figures). |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | A company name, ticker or SEC CIK to identify; returns its name, ticker, CIK and FIGI. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| types | no | Kinds of dated event: "corporate_event" (projected earnings dates) and "fda_event" (clinical trial readouts); unset returns both. | |
| limit | integer | no | Most events, nearest first to return. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| kind | string | no | "dividends" (default): the declared per-share dividend over time, each raise or cut named; "buybacks": repurchase authorisations beside the cash actually spent; "actions": stock splits and name change |
| periods | integer | no | How many of the latest filed periods to read (usually quarters). |
| limit | integer | no | Most records to return. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| kind | string | no | "events" (default): filed 8-K events and how significant; "press_releases": the company's own releases; "event_text": the text of the latest filed events; "red_flags": late filings, auditor changes an |
| limit | integer | no | Most records to return, newest first. For events it counts the 8-K filings; the declared dividends, insider trades and sentiment reading beside them come in addition, up to as many of each. |
| start | no | Window start, YYYY-MM-DD. | |
| end | no | Window end, YYYY-MM-DD. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| ticker | no | A stock ticker: which members traded it. | |
| member | no | A House member's name: what that member traded (House only). | |
| entity | no | A company name, instead of a ticker. | |
| chamber | string | no | "house" (default): US House disclosures by ticker or member. |
| limit | integer | no | Most trades, newest first to return. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| response_mode | string | no | "standard" (default): the full read with the investment case; "plain": a short beginner-friendly explanation at the reading_level grade. |
| reading_level | no | With response_mode plain, who the explanation is written for: 5 a complete beginner, 10 a general reader, 13 an informed investor (unset reads as 13, with precise figures). |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The market: a ticker or symbol (NVDA, BTC, XAU), a company name (Tesla) or a common asset name (bitcoin, gold, crude oil). |
| mode | string | no | research: detailed hourly evidence; trading: bounded fresh order-book reads on supported venues, never an hourly-price fallback. |
| max_age_s | number | no | Trading mode: maximum age of the venue's book in seconds, default 3. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The market: a ticker or symbol (NVDA, BTC, XAU), a company name (Tesla) or a common asset name (bitcoin, gold, crude oil). |
| window | string | no | How far back: 1d (hourly steps), 7d (4-hourly), 30d or 90d (daily). |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| firm | no | One firm by name (Breakout, HyroTrader, Propr): its full record, every challenge and its dated rule changes. Unset: a short record per firm. | |
| on_chain | no | true: only firms whose trades execute on an on-chain venue. | |
| max_price_usd | no | Only firms whose cheapest published evaluation costs this much or less, in dollars (100). | |
| rule | no | Only firms on one of OptimistFi's rule lists, by its slug. | |
| account_usd | no | Only challenges of this account size in dollars (50000): each firm's challenges at that size, cheapest to get funded first (the price after any live code plus any fee due on passing), and the firm's o | |
| country | no | Only firms based in this country: where the firm says it operates, else where its contracting company is registered (United Arab Emirates or UAE, United States or US, Cayman Islands). | |
| asset | no | Only firms that offer this asset class. |
OptimistFi's perps desk: stories, traders with checked calls, wallets covered, companies that blocked tokenized trading of their stock, Kalshi's BTC/ETH odds and perp funding. Use when the user asks: perps news on X; is trader Y worth following; Kalshi's BTC odds. Args: view; market; trader; wallet; limit.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| view | string | no | news: the desk's published perps stories, newest first. traders: the perps traders directory, with the desk's checked calls on each. wallets: the Hyperliquid wallets the desk has covered, with their s |
| market | no | news and traders: one market (BTC, NVDA, gold). tokenized: one company by ticker or name (MSFT, Microsoft). kalshi: BTC or ETH. | |
| trader | no | traders: one trader by name or X handle. | |
| wallet | no | wallets: one 0x address; adds what it holds now. | |
| limit | integer | no | Rows, up to 25. |
| dex | string | no | account view only: Hyperliquid builder dex name, e.g. xyz; empty reads the main dex. |
| max_age_s | number | no | account only: maximum source age in seconds, default 3. A stale or undated account is unavailable. |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| view | string | no | trending: where open interest is building over window (1h, 4h or 24h; dollars added, which move with price as well as positions), and the most active markets. movers: the largest price moves up and do |
| asset_class | no | Only this kind of market; unset reads every class. | |
| window | string | no | Look-back for liquidations, whales, new_listings, liquidation_feed, footprint (1h, 4h or 24h), cvd (24h hourly, 7d in four-hour steps), trending (positions building over 1h, 4h or 24h), position_chang |
| limit | integer | no | Rows per list, up to 25. |
| market | no | One market (BTC, NVDA, gold) for whales, funding_gaps, funding_matrix, premium, new_listings, movers, market_overview, oi_caps, funding_heatmap, rsi, hl_cohorts, position_changes, twaps, liquidation_f | |
| venue | no | One venue id (hyperliquid, dydx, aster, lighter, gmx, …) for whales, new_listings, exchanges, open_interest (that venue's markets, with longs and shorts on a pool venue), large_orders, orderbook_heatm | |
| side | no | whales and liquidation_feed: buys or sells (a short liquidated counts as a buy, a long as a sell). | |
| min_usd | no | whales and liquidation_feed: smallest trade or liquidation in USD; funding_gaps and premium: smallest open interest per listing (default $100K), an open-interest floor; open interest is not order-book | |
| leverage | no | leverage view only: the leverage, one of 5, 10, 20, 50, 100, 200 or 500. | |
| proven | boolean | no | whales only: true keeps the trades of proven whales, accounts whose large positions kept winning after they were picked. |
| offset | integer | no | Rows to skip in each list: with limit, pages through a list's full length (count gives it where a view reports one; funding_matrix pages every row, the other views reach 2,000). |
| margin | no | funding_matrix only: stablecoin-margined markets (settled in a dollar stablecoin or US dollars), coin-margined (settled in the market's own coin), or either (each position takes a coin or a stablecoin | |
| section | no | hyperliquid view only: one section in full; unset gives every section's headline. stats: users, volume, open interest. validators: stake, commission, uptime, the active set, total staked over time. sp | |
| indicator | no | indicators view: which one (td, atr, rsi, ma, ema, macd and boll read one market, named by market; the _list ones every market; coinbase_premium is Coinbase's BTC-USD against OKX's BTC-USDT; bitfinex_ | |
| interval | no | indicators view: the bar length for a market's indicator or a list (default 1h). | |
| period | no | week_in_numbers: a week, 2026-W42 (Monday 00:00 to Monday 00:00 UTC); venue_scorecard: a month, 2026-10. Unset: the latest closed one; the current one is served marked preview. | |
| workflow | no | Optional workflow inside this existing tool. trade: fresh supported books. carry: explicit economics; analysis=compare ranks equal-delta spot/perp/dated scenarios. funding: stored settlements or analy | |
| parameters | no | Validated workflow inputs. trade analysis=cost: market BTC/ETH, sizesUsd (1-6 sizes), side long/short, holdingHours, maxAgeSeconds default 3; live Hyperliquid/Lighter books, optional feeOverridesBps, |
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).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entities | array | yes | Two to five companies or tickers to set side by side. |
| response_mode | string | no | "standard" (default): the full read with the investment case; "plain": a short beginner-friendly explanation at the reading_level grade. |
| reading_level | no | With response_mode plain, who the explanation is written for: 5 a complete beginner, 10 a general reader, 13 an informed investor (unset reads as 13, with precise figures). |
The dated track record on a company: each filing that crossed or held its thesis's break condition (a dated call if the thesis came first), plus early_warnings from the latest 10-Q's trailing year. Use when the user asks: has OptimistFi been right on X; did X's thesis break. response_mode=plain for beginners. Args: entity.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| response_mode | string | no | "standard" (default): the full read with the investment case; "plain": a short beginner-friendly explanation at the reading_level grade. |
| reading_level | no | With response_mode plain, who the explanation is written for: 5 a complete beginner, 10 a general reader, 13 an informed investor (unset reads as 13, with precise figures). |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| view | string | no | "case" (default): the thesis, its testable claims, the bear case and catalysts; "review": the case re-checked against the latest filings; "story": whether the company's own narrative in its releases m |
| response_mode | string | no | "standard" (default): the full read with the investment case; "plain": a short beginner-friendly explanation at the reading_level grade. |
| reading_level | no | With response_mode plain, who the explanation is written for: 5 a complete beginner, 10 a general reader, 13 an informed investor (unset reads as 13, with precise figures). |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| item | string | no | The figure to read against the case: "earnings" (revenue, net income and diluted EPS together) or one metric: revenue, net_income, eps_diluted, gross_margin, operating_margin, net_margin, free_cash_fl |
| response_mode | string | no | "standard" (default): the full read with the investment case; "plain": a short beginner-friendly explanation at the reading_level grade. |
| reading_level | no | With response_mode plain, who the explanation is written for: 5 a complete beginner, 10 a general reader, 13 an informed investor (unset reads as 13, with precise figures). |
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.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| entity | string | yes | The company: a ticker (AAPL, BRK.B), a company name (Apple) or an SEC CIK. |
| start | no | Earliest transaction date, YYYY-MM-DD. | |
| end | no | Latest transaction date, YYYY-MM-DD. | |
| limit | integer | no | Most transactions, newest first to return. |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install OptimistFi or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | minimal | capability blast radius (minimal) — client exposure if the model is manipulated | −0 |
| coverage-honesty | manifest | inspection depth (manifest) — how much of the target the scan could see | −4 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
The scan read each tool’s name, description, input schema and annotations exactly as the server listed them the last time it answered us; no code was reviewed. We ask the server again about once a month, and a list that changed is graded again.
The implementation source was not read — this reflects the declared tool metadata only.
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. minimal is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| what_changed | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| resolve_entity | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_calendar | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_capital_returns | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_filings | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_congress_trades | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| answer | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_perps | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_perps_history | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_prop_firms | no tags | |
| get_perps_desk | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_perps_market | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| compare | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_track_record | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_thesis | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_thesis_impact | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
| get_insider_trades | untrusted-input | untrusted-input: declares openWorldHint: true (interacts with entities outside the server) |
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
The public result for this release does not print the flow graph, so there is nothing to show here. That is not the same as "no paths were found": what the scan did read is above, under coverage.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.30.1.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish OptimistFi can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.