Next free-source huntWe check for new free data every weekday.
FinancialMCP serverFirst audited Nov 13, 2026

Hedgehood Options

Stock options market for AI agents on Robinhood Chain: RFQ quotes, buy/close, P&L, x402 deposits.The vendor's description, from its MCP Registry listing.

Passed, with 1 warningAudited Nov 13, 2026
  • Warning: 26 of 26 tools do not say whether they can change things.

Nothing failed, but there is something to know or fix. Public audit: we connect as an AI client would, list the tools and check what they say. We do not run them. How we audit

Does it work?
YesConnected in 663 ms.
Sign-up?
None neededIt answered without any account or key.
Can it change things?
Doesn't sayIts tools do not say whether they only read, so treat them as able to change things.
Endpointhttps://mcp.hedgehood.io/mcp

Source code Website Streamable HTTP · protocol 2025-11-25 · server version 1.30.0

What we checked, the evidence, and the tools it offers.

What we checked

Security

  • Passed: Connections are encrypted (HTTPS).

  • Passed: No hidden instructions found in tool text.

Safety labels

  • Warning: 26 of 26 tools do not say whether they can change things.

    MCP lets a server label each tool as read-only or destructive, so clients can ask the user before risky calls. Unlabelled tools are treated as able to change things.

    • list_markets
    • list_instruments
    • get_mark
    • get_quote
    • close_quote
    • get_positions
    • get_pnl
    • get_history
    • and 18 more

Tools

  • Passed: 26 tools listed.

  • Passed: Every tool describes its inputs with a valid schema.

Protocol

  • Passed: The MCP handshake works (Streamable HTTP).

  • Passed: Protocol version 2025-11-25 (latest).

  • Passed: Unknown requests are refused.

Connection

  • Passed: The server responds.

Tools (26)

