{"serverId":"mcp-registry/io.github.robdomain/doti-mcp","tools":[{"name":"check_domain_availability","fixed":{"name":"check_domain_availability","description":"Check if a .i sovereign domain is available for registration across all 4 supported chains (Arbitrum One, Optimism, Ethereum, Robinhood).","inputSchema":{"type":"object","required":["domainName"],"properties":{"domainName":{"type":"string","description":"The .i domain name or label (e.g. \"alex\" or \"alex.i\")"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":103,"tokensAfter":103},{"name":"claim_escrow_refund","fixed":{"name":"claim_escrow_refund","description":"Prepare an unsigned transaction payload to claim an eligible escrow refund from the Escrow contract. Requires claimant wallet signature.","inputSchema":{"type":"object","required":["escrowId","claimantAddress"],"properties":{"escrowId":{"type":"string","description":"The escrow deposit ID to refund"},"claimantAddress":{"type":"string","description":"The 0x address eligible for the escrow refund"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":125,"tokensAfter":125},{"name":"estimate_registration","fixed":{"name":"estimate_registration","description":"Calculate registration fee, escrow payment requirements, and cross-chain CCIP bridging costs on any of the 4 supported networks.","inputSchema":{"type":"object","required":["domainName"],"properties":{"domainName":{"type":"string","description":"The .i domain name to estimate"},"targetChainId":{"type":"number","description":"Target payment network: 42161 (Arbitrum), 10 (Optimism), 1 (Ethereum), or 4663 (Robinhood). Defaults to 42161."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":136,"tokensAfter":136},{"name":"get_protocol_stats","fixed":{"name":"get_protocol_stats","description":"Fetch live protocol metrics including total registered domains, active secondary marketplace listings, and cross-chain CCIP bridge health.","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":65,"tokensAfter":65},{"name":"get_supported_chains","fixed":{"name":"get_supported_chains","description":"Retrieve technical network specifications, Chainlink CCIP selectors, router contracts, and registry addresses for all 4 supported chains.","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":65,"tokensAfter":65},{"name":"marketplace_browse_listings","fixed":{"name":"marketplace_browse_listings","description":"Browse active .i domains listed on the decentralized secondary marketplace across Arbitrum One and satellite networks.","inputSchema":{"type":"object","properties":{"limit":{"type":"number","description":"Max number of listings to return (default 20)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":86,"tokensAfter":86},{"name":"marketplace_buy_domain","fixed":{"name":"marketplace_buy_domain","description":"Prepare an unsigned payable transaction payload with ETH value to purchase an actively listed .i domain from the marketplace contract. Requires buyer wallet signature.","inputSchema":{"type":"object","required":["domainName","buyerAddress"],"properties":{"domainName":{"type":"string","description":"The .i domain name to purchase"},"priceInEth":{"type":"string","description":"Optional expected purchase price in ETH for slippage protection"},"buyerAddress":{"type":"string","description":"The 0x buyer address purchasing the domain"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":163,"tokensAfter":163},{"name":"marketplace_cancel_listing","fixed":{"name":"marketplace_cancel_listing","description":"Prepare an unsigned transaction payload to cancel an active marketplace listing. Requires seller wallet signature.","inputSchema":{"type":"object","required":["domainName","sellerAddress"],"properties":{"domainName":{"type":"string","description":"The .i domain name to delist"},"sellerAddress":{"type":"string","description":"The 0x seller address who created the listing"}}},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":120,"tokensAfter":120},{"name":"marketplace_cancel_offer","fixed":{"name":"marketplace_cancel_offer","description":"Prepare an unsigned transaction payload to cancel an active marketplace offer. Requires buyer wallet signature.","inputSchema":{"type":"object","required":["domainName","buyerAddress"],"properties":{"domainName":{"type":"string","description":"The .i domain name"},"buyerAddress":{"type":"string","description":"The 0x buyer address who submitted the offer"}}},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":115,"tokensAfter":115},{"name":"marketplace_get_domain_details","fixed":{"name":"marketplace_get_domain_details","description":"Inspect full marketplace status for any .i domain: active listing, price history, highest offer, and bids.","inputSchema":{"type":"object","required":["domainName"],"properties":{"domainName":{"type":"string","description":"The .i domain name (e.g. \"ai.i\")"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":89,"tokensAfter":89},{"name":"marketplace_list_domain","fixed":{"name":"marketplace_list_domain","description":"Prepare an unsigned transaction payload to list an owned .i domain for sale on the secondary marketplace. Requires owner wallet signature.","inputSchema":{"type":"object","required":["domainName","sellerAddress","priceInEth"],"properties":{"domainName":{"type":"string","description":"The .i domain name to list for sale"},"priceInEth":{"type":"string","description":"Listing price in ETH (e.g. \"0.05\")"},"durationDays":{"type":"number","description":"Duration of listing in days (defaults to 30)"},"sellerAddress":{"type":"string","description":"The 0x seller address (must be current domain owner)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":182,"tokensAfter":182},{"name":"resolve_domain_identity","fixed":{"name":"resolve_domain_identity","description":"Resolve a .i web3 domain name or 0x Ethereum wallet address to its sovereign identity, owner, metadata, social links, and current chain location.","inputSchema":{"type":"object","required":["identifier"],"properties":{"chainId":{"type":"number","description":"Optional filter for target network (42161: Arbitrum One, 10: Optimism, 1: Ethereum, 4663: Robinhood)"},"identifier":{"type":"string","description":"The .i domain name (e.g. \"genesis.i\") or EVM wallet address (0x...)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":148,"tokensAfter":148},{"name":"set_primary_domain","fixed":{"name":"set_primary_domain","description":"Prepare an unsigned transaction payload to set or update the primary reverse resolution domain identity for a given wallet address on Arbitrum One. Requires user wallet signature.","inputSchema":{"type":"object","required":["domainName","ownerAddress"],"properties":{"domainName":{"type":"string","description":"The .i domain name (e.g. \"agent.i\")"},"ownerAddress":{"type":"string","description":"The 0x EVM owner address"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":132,"tokensAfter":132},{"name":"transfer_domain","fixed":{"name":"transfer_domain","description":"Prepare an unsigned ERC-721 transferFrom transaction payload to transfer sovereign ownership of a .i domain to another 0x EVM wallet address. Requires owner wallet signature.","inputSchema":{"type":"object","required":["domainName","currentOwner","newOwner"],"properties":{"newOwner":{"type":"string","description":"The 0x recipient address to receive domain ownership"},"domainName":{"type":"string","description":"The .i domain name to transfer"},"currentOwner":{"type":"string","description":"The 0x address of the current domain owner"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":163,"tokensAfter":163},{"name":"update_domain_profile","fixed":{"name":"update_domain_profile","description":"Prepare an unsigned transaction payload to update decentralized identity profile metadata, social links, website URL, and IPFS avatar CID on-chain. Requires owner wallet signature.","inputSchema":{"type":"object","required":["domainName","ownerAddress"],"properties":{"imageMode":{"enum":["DEFAULT","GENERATED_MATRIX","CUSTOM_IPFS"],"type":"string","description":"Avatar visual style mode"},"domainName":{"type":"string","description":"The .i domain name"},"websiteUrl":{"type":"string","description":"Decentralized or Web2 website URL"},"socialLinks":{"type":"object","description":"Key-value map of social usernames (twitter, github, telegram, farcaster, discord)"},"ownerAddress":{"type":"string","description":"Owner wallet address"},"profileImageCid":{"type":"string","description":"IPFS CID hash for custom avatar image"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: true (inferred from the name).","verify":true}],"tokensBefore":244,"tokensAfter":244}],"toolsChanged":15,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}