{
 "name": "robinhood-mcp-tools",
 "title": "Robinhood MCP tool surface \u2014 complete categorized reference",
 "tool_count": 53,
 "observed": "2026-08-06",
 "source": "https://coil.trade/learn/robinhood-mcp-tools",
 "license": "https://creativecommons.org/licenses/by/4.0/",
 "disclaimer": "Independently observed from the live Robinhood MCP connector surface; not an official Robinhood document. Names and behavior can change without notice. Not affiliated with Robinhood.",
 "tools": [
  {
   "category": "Account & portfolio",
   "name": "get_accounts",
   "purpose": "List brokerage accounts with type and account number.",
   "notes": "Order tools require an explicit account number; nothing should be defaulted from this call."
  },
  {
   "category": "Account & portfolio",
   "name": "get_portfolio",
   "purpose": "Portfolio value and buying-power snapshot.",
   "notes": "Accounts swept into cash-sweep programs can read $0 equity here; derive value from positions/P&L instead."
  },
  {
   "category": "Account & portfolio",
   "name": "get_equity_positions",
   "purpose": "Open stock/ETF positions with quantity and average cost."
  },
  {
   "category": "Account & portfolio",
   "name": "get_equity_tax_lots",
   "purpose": "Per-lot cost basis and acquisition dates for a position."
  },
  {
   "category": "Account & portfolio",
   "name": "get_pnl_trade_history",
   "purpose": "Trade-by-trade realized P&L history feed."
  },
  {
   "category": "Account & portfolio",
   "name": "get_realized_pnl",
   "purpose": "Realized gain/loss summary for a period."
  },
  {
   "category": "Market data (equities)",
   "name": "search",
   "purpose": "Resolve a company name or partial ticker to instruments."
  },
  {
   "category": "Market data (equities)",
   "name": "get_equity_quotes",
   "purpose": "Real-time quotes for one or many symbols."
  },
  {
   "category": "Market data (equities)",
   "name": "get_equity_historicals",
   "purpose": "OHLCV candles per symbol and interval.",
   "notes": "Completed bars only. We measured the 5-minute feed running ~5 bars behind real time, and hourly final-bar closes off consolidated-tape values by up to ~3.4% \u2014 reconstruct the forming hour from 5m bars if freshness matters."
  },
  {
   "category": "Market data (equities)",
   "name": "get_equity_price_book",
   "purpose": "Order-book / price-book depth for a symbol.",
   "notes": "Requires the brokerage's Level-2 entitlement (Gold)."
  },
  {
   "category": "Market data (equities)",
   "name": "get_equity_fundamentals",
   "purpose": "Company fundamentals snapshot (market cap, ratios, description)."
  },
  {
   "category": "Market data (equities)",
   "name": "get_financials",
   "purpose": "Financial statements (income, balance sheet, cash flow)."
  },
  {
   "category": "Market data (equities)",
   "name": "get_equity_technical_indicators",
   "purpose": "Server-computed indicators (MAs, MACD, RSI and friends).",
   "notes": "Completed bars only, one symbol per call, server-side warmup; matches classic pivots exactly if you compute from the prior completed session."
  },
  {
   "category": "Market data (equities)",
   "name": "get_equity_tradability",
   "purpose": "Per-symbol tradability: session eligibility and fractional flags.",
   "notes": "The pre-flight check before any order; flags like position_closing_only fractional are only visible here."
  },
  {
   "category": "Indexes",
   "name": "get_indexes",
   "purpose": "List supported market indexes."
  },
  {
   "category": "Indexes",
   "name": "get_index_quotes",
   "purpose": "Real-time index level quotes."
  },
  {
   "category": "Indexes",
   "name": "get_index_historicals",
   "purpose": "Historical index levels."
  },
  {
   "category": "Earnings",
   "name": "get_earnings_calendar",
   "purpose": "Upcoming earnings dates for symbols."
  },
  {
   "category": "Earnings",
   "name": "get_earnings_results",
   "purpose": "Reported earnings results and surprises."
  },
  {
   "category": "Equity orders",
   "name": "place_equity_order",
   "purpose": "Place a stock/ETF order (market/limit, shares or dollars).",
   "notes": "Fractional and dollar-based orders execute in regular hours only."
  },
  {
   "category": "Equity orders",
   "name": "review_equity_order",
   "purpose": "Preview an order \u2014 validation, costs, warnings \u2014 without placing it.",
   "notes": "The safety tool: an agent can show its work here and stop for human confirmation."
  },
  {
   "category": "Equity orders",
   "name": "get_equity_orders",
   "purpose": "List open and historical equity orders."
  },
  {
   "category": "Equity orders",
   "name": "cancel_equity_order",
   "purpose": "Cancel an open equity order."
  },
  {
   "category": "Options market data",
   "name": "get_option_chains",
   "purpose": "Expirations and strikes for an underlying."
  },
  {
   "category": "Options market data",
   "name": "get_option_instruments",
   "purpose": "Resolve specific option contracts."
  },
  {
   "category": "Options market data",
   "name": "get_option_quotes",
   "purpose": "Quotes and greeks for option contracts."
  },
  {
   "category": "Options market data",
   "name": "get_option_historicals",
   "purpose": "Historical prices for an option contract."
  },
  {
   "category": "Options market data",
   "name": "get_option_positions",
   "purpose": "Open option positions."
  },
  {
   "category": "Options market data",
   "name": "get_option_level_upgrade_info",
   "purpose": "What the account's option level allows and upgrade requirements."
  },
  {
   "category": "Option orders",
   "name": "place_option_order",
   "purpose": "Place an option order.",
   "notes": "Gated by the account's approved option level."
  },
  {
   "category": "Option orders",
   "name": "review_option_order",
   "purpose": "Preview an option order without placing it."
  },
  {
   "category": "Option orders",
   "name": "get_option_orders",
   "purpose": "List open and historical option orders."
  },
  {
   "category": "Option orders",
   "name": "cancel_option_order",
   "purpose": "Cancel an open option order."
  },
  {
   "category": "Option orders",
   "name": "exercise_option",
   "purpose": "Exercise a held option contract."
  },
  {
   "category": "Option orders",
   "name": "cancel_option_exercise",
   "purpose": "Cancel a pending exercise request."
  },
  {
   "category": "Watchlists",
   "name": "get_watchlists",
   "purpose": "List the account's watchlists."
  },
  {
   "category": "Watchlists",
   "name": "get_watchlist_items",
   "purpose": "Symbols in a given watchlist."
  },
  {
   "category": "Watchlists",
   "name": "create_watchlist",
   "purpose": "Create a new watchlist."
  },
  {
   "category": "Watchlists",
   "name": "update_watchlist",
   "purpose": "Rename/update a watchlist."
  },
  {
   "category": "Watchlists",
   "name": "add_to_watchlist",
   "purpose": "Add equity symbols to a watchlist."
  },
  {
   "category": "Watchlists",
   "name": "remove_from_watchlist",
   "purpose": "Remove equity symbols from a watchlist."
  },
  {
   "category": "Watchlists",
   "name": "follow_watchlist",
   "purpose": "Follow a shared/curated watchlist."
  },
  {
   "category": "Watchlists",
   "name": "unfollow_watchlist",
   "purpose": "Unfollow a shared watchlist."
  },
  {
   "category": "Watchlists",
   "name": "get_popular_watchlists",
   "purpose": "Robinhood's curated/popular watchlists."
  },
  {
   "category": "Watchlists",
   "name": "get_option_watchlist",
   "purpose": "Option contracts saved to the options watchlist."
  },
  {
   "category": "Watchlists",
   "name": "add_option_to_watchlist",
   "purpose": "Add an option contract to the options watchlist."
  },
  {
   "category": "Watchlists",
   "name": "remove_option_from_watchlist",
   "purpose": "Remove an option contract from the options watchlist."
  },
  {
   "category": "Scans (server-side screeners)",
   "name": "get_scanner_filter_specs",
   "purpose": "The filterable fields and operators the scanner supports.",
   "notes": "Read this first: unsupported filter params are silently dropped \u2014 always read filters_applied back from run results."
  },
  {
   "category": "Scans (server-side screeners)",
   "name": "create_scan",
   "purpose": "Create a saved server-side screen."
  },
  {
   "category": "Scans (server-side screeners)",
   "name": "get_scans",
   "purpose": "List saved scans."
  },
  {
   "category": "Scans (server-side screeners)",
   "name": "run_scan",
   "purpose": "Execute a scan and return matching symbols.",
   "notes": "Verify filters_applied in the response; a dropped filter widens results silently."
  },
  {
   "category": "Scans (server-side screeners)",
   "name": "update_scan_config",
   "purpose": "Update a scan's name/sort/limit configuration."
  },
  {
   "category": "Scans (server-side screeners)",
   "name": "update_scan_filters",
   "purpose": "Replace a scan's filter set."
  }
 ]
}