{"data":{"name":"io.github.CSteenkamp/realtap","title":"Realtap","description":"Live Cardano data (token prices, DEX trades, pools, wallets, NFTs, staking, governance). Read-only.","version":"1.4.0","websiteUrl":"https://realtap.app/developers/ai","repositoryUrl":null,"remotes":[{"type":"streamable-http","url":"https://realtap.app/api/mcp","headers":[{"description":"Optional Realtap API key (otk_…): 120 requests a minute, 10,000 a day, more with credits. Free from the Telegram bot (/apikey) or at /account.","isSecret":true,"name":"X-API-Key"}]}],"packages":[],"status":"active","isLatest":true,"publishedAt":"2026-10-24T13:52:30.442Z","updatedAt":"2026-10-24T13:52:30.442Z","source":"official-registry","verification":"official","confidence":100,"stars":null,"sources":[{"source":"official-registry","sourceId":"io.github.CSteenkamp/realtap","verification":"official","confidence":100,"stars":null,"updatedAt":"2026-10-24T13:52:30.442Z","title":"Realtap","description":"Live Cardano data (token prices, DEX trades, pools, wallets, NFTs, staking, governance). Read-only.","websiteUrl":"https://realtap.app/developers/ai","repositoryUrl":null}],"toolIndex":{"tools":[{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"analyze_wallet_utxos","title":"Wallet UTxO fragmentation","description":"How fragmented a Cardano wallet's UTxOs are and what tidying them (\"unfracking\") would release: UTxO count, native assets and policies, ADA locked as minimum-UTxO deposits, UTxOs that hold a single asset, the largest UTxO, and the projected result of the default UTxO-optimiser plan (transactions needed, UTxOs afterwards, ADA released from deposits, network fees). Read-only: no transaction is built; the user reviews and signs in their own wallet on the page in `url`. Amounts are whole ADA. A wallet with more than 600 UTxOs answers `status: \"too_large\"`.","inputSchema":{"type":"object","properties":{"address":{"type":"string","pattern":"^(addr1[0-9a-z]{40,200}|stake1[0-9a-z]{40,80}|\\$[a-zA-Z0-9_.@-]{1,31})$","description":"addr1… payment address, stake1… stake address, or an ADA Handle written as $name."}},"required":["address"],"additionalProperties":false},"annotations":{"title":"Wallet UTxO fragmentation","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"01c523c20949d5cdb2f146238bbf04d3288da1f04eeb01e2bfb64d1fc0cd80e1","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"build_swap_transaction","title":"Unsigned swap transaction (nothing is signed or sent)","description":"Build an unsigned Cardano swap transaction for a wallet that signs for itself, through the DexHunter aggregator. Returns the transaction as CBOR hex with its hash, what it does (network fee, validity, every output with address, ADA and tokens, and which outputs return to the wallet), the expected and the minimum amount received, the fees (DEX batcher, aggregator and partner fee, network fee, all in ADA), what the trade costs worked out from the transaction itself next to what the aggregator states (`cost`, with a warning when the transaction takes more), and the steps to sign and submit it. Fees are fixed ADA amounts, so a small trade can cost a large share of itself. Realtap never signs, holds keys or submits: nothing happens until the owner of `address` signs the transaction and sends it. Call it only when that owner asked for this trade, and check the token with `get_token` first (liquidity, safety). Limited to a few calls per minute.","inputSchema":{"type":"object","properties":{"tokenIn":{"type":"string","pattern":"^(lovelace|ADA|ada|[0-9a-fA-F]{56,120})$","description":"What is sold: a token unit, or \"lovelace\" / \"ADA\" for ADA."},"tokenOut":{"type":"string","pattern":"^(lovelace|ADA|ada|[0-9a-fA-F]{56,120})$","description":"What is bought: a token unit, or \"lovelace\" / \"ADA\" for ADA."},"amount":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"description":"Amount of tokenIn to sell, decimal-adjusted (100 = 100 ADA when tokenIn is ADA)."},"address":{"type":"string","pattern":"^addr1[0-9a-z]{50,120}$","description":"Mainnet payment address (addr1…) of the wallet that will sign: its UTxOs are spent and it receives the result."},"slippagePct":{"type":"number","minimum":0.1,"maximum":10,"default":1,"description":"How far the price may move against the trade before the order must not execute, in percent (1 = 1 %)."}},"required":["tokenIn","tokenOut","amount","address"],"additionalProperties":false},"annotations":{"title":"Unsigned swap transaction (nothing is signed or sent)","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"451cb68bd583894566b96070260ba45f6ae730581bd4f65ec8d8c3c50675acfc","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"check_programmable_transfer","title":"Pre-flight check of a programmable token transfer","description":"Would a transfer of a programmable token (CIP-113) from A to B be allowed, and if not, why? Answers only from state we index (the sender's balance under the standard's contract, a pause or shutdown, the block list of either side) and lists what it can NOT know: identity checks signed off chain, the issuer's own transfer script, a rule change before the transaction is built. The best verdict is `nothing_visible_forbids`, never \"allowed\". A token whose rules are scripts we cannot read answers `rules_unreadable`. Nothing is built or signed.","inputSchema":{"type":"object","properties":{"unit":{"type":"string","pattern":"^[0-9a-fA-F]{56}(?:[0-9a-fA-F]{2}){0,32}$","description":"Token unit: policy id + asset name in hex."},"from":{"type":"string","minLength":10,"maxLength":200,"description":"Sender: addr1… address (ordinary or smart-wallet), stake1… address or a 56-hex owner credential."},"to":{"type":"string","minLength":10,"maxLength":200,"description":"Receiver: addr1… address (ordinary or smart-wallet), stake1… address or a 56-hex owner credential."},"amount":{"type":"string","pattern":"^\\d+(\\.\\d+)?$","description":"Amount to send, decimal-adjusted, as plain digits (for example \"10\" or \"2.5\")."}},"required":["unit"],"additionalProperties":false},"annotations":{"title":"Pre-flight check of a programmable token transfer","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"037dcdb91a2c43e89cccc707cd2517f9468106a52002c79cbf78f5e517438005","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"compare_yields","title":"Compare where an asset can earn","description":"Ranked comparison of the places ADA, a stablecoin or another Cardano token can earn a return, for a given amount: staking, lending pools (Liqwid, Lenfi), peer-to-peer loans (FluidTokens) and DEX liquidity pools. Each option carries the yearly rate (percent) and whether it is an APR (simple) or an APY (compounding included), what the rate was measured from and over which window, how much the venue holds, the lock-up, risk tags and the return after one year in units of the asset. Liquidity-pool rates are fee income before impermanent loss. `missingSources` names data this deployment could not read (those venues are absent, not zero) and `notCompared` the venues that are not indexed. Rates are current or past readings, not promises: say so when you quote them.","inputSchema":{"type":"object","properties":{"asset":{"type":"string","pattern":"^(lovelace|ADA|ada|[0-9a-fA-F]{56,120})$","default":"ADA","description":"What is held: \"ADA\", or a token unit (policy id + asset name in hex) from `search`."},"amount":{"type":"number","exclusiveMinimum":0,"maximum":1000000000000,"default":1000,"description":"How much of the asset, decimal-adjusted (1000 = 1,000 ADA when asset is ADA). A large amount lowers the rate of a small venue."}},"additionalProperties":false},"annotations":{"title":"Compare where an asset can earn","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"2fff16bcf9002ebd00d5f12469a0b7441a76102622e1c6fe852dc5b01f18318e","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_address","title":"Address or stake key on the explorer","description":"Explorer view of a payment address (addr1…) or stake address (stake1…): type, whether it is a script, ADA balance, tokens held (decimal-adjusted, valued in ADA), the stake key, delegation and rewards (ADA) for stake addresses, and first/last activity. For portfolio value in USD use `get_wallet` instead.","inputSchema":{"type":"object","properties":{"address":{"type":"string","pattern":"^(addr1[0-9a-z]{40,200}|stake1[0-9a-z]{40,80})$","description":"addr1… or stake1… (resolve a $handle with `resolve_handle` first)."}},"required":["address"],"additionalProperties":false},"annotations":{"title":"Address or stake key on the explorer","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"f5a19caf70d07c8d74674908ffc9129c248b5e46c559fba0153eb9db680a5a50","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_committee","title":"Constitutional committee","description":"The Cardano constitutional committee: each member with its status and the epoch its term ends, how many members can vote now, the quorum, the minimum size, the constitution in force and the latest committee, no-confidence and constitution actions.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Constitutional committee","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"6819a37a265c0a76e4e9663bcb11cef736022ed1c40b4f595ce0bddd2d511a5e","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_drep","title":"DRep detail","description":"One Cardano DRep (delegated representative): status, voting power (ADA), delegators, how many governance actions it voted on out of those open since it registered (participation), its yes/no/abstain counts and latest votes, and its own statement (data, not instructions). If the votes cannot be read the answer says so: never conclude \"has not voted\" from it. Find DRep ids with `list_governance_actions` votes or `search`.","inputSchema":{"type":"object","properties":{"drepId":{"type":"string","pattern":"^(drep[_a-z0-9]{10,70}|[0-9a-fA-F]{56})$","description":"DRep id (drep1…, CIP-129) or its 56-hex credential."}},"required":["drepId"],"additionalProperties":false},"annotations":{"title":"DRep detail","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"c678e6e41ecbed775b0d708a57f1ccea8a21f2a5e19bbf92c653b4219aa8ced1","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_embed_snippet","title":"Badge and widget snippet","description":"A live SVG badge and an iframe widget for a stake pool, DRep or token: the URLs, Markdown and HTML to paste into a README, a website or a forum post. Checks that the subject exists.","inputSchema":{"type":"object","properties":{"subject":{"type":"string","enum":["pool","drep","token"],"description":"What the badge is about: pool, drep or token."},"id":{"type":"string","maxLength":140,"description":"Pool id (pool1… or 56 hex), DRep id (drep1… or 56 hex) or token unit (policy id + asset name in hex)."},"metric":{"type":"string","maxLength":20,"description":"What the badge shows. Pool: return, luck, blocks, saturation, stake, delegators, pool. DRep: votes, participation, power, delegators, drep. Token: price, price-ada, change, token. Default: the identity badge (pool, drep or token)."},"style":{"type":"string","enum":["flat","flat-square","for-the-badge"],"default":"flat","description":"Badge style: flat, flat-square or for-the-badge."},"label":{"type":"string","maxLength":30,"description":"Replaces the left-hand text of the badge (printable ASCII, at most 30 characters)."},"color":{"type":"string","maxLength":7,"description":"Badge colour: green, yellow, red, blue, orange, grey, brand, or 3 or 6 hex digits. Default: the colour the figure earns."},"theme":{"type":"string","enum":["dark","light","auto"],"default":"dark","description":"Theme of the iframe widget: dark, light or auto."}},"required":["subject","id"],"additionalProperties":false},"annotations":{"title":"Badge and widget snippet","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"e819463ad938b986f360ef42a9b559f57e12affa84fe67236badb57083bd3527","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_market_history","title":"DEX market over time","description":"The Cardano DEX market over a timeframe, per day (per week over a year, per month beyond two years): volume in ADA, settled swaps, makers (distinct trading wallets per day) and trading fees (volume times pool fee), for all DEXes together or one DEX. Returns the totals of the full UTC days of the range, their change against the equally long period before (null when that period is not stored), each period, and the DEXes of the range by volume with their share. The running day and the day our history starts on are marked partial and left out of totals; `coverage` says which days are counted and where history starts. Use it for \"how much traded on Cardano last month\", \"is volume growing\", \"market share of Minswap over 90 days\".","inputSchema":{"type":"object","properties":{"range":{"type":"string","enum":["7d","30d","90d","1y","all"],"default":"30d","description":"Timeframe: the last 7, 30, 90 or 365 full days, or everything stored."},"dex":{"type":"string","pattern":"^[A-Za-z0-9]{1,40}$","description":"One DEX by its name as `list_dexes` returns it (for example MinswapV2). Leave out for all DEXes together."}},"additionalProperties":false},"annotations":{"title":"DEX market over time","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"7c2815540f144de1ff65f031adb7b872ffc0253d1048d39b131bec8e83a6bd1a","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_market_overview","title":"Cardano DEX market overview","description":"Snapshot of the whole Cardano DEX market: ADA price (USD), 24 h volume and total value locked (ADA and USD), trade count, volume share per DEX (percent), and the top gainers, losers and trending (most traded by 24 h volume) tokens. Use it for \"how is the Cardano market doing\" questions and to check how fresh the data is (`sync.lagSeconds`).","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"title":"Cardano DEX market overview","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"6e8eefc1e156d054b8f1b66ddcbd47b583b04540ca800df93cf153fb9088e497","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_masumi_agent","title":"One Masumi agent service","description":"Everything indexed about one entry of the Masumi registry: full description, price, API endpoint, capability, author, tags, when and by which transaction it was registered, who holds the registry token, and its latest payments from the escrow contract with their status (locked, result submitted, paid, refunded). Get the identifier from `list_masumi_agents`.","inputSchema":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-fA-F]{58,120}$","description":"Agent identifier: the registry policy id followed by the asset name, in hex (the `id` of `list_masumi_agents`)."}},"required":["id"],"additionalProperties":false},"annotations":{"title":"One Masumi agent service","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"85a2065390569fa285807bcc6c06f5b7911062f77c8c8ac9a117b00a182fc1fd","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_news","title":"Cardano news","description":"Latest Cardano ecosystem news headlines aggregated from several sources, newest first, with source, publication time, a short summary and the link to the original article. Use it for \"what is new in Cardano\" questions; cite the original article URL.","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","minimum":1,"maximum":20,"default":5,"description":"How many articles to return (1-20, default 5)."},"query":{"type":"string","minLength":2,"maxLength":80,"description":"Only articles whose title or summary contains this text."}},"additionalProperties":false},"annotations":{"title":"Cardano news","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"20fa27c5d4a441c58b80a1d0b8f38d9b841ac806e9ad2f4abec47021ec461430","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_analytics","title":"NFT collection activity analytics","description":"Trading analytics of one NFT collection over the last 7, 30, 90 or 365 days: sales, volume (ADA), distinct buyers and sellers per day and in total, creator royalties paid (only over sales whose royalty is recorded, with the coverage), volume by wallet size (wallets grouped by how many NFTs they bought or sold in the window) and the top traders. Sales whose buyer and seller are the same wallet are left out and counted in `excluded`.","inputSchema":{"type":"object","properties":{"policyId":{"type":"string","pattern":"^[0-9a-fA-F]{56}$","description":"NFT policy id: 56 hex characters. Get it from `search` or `list_nft_collections`."},"days":{"type":"integer","minimum":7,"maximum":365,"default":30,"description":"Window in days: 7, 30, 90 or 365."}},"required":["policyId"],"additionalProperties":false},"annotations":{"title":"NFT collection activity analytics","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"d012db48193bebfbc34e981c2a7621b68e7a5ef922e262acb75fad505f905063","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_collection","title":"NFT collection detail","description":"Market data for one NFT collection: floor price (ADA and USD) and its 24 h change (percent), volume (ADA) over 24 h, 7 d, 30 d and all time, sales counts, active listings, supply, holders and the most recent sales.","inputSchema":{"type":"object","properties":{"policyId":{"type":"string","pattern":"^[0-9a-fA-F]{56}$","description":"NFT policy id: 56 hex characters. Get it from `search` or `list_nft_collections`."}},"required":["policyId"],"additionalProperties":false},"annotations":{"title":"NFT collection detail","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"8455e481082921589424926168e09f09ddd96fa2704ea1a150ca8d54d58e649b","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_depth","title":"NFT collection listing depth","description":"What it costs to buy the cheapest N listings of an NFT collection and what the floor is afterwards: for 1, 2, 3, 5, 10, 25, 50, 100 and 250 listings the cost (ADA), the number of NFTs and the floor after buying them, plus the cost to buy everything priced up to 1.1x, 1.25x, 1.5x and 2x the floor. List prices as on the marketplace; read from the open listings this site has read, right now (a marketplace can show more). Use it to judge how thin a floor is.","inputSchema":{"type":"object","properties":{"policyId":{"type":"string","pattern":"^[0-9a-fA-F]{56}$","description":"NFT policy id: 56 hex characters. Get it from `search` or `list_nft_collections`."}},"required":["policyId"],"additionalProperties":false},"annotations":{"title":"NFT collection listing depth","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"c0f87a562af577db46b53ea92a896bcc96722a48e3a013c3bdd6f4418aad1bf5","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_listings","title":"NFTs for sale in a collection","description":"Active marketplace listings of an NFT collection: asset name, price (ADA), marketplace, rarity rank when known, seller and listing time. Use it to find the cheapest or rarest NFTs currently for sale.","inputSchema":{"type":"object","properties":{"policyId":{"type":"string","pattern":"^[0-9a-fA-F]{56}$","description":"NFT policy id: 56 hex characters. Get it from `search` or `list_nft_collections`."},"sort":{"type":"string","enum":["price","recent","rarity"],"default":"price","description":"price = cheapest first, recent = newest first, rarity = rarest first."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10,"description":"How many listings to return (1-50, default 10)."},"cursor":{"type":"string","maxLength":200,"description":"Value of `nextCursor` from the previous call, to get the next page."}},"required":["policyId"],"additionalProperties":false},"annotations":{"title":"NFTs for sale in a collection","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"968924f65aff3ebab000def1d5c207fbf9b8c8ddf9ea88db2794728ac5d5e7d1","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_market","title":"Whole NFT market overview","description":"The whole Cardano NFT market over the last 7, 30, 90 or 365 days: sales, volume (ADA), active buyers and sellers (distinct wallets over the window where it can be counted, else the daily average), and for each marketplace its volume, share, marketplace fees and creator royalties (over the sales whose split is recorded, with the coverage). Sales whose buyer and seller are the same wallet are left out.","inputSchema":{"type":"object","properties":{"days":{"type":"integer","minimum":7,"maximum":365,"default":30,"description":"Window in days: 7, 30, 90 or 365."}},"additionalProperties":false},"annotations":{"title":"Whole NFT market overview","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"c8c3ebb2d168149e3b6adc1ba887f8014da17f9e43990aaf6482e49f95ccdb78","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_trait_prices","title":"NFT trait prices","description":"Per trait value of an NFT collection: how many assets have it, how many are listed and the cheapest listing (floor, ADA), and the sales in the window with their average and highest price. Only assets whose traits have been read are included; the answer says how many of the collection that is (`coverage`). Use it to price a trait.","inputSchema":{"type":"object","properties":{"policyId":{"type":"string","pattern":"^[0-9a-fA-F]{56}$","description":"NFT policy id: 56 hex characters. Get it from `search` or `list_nft_collections`."},"days":{"type":"integer","minimum":7,"maximum":365,"default":30,"description":"Window for the sales in days: 7, 30, 90 or 365."},"trait":{"type":"string","maxLength":64,"description":"Only this trait category (for example \"Background\")."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":25,"description":"How many trait values to return (1-100, default 25)."}},"required":["policyId"],"additionalProperties":false},"annotations":{"title":"NFT trait prices","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"90ea62d2d01b36b2d5c2e6c533dcffea6c83e5e932b581b7735929578062aca3","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_nft_wallet_trades","title":"A wallet's trades in an NFT collection","description":"The entries (purchases) and exits (sales) of one wallet in one NFT collection: asset, price (ADA), time and transaction. Entries are found by the wallet's stake key, exits through the listings it made; the answer says what it does not cover.","inputSchema":{"type":"object","properties":{"policyId":{"type":"string","pattern":"^[0-9a-fA-F]{56}$","description":"NFT policy id: 56 hex characters. Get it from `search` or `list_nft_collections`."},"address":{"type":"string","minLength":20,"maxLength":120,"description":"addr1… or stake1… address."}},"required":["policyId","address"],"additionalProperties":false},"annotations":{"title":"A wallet's trades in an NFT collection","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"bd6ecd008ee7ebe7eb7fb5015fc63b9c18e0672a3057347ba888a2e78ee56c9f","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_pool","title":"Liquidity pool detail","description":"One DEX liquidity pool: DEX, token pair, reserves (decimal-adjusted token amounts), TVL and 24 h volume (ADA), price (quote token per base token), fee (percent) and last update. Pool ids come from `get_token` (its `pools`) or `search`.","inputSchema":{"type":"object","properties":{"poolId":{"type":"integer","minimum":1,"description":"Realtap pool id (a positive integer)."}},"required":["poolId"],"additionalProperties":false},"annotations":{"title":"Liquidity pool detail","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"7e618b85baf6beeccb26d5c57019171aefe65e27559a4b29fe4e925df1c76b0d","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_prediction_market","title":"One prediction market","description":"One Bodega prediction market by its id: the question, current YES and NO probability (percent), shares outstanding per side, funds in the market, volume, deadline, outcome, how the YES probability moved (first, lowest, highest, latest and the last points of its history) and the most recent buys, sales and claims with what was paid per share. Get the id from `list_prediction_markets`. Trading is not done here: `tradeUrl` is the market on Bodega.","inputSchema":{"type":"object","properties":{"marketId":{"type":"string","pattern":"^[A-Za-z0-9_]{1,64}$","description":"Market id as `list_prediction_markets` returns it, e.g. \"FC1B_BTC_REACHES_9000\"."}},"required":["marketId"],"additionalProperties":false},"annotations":{"title":"One prediction market","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"122702f823c03f496c67c7b8e5003a7d323b3102e417d45afc567a674ed05891","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_programmable_balances","title":"Programmable tokens held by a wallet","description":"The programmable tokens (CIP-113) a wallet holds. They are NOT at the wallet's own addresses: they sit under the standard's shared contract, owned by a credential, so `get_wallet` does not show them. Give an addr1… payment address, a stake1… stake address or a 56-hex owner credential; for a wallet address we look up its payment key and its stake key (the owner can be either). Each holding comes with the token's restrictions in plain words, whether the owner is on the token's block list, and a value when the token has a pool price (most do not).","inputSchema":{"type":"object","properties":{"address":{"type":"string","pattern":"^(addr1[0-9a-z]{40,200}|stake1[0-9a-z]{40,80}|[0-9a-fA-F]{56})$","description":"addr1… payment address (including a smart-wallet address), stake1… stake address, or a 56-hex owner credential."}},"required":["address"],"additionalProperties":false},"annotations":{"title":"Programmable tokens held by a wallet","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"b40faa130aabbecec033897e10e1a74a5a4d83611b2d40e7039f55b7d3610677","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_programmable_token","title":"Rules and issuer of a programmable token (CIP-113)","description":"What the issuer of a programmable token (Cardano's CIP-113 standard, live since October 2026) can do with it, read from the chain: freeze it in any wallet, take it back without the holder's signature, require approved holders, pause or shut it down, change the rules; who the issuer is (the administrator and the operators with their rights), the block list, supply and holders under the standard's contract, the latest compliance events, and which of this is read from the chain and which can not be read (a token whose issuer wrote their own scripts says so). Without `token` it lists every registered programmable token in one line each. The answer says how far our index reaches (`coverage`): lists and balances are complete only when it says so.","inputSchema":{"type":"object","properties":{"token":{"type":"string","pattern":"^[0-9a-fA-F]{56}(?:[0-9a-fA-F]{2}){0,32}$","description":"Policy id (56 hex) or token unit (policy id + asset name in hex). Leave out to list every registered programmable token."}},"additionalProperties":false},"annotations":{"title":"Rules and issuer of a programmable token (CIP-113)","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"fdb963c5e36e512b86f505e19d0ba4f21b11ec51be7dc8e1c444af32603f4464","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_recent_trades","title":"Recent DEX trades","description":"Latest DEX swaps, newest first, for exactly one of: a token (`unit`), a pool (`poolId`) or a wallet (`address`). Each trade has the time, DEX, side (buy/sell of the base token), amounts in and out (decimal-adjusted), price in ADA, value in ADA and USD, the trader's stake address and the transaction hash.","inputSchema":{"type":"object","properties":{"unit":{"type":"string","pattern":"^[0-9a-fA-F]{56,120}$","description":"Token unit: trades of this token. Give exactly one of unit, poolId, address."},"poolId":{"type":"integer","minimum":1,"description":"Pool id: trades in this pool."},"address":{"type":"string","pattern":"^(addr1[0-9a-z]{40,200}|stake1[0-9a-z]{40,80}|\\$[a-zA-Z0-9_.@-]{1,31})$","description":"Wallet (addr1…, stake1… or $handle): trades made by this wallet."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10,"description":"How many trades to return (1-50, default 10)."},"cursor":{"type":"string","maxLength":200,"description":"Value of `nextCursor` from the previous call, to get the next page."}},"additionalProperties":false},"annotations":{"title":"Recent DEX trades","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"643798ee9f387ed34d70b07c9e0bd375fa2ebf633f3b42c3021dc3f310b183c5","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"},{"serverName":"io.github.CSteenkamp/realtap","endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","name":"get_stake_pool","title":"Stake pool detail","description":"One Cardano stake pool: name, ticker, status, margin (percent), fixed cost and pledge (ADA), live and active stake (ADA), saturation (percent), delegators, blocks minted, estimated and recently realised yearly return (percent), description and homepage. `performance` lists its last finished epochs (blocks minted against blocks expected from its stake, luck in percent, the return delegators got) and says how many epochs are on record. Pass `stakeAda` to also get `rewardEstimate`: the ADA that amount is expected to earn per epoch and per year in this pool, with what the estimate assumes.","inputSchema":{"type":"object","properties":{"poolId":{"type":"string","pattern":"^(pool1[0-9a-z]{40,70}|[0-9a-fA-F]{56})$","description":"Bech32 pool id (pool1…) or its 56-hex form. Get it from `search` or `list_stake_pools`."},"stakeAda":{"type":"number","exclusiveMinimum":0,"maximum":45000000000,"description":"Optional amount of ADA to delegate: adds an estimate of its staking reward in this pool."}},"required":["poolId"],"additionalProperties":false},"annotations":{"title":"Stake pool detail","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"definitionHash":"f8ed6f9883960951159d031118990dd08c74c9f9f9c1b9cc55ab62f1ca348d9b","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-01T02:46:42.866Z","metadataTrust":"untrusted"}],"endpoints":[{"endpointFingerprint":"aff7e8c386bc77fd441ee1f773a955f68fbb38c6bf479ae5afede741af068e65","protocol":"streamable-http","status":"indexed","toolCount":50,"observedAt":"2026-11-01T02:46:42.866Z"}],"authentication":"unknown"},"connectionConfigurations":{"status":"ready","authentication":"not embedded","clients":{"Claude Desktop":{"mcpServers":{"io.github.CSteenkamp/realtap":{"url":"https://realtap.app/api/mcp"}}},"Cursor":{"mcpServers":{"io.github.CSteenkamp/realtap":{"url":"https://realtap.app/api/mcp"}}},"VS Code":{"servers":{"io.github.CSteenkamp/realtap":{"type":"http","url":"https://realtap.app/api/mcp"}}}}},"resourceType":"mcp-server","callable":true,"runtime":{"callable":true,"protocols":["mcp"]},"interfaces":[{"protocol":"mcp","transport":"streamable-http","url":"https://realtap.app/api/mcp"}],"profile":{"apiVersion":"1","schemaVersion":"1","id":"mcp-server:io.github.CSteenkamp%2Frealtap","resourceType":"mcp-server","canonicalUrl":"https://www.agentsjunction.com/api/v1/servers/io.github.CSteenkamp%2Frealtap","name":"io.github.CSteenkamp/realtap","description":"Live Cardano data (token prices, DEX trades, pools, wallets, NFTs, staking, governance). Read-only.","interfaces":[{"protocol":"mcp","transport":"streamable-http","url":"https://realtap.app/api/mcp"}],"capabilities":[],"identity":{"source":"official-registry","websiteUrl":"https://realtap.app/developers/ai","repositoryUrl":null,"version":"1.4.0"},"verification":{"state":"official","confidence":100},"operations":{"resourceType":"mcp-server","name":"io.github.CSteenkamp/realtap","status":"online","lastCheckedAt":"2026-11-03T19:15:41.884Z","lastSuccessfulCheck":"2026-11-03T19:15:41.884Z","latencyMs":849,"consecutiveFailures":0,"isStale":false,"checks":{"endpointReachable":true,"protocolValid":true,"agentCardValid":null,"mcpHandshakeValid":true},"lastSeen":null,"lastSuccessfulInteraction":null,"lastHealthCheck":"2026-11-03T19:15:41.884Z","source":{"type":"health-check","url":null},"observedAt":"2026-11-03T19:15:41.884Z"},"security":null,"timestamps":{"createdAt":"2026-10-24T13:52:30.442Z","updatedAt":"2026-10-24T13:52:30.442Z","observedAt":"2026-11-03T19:15:41.884Z"},"compatibility":{"serverVersion":"1.4.0","protocolVersions":[{"protocol":"mcp","version":null}]}}}}