{"name":"ai.liquidagent.api/liquid-agent","slug":"liquidagent-liquid-agent","title":"Liquid Agent","description":"Money tools for AI agents over x402: USDC bridge to 16 chains, Polymarket data, stocks, USDC gas.","url":"https://mcp.market/server/liquidagent-liquid-agent","rating":null,"grade":"B","score":81,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-30T17:48:24.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T12:05:32.353Z","last_ok_at":"2026-11-04T12:05:32.353Z","latency_ms":477},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/LiquidAgent/liquidagentx402","website":"https://api.liquidagent.ai/","version":"1.7.0","remotes":[{"type":"streamable-http","url":"https://api.liquidagent.ai/mcp"}],"packages":[],"tools":[{"name":"bridge_prepare_payment","description":"Returns the exact x402 payment request for a bridge (network, asset, payTo contract, amount, EIP-712 domain) and the URL to call. Pay it with your own x402 client: sign one EIP-3009 authorization and repeat the GET with the PAYMENT-SIGNATURE header. You receive exactly `amount` at your own address on the destination. This tool does not pay or sign anything.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"from":{"description":"Chain you pay on. Omit to pick the live route to `to` (Base to any listed chain; Arc to Base).","type":"string","enum":["base","arc"]},"to":{"type":"string","enum":["base","arc","optimism","unichain","sonic","world","monad","sei","xdc","ink","plume","polygon","avalanche","arbitrum","codex","hyperevm","linea"],"description":"Chain you receive on: arc, arbitrum, optimism, polygon, avalanche, unichain, linea, world, sonic, monad, sei, ink, hyperevm, xdc, plume, codex (from Base) or base (from Arc)."},"amount":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$","description":"USDC to RECEIVE on the destination, e.g. \"1\" or \"25.5\". Minimum 1."},"ref":{"description":"Optional referrer address: earns 20% of Liquid's fee. Omit if you have none.","type":"string","pattern":"^0x[0-9a-fA-F]{40}$"}},"required":["to","amount"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"bridge_quote","description":"Free. Exact price to move USDC with the Liquid Bridge (Base to Arc, Arbitrum, OP, Polygon, Avalanche, Unichain, Linea, World Chain, Sonic, Monad, Sei, Ink, HyperEVM, XDC, Plume, Codex; or Arc to Base): what you pay, what you receive (exactly `amount`), the fee breakdown and the ETA. No payment, no wallet needed.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"from":{"description":"Chain you pay on. Omit to pick the live route to `to` (Base to any listed chain; Arc to Base).","type":"string","enum":["base","arc"]},"to":{"type":"string","enum":["base","arc","optimism","unichain","sonic","world","monad","sei","xdc","ink","plume","polygon","avalanche","arbitrum","codex","hyperevm","linea"],"description":"Chain you receive on: arc, arbitrum, optimism, polygon, avalanche, unichain, linea, world, sonic, monad, sei, ink, hyperevm, xdc, plume, codex (from Base) or base (from Arc)."},"amount":{"type":"string","pattern":"^\\d+(\\.\\d{1,6})?$","description":"USDC to RECEIVE on the destination, e.g. \"1\" or \"25.5\". Minimum 1."},"ref":{"description":"Optional referrer address: earns 20% of Liquid's fee. Omit if you have none.","type":"string","pattern":"^0x[0-9a-fA-F]{40}$"}},"required":["to","amount"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"bridge_referral_earnings","description":"Free. Unclaimed Liquid Bridge referral earnings for an address on each chain, and how they are paid out. Earn by adding ref=<your address> to bridge calls: 20% of Liquid's fee.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Referrer address."}},"required":["address"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"bridge_routes","description":"Free. Every Liquid Bridge route with its live price for 1 USDC and whether it is open.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"bridge_status","description":"Free. Circle attestation and mint state for a bridge, by its burn transaction hash (returned by the bridge call).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"burnTx":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"Burn transaction hash from the bridge response."},"from":{"description":"Source chain, if known.","type":"string","enum":["base","arc"]}},"required":["burnTx"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"cctp_status","description":"Free. Status of ANY Circle CCTP v2 USDC transfer (not only Liquid's) by its burn transaction hash: attestation, whether it was minted on the destination, and exactly how to finish a stuck one (receiveMessage with the message and attestation). Chains: Ethereum, Avalanche, OP Mainnet, Arbitrum, Base, Polygon PoS, Unichain, Linea, Sonic, World Chain, Arc.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"txHash":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"Burn transaction hash on the source chain."},"from":{"description":"Source chain, if known (faster).","type":"string","enum":["ethereum","avalanche","optimism","arbitrum","base","polygon","unichain","linea","sonic","worldchain","arc"]}},"required":["txHash"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"gas_sponsor_info","description":"Free. How to send a transaction on Base, Polygon or Solana with a wallet that holds USDC but no ETH/POL/SOL: the x402-paid gas sponsor, its price rule (from $0.03) and lanes.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"liquid_guide","description":"Free. Overview of every Liquid Agent service for agents (bridge, stocks, signals, gas sponsor), prices and where the full docs are.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"payment_readiness","description":"Free. One call to know if a wallet can pay an x402 endpoint right now: reads the endpoint's 402, checks the wallet's balance on each accepted network, and if it cannot pay, returns the cheapest fix (e.g. move USDC from the chain where it sits, with the exact bridge_quote arguments).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"The paying wallet."},"url":{"description":"The paid endpoint URL (https). It is called once, without payment, to read its 402.","type":"string","format":"uri"},"method":{"description":"HTTP method for url (default GET).","type":"string","enum":["GET","POST"]},"body":{"description":"JSON body for a POST url.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"requirement":{"description":"Instead of url: the PAYMENT-REQUIRED header value (base64) or the 402 JSON body.","type":"string","maxLength":20000}},"required":["address"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"polymarket_prepare","description":"Returns the x402 payment request for Polymarket crypto Up/Down data (BTC, ETH, SOL, XRP; 5m and 15m; $0.004 USDC on Base, Polygon or Arc): the OFFICIAL price to beat for the live 5m or 15m window (matched to the cent against Polymarket's results), the live Chainlink price and its distance from the price to beat, seconds left, token ids and market prices. Pass start (unix) for a past window's official outcome. First call free: add ?free=1 to the URL for one live answer at no charge (one per agent). Pay it with your own x402 client. This tool does not pay.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"market":{"type":"string","enum":["btc-5m","btc-15m","eth-5m","eth-15m","sol-5m","sol-15m","xrp-5m","xrp-15m"],"description":"Which market: <asset>-<timeframe>."},"start":{"description":"Optional unix start of a past window.","type":"string","pattern":"^\\d+$"}},"required":["market"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"polymarket_price_to_beat","description":"PAID over x402 inside this tool call ($0.004 USDC on Base, Polygon or Arc): the OFFICIAL Polymarket price to beat for the live BTC, ETH, SOL or XRP 5m/15m Up/Down window (matched to every decimal against Polymarket), the live Chainlink price and its distance, seconds left, token ids and market prices. Call it once without payment to get the x402 PaymentRequired; your x402 wallet signs it and you call again with the payment in _meta[\"x402/payment\"]. Set free=true for one free answer per agent.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"market":{"type":"string","enum":["btc-5m","btc-15m","eth-5m","eth-15m","sol-5m","sol-15m","xrp-5m","xrp-15m"],"description":"Which market: <asset>-<timeframe>."},"start":{"description":"Optional unix start of a past window (official outcome).","type":"string","pattern":"^\\d+$"},"free":{"description":"Use your one free call (per agent) instead of paying.","type":"boolean"}},"required":["market"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_basket","description":"Free. The on-chain tokenized US stock index on Base (NVDA, META, AAPL, GOOGL): live prices, fees, how to buy from $1.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_buy","description":"Free. Invest USDC into your vault from $1 (USDC 6 decimals: \"1000000\" = $1). Easiest: set usePermit=true with owner, sign the returned typedData off-chain (free), then call again with permitDeadline + permitSignature to get ONE deposit transaction. Without a permit you get two transactions (approve, then deposit). Returns an UNSIGNED transaction {to, data, value, chainId} on Base; nothing happens until you sign it with your own wallet and broadcast it. Liquid never holds keys or funds.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Your vault address."},"usdc":{"type":"string","pattern":"^\\d+$","description":"USDC to invest, 6 decimals, minimum \"1000000\" ($1)."},"owner":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Your wallet address (required with usePermit)."},"minShares":{"type":"string","pattern":"^\\d+$","description":"Optional slippage floor: minimum shares to receive."},"usePermit":{"description":"true = return an EIP-2612 permit to sign first (no approve transaction).","type":"boolean"},"permitDeadline":{"description":"Deadline from the permit you signed (second call).","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"permitSignature":{"description":"Your signature of the permit typedData (second call).","type":"string","pattern":"^0x[0-9a-fA-F]+$"}},"required":["vault","usdc"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_buy_quote","description":"Free. Preview buying the tokenized stock basket: shares you would get and the fee for a USDC amount (USDC 6 decimals: \"2000000\" = $2).","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"usdc":{"type":"string","pattern":"^\\d+$","description":"Amount in USDC-6, e.g. \"2000000\" for $2."}},"required":["usdc"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_create_vault","description":"Free. Opens your own vault for the tokenized US stock basket (NVDA, META, AAPL, GOOGL), controlled only by you. Returns an UNSIGNED transaction {to, data, value, chainId} on Base; nothing happens until you sign it with your own wallet and broadcast it. Liquid never holds keys or funds. After it confirms, find the vault with stocks_portfolio.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_portfolio","description":"Free. Everything an address owns in the tokenized stock basket: each vault, its shares and current USD value.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Wallet address to look up."}},"required":["address"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_publish_prepare","description":"Returns the x402 payment request to publish a live, shareable portfolio page for a vault for 24 hours ($0.01 USDC on Base or Polygon). Pay it with your own x402 client. This tool does not pay.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Vault to publish."},"label":{"description":"Optional page title.","type":"string","maxLength":60}},"required":["vault"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_rebalance","description":"Free. Brings your vault back to its target weights (check stocks_vault: rebalanceNeeded). Returns an UNSIGNED transaction {to, data, value, chainId} on Base; nothing happens until you sign it with your own wallet and broadcast it. Liquid never holds keys or funds.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Your vault address."}},"required":["vault"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_sell","description":"Free. Cash out: redeem basket shares to USDC, or take the raw stock tokens in-kind (works any block, no vault needed, anyone holding shares can sell). Returns an UNSIGNED transaction {to, data, value, chainId} on Base; nothing happens until you sign it with your own wallet and broadcast it. Liquid never holds keys or funds.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Vault whose shares you hold."},"shares":{"type":"string","pattern":"^\\d+$","description":"Shares to redeem (18 decimals; see stocks_portfolio)."},"minUsdcOut":{"type":"string","pattern":"^\\d+$","description":"Optional slippage floor in USDC-6."},"inKind":{"description":"true = receive the 4 stock tokens instead of USDC.","type":"boolean"}},"required":["vault","shares"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_send","description":"Free. Transfer your tokenized stock basket shares to any wallet or another agent; they can hold, sell or forward them, no vault needed. Returns an UNSIGNED transaction {to, data, value, chainId} on Base; nothing happens until you sign it with your own wallet and broadcast it. Liquid never holds keys or funds.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Vault whose shares you hold."},"to":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Recipient address."},"shares":{"type":"string","pattern":"^\\d+$","description":"Shares to send (18 decimals)."}},"required":["vault","to","shares"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_set_weights","description":"Free. Sets your vault's target allocation across the 4 stocks in basis points (sum 10000), e.g. [4000, 3000, 2000, 1000]. Default is equal weight. Returns an UNSIGNED transaction {to, data, value, chainId} on Base; nothing happens until you sign it with your own wallet and broadcast it. Liquid never holds keys or funds.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Your vault address."},"weightsBps":{"minItems":4,"maxItems":4,"type":"array","items":{"type":"integer","minimum":0,"maximum":10000},"description":"4 weights in basis points summing to 10000, in the basket's constituent order (see stocks_basket)."}},"required":["vault","weightsBps"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_signals","description":"PAID over x402 inside this tool call ($0.007 USDC on Base, Polygon or Arc): the whole stock basket's rebalancing signal in one call (returns, volatility, RSI, trend, relative strength and inverse-volatility target weights for NVDA, META, AAPL, GOOGL). Call once without payment to get the x402 PaymentRequired, then call again with the signed payment in _meta[\"x402/payment\"].","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Optional vault to tailor the signal to."}},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_signals_prepare","description":"Returns the x402 payment request for basket signals ($0.007 USDC on Base, Polygon or Arc): rebalancing signal, momentum and suggested weights for NVDA/META/AAPL/GOOGL in one call. Pay it with your own x402 client. This tool does not pay.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"vault":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Optional vault to tailor the signal to."}},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stocks_vault","description":"Free. A basket vault's value (NAV), holdings, current vs target weights and whether it needs rebalancing.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Vault address."}},"required":["address"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"usdc_balances","description":"Free. USDC balance (and native gas balance) of an address on every CCTP chain at once: Ethereum, Avalanche, OP Mainnet, Arbitrum, Base, Polygon PoS, Unichain, Linea, Sonic, World Chain, Arc. Use it before paying or bridging to see where your money is.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"EVM address."}},"required":["address"],"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_check","description":"Free. Decode any x402 payment request (from a URL, a PAYMENT-REQUIRED header or a 402 body) into plain English with warnings, and optionally verify a signed payment (PAYMENT-SIGNATURE / X-PAYMENT header) the way a facilitator would: recipient, amount, time window, EIP-712 signature against the token's real domain, nonce reuse and balance. Every failed check comes with the fix.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"description":"The paid endpoint URL (https). It is called once, without payment, to read its 402.","type":"string","format":"uri"},"method":{"description":"HTTP method for url (default GET).","type":"string","enum":["GET","POST"]},"body":{"description":"JSON body for a POST url.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"requirement":{"description":"Instead of url: the PAYMENT-REQUIRED header value (base64) or the 402 JSON body.","type":"string","maxLength":20000},"payment":{"description":"Optional signed payment header value to verify.","type":"string","maxLength":20000}},"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":81,"grade":"B","scanned_at":"2026-10-01T06:32:00.336Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-01T06:32:00.293Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 950ms"]},"poisoning":{"score":15,"max":15,"notes":["26 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 5 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 1 days ago"]},"identity":{"score":8,"max":10,"notes":["namespace and repository owner differ","GitHub account older than a year","website matches verified namespace"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://api.liquidagent.ai/mcp","reachable":true,"authRequired":false,"latencyMs":950,"serverInfo":{"name":"liquid-agent","version":"1.7.0"}}],"packages":[],"repo":{"found":true,"owner":"LiquidAgent","repo":"liquidagentx402","archived":false,"pushedAt":"2026-09-30T17:48:24Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/203320916?v=4","ownerCreatedAt":"2025-03-14T14:54:07Z","license":"MIT"},"icon":{"url":"https://api.liquidagent.ai/v1/assets/icon.png","source":"site","width":48,"height":48},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-30T17:48:24.000Z","score":23}}}},"grade_history":[],"reviews":[]}