As the server describes them. The labels are the server's own: it says whether each tool only reads or can change things.

  • list_marketsThe option markets: underlying, addresses, version, open expiries.Doesn't say
  • list_instrumentsInstruments (expiry x strike x call/put) with their on-chain ids. expiry as YYYYMMDD or unix seconds.Doesn't say
  • get_markModel bid / ask / mid (USDG per share), delta and whether a quote would be given. instrument like NVDA-20261016-200-C.Doesn't say
  • get_quoteA signed quote addressed to `account` for `quantity` shares (buy or sell), valid for seconds, with the exact calldata to send to fillOrderAs from the owner key or the given session key, the f…Doesn't say
  • close_quoteThe quote that exits `account`'s open position in `instrument` before expiry: reads the position, takes the opposite side (long -> sell, short -> buy), size = min(|position|, quantity or the…Doesn't say
  • get_positionsACTIVE positions: open positions, cost basis and leaderboard row of an account (and its ERC-8004 agent id when it has one). Past activity is get_history; marks / PnL are get_pnl; exit before…Doesn't say
  • get_pnlPnL of an account: every position (open / closed / settled) with the desk's mark, unrealized and realized PnL, fees paid and the total, all USDG raw (1e6) signed from the account's side, plus…Doesn't say
  • get_historyPAST activity of an account, newest first: fills (your side buy / sell, price, premium, fee), settlements (payout, PnL) and redeems, at most `limit` (<= 500) and after `since` (unix seconds),…Doesn't say
  • get_refusalsWhy the desk refused quotes to `taker` (your account) in the last 48 h, newest first: code, reason, instrument, side and quantity as asked, plus counts by code and what to do about each code.…Doesn't say
  • get_leaderboardLeaderboard per account or per ERC-8004 agent id (by='agent'): fills, premium paid / received, settled PnL.Doesn't say
  • get_agent_recordThe ERC-8004 Identity Registry record of an agent id and the accounts seen trading under it.Doesn't say
  • how_to_depositHow to fund a market balance with USDG over x402 (and the direct deposit path). amount in USDG. On mainnet the answer carries `onramp`: a MoonPay buy link for USDG delivered on Robinhood Chai…Doesn't say
  • how_to_get_test_fundsTESTNET only: how to get the test settlement token (TestUSD, hUSD-test, no value). Returns the faucet call (to, data = faucet(): a fixed amount to the caller once per cooldown), the account's…Doesn't say
  • list_vaultsThe Hedgehood OptionVault v2 funds (hhNVDA-CC, hhNVDA-WHEEL, hhGOOGL-CC, ...): stock token, deposit cap and room, total shares, NAV per share (USDG, from the chain), the current epoch (index,…Doesn't say
  • vault_statusAn account's standing in every fund: shares (credited and owed by a frozen deposit), value at NAV, the pending deposit or redemption with its cohort epoch and cutoff, what is claimable, the f…Doesn't say
  • vault_deposit_quoteThe unsigned calldata to deposit `usdg` USDG into `vault` (address or symbol like hhNVDA-CC) for `account`: `txs` = USDG approve (when the allowance is short) then requestDeposit(0, usdg, acc…Doesn't say
  • vault_redeem_quoteThe unsigned calldata to redeem `shares` (a decimal or 'all') of `vault` for `account`: requestRedeem(shares, account), the cohort it joins and when it pays, the cancelRedeem calldata. The sh…Doesn't say
  • vault_claim_quoteThe unsigned calldata to collect what `account`'s redemption (or refunded deposit) in `vault` paid: claim(account, account) with the claimable stock and USDG amounts; nothing_to_claim with th…Doesn't say
  • lend_statusShare Lending, LEND side: the Morpho Vault V2 that lends USDG against Hedgehood fund shares (hhNVDA-CC) on Morpho Blue — vault, total assets, cap and room, the live market's utilization and b…Doesn't say
  • lend_deposit_quoteThe unsigned calldata to lend `usdg` USDG: `txs` = USDG approve (when the allowance is short) then the vault's ERC-4626 deposit(usdg, account), with the share preview, the APY estimate and th…Doesn't say
  • lend_withdraw_quoteThe unsigned calldata to take lent USDG back: withdraw(usdg, account, account), or redeem(all shares, account, account) for 'all' (exact, no dust). insufficient_balance when the account holds…Doesn't say
  • borrow_statusShare Lending, BORROW side: the Morpho Blue market that takes hhNVDA-CC fund shares as collateral for USDG — id (discovered from the lending vault at each call; the mainnet market is being mi…Doesn't say
  • borrow_supply_collateral_quoteThe unsigned calldata to post `shares` fund shares (a decimal or 'all' of the wallet) as collateral: approve to Blue (when the allowance is short) + supplyCollateral(marketParams, shares, acc…Doesn't say
  • borrow_take_quoteThe unsigned calldata to borrow `usdg` USDG against posted collateral: borrow(marketParams, usdg, 0, account, account), with the post-action HF / LTV and a `warning` when the resulting LTV is…Doesn't say
  • borrow_repay_quoteThe unsigned calldata to repay USDG debt: approve to Blue (when short) + repay(marketParams, usdg, 0, account, 0x), or for 'all' repay by the exact share debt (no dust; the approval carries 0…Doesn't say
  • borrow_withdraw_collateral_quoteThe unsigned calldata to take fund shares back from Blue: withdrawCollateral(marketParams, shares, account, account), with the post-action HF / LTV and the 70%-of-LLTV warning. Refused with u…Doesn't say

Audit history

  1. Nov 13Warnings

What we sent

Every request in this audit, with the answer and how long it took. We never send credentials and never call a tool.

RequestAnswerTime
initializeHTTP 200663 ms
initializedHTTP 202216 ms
tools/listHTTP 200586 ms
resources/listHTTP 200225 ms
prompts/listHTTP 200211 ms
unknown-methodHTTP 200209 ms

Run this server, or disagree with the result?

Fix the issue and it shows in the next weekly audit, or email us to ask for a re-audit or to dispute a finding. Read how we audit for what each check means.