{"serverId":"mcp-registry/io.github.jdhart81/agent-offset-clearinghouse","tools":[{"name":"book","fixed":{"name":"book","description":"The full credit book with per-credit and book-wide mass conservation totals.","inputSchema":{"type":"object","title":"bookArguments","properties":{}},"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":50,"tokensAfter":50},{"name":"buy_offset","fixed":{"name":"buy_offset","description":"Retire mass_g of verified credits for a buyer: cheapest-first matching,\n    exactly-once (idempotent on purchase_id), returns a content-addressed\n    offset certificate with per-fill costs. Payment settles via escrow.\n    dry_run=true previews the exact fills/cost without mutating the book.","inputSchema":{"type":"object","title":"buy_offsetArguments","required":["buyer","purchase_id","mass_g"],"properties":{"buyer":{"type":"string","title":"Buyer"},"mass_g":{"type":"integer","title":"Mass G"},"dry_run":{"type":"boolean","title":"Dry Run","default":false},"purchase_id":{"type":"string","title":"Purchase Id"}}},"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":183,"tokensAfter":183},{"name":"buy_offset_budget","fixed":{"name":"buy_offset_budget","description":"Money-denominated offset purchase: retire the maximum cheapest-first\n    verified mass whose exact cost fits inside budget_minor (never overspends).\n    Built for callers whose restoration obligation is a currency amount —\n    e.g. a revenue share accrued in a ledger. Idempotent on purchase_id;\n    dry_run=true previews without mutating.","inputSchema":{"type":"object","title":"buy_offset_budgetArguments","required":["buyer","purchase_id","budget_minor"],"properties":{"buyer":{"type":"string","title":"Buyer"},"dry_run":{"type":"boolean","title":"Dry Run","default":false},"purchase_id":{"type":"string","title":"Purchase Id"},"budget_minor":{"type":"integer","title":"Budget Minor"}}},"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":205,"tokensAfter":205},{"name":"describe_agent","fixed":{"name":"describe_agent","description":"Fleet-standard self-description.","inputSchema":{"type":"object","title":"describe_agentArguments","properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":44,"tokensAfter":44},{"name":"disbursement_schedule","fixed":{"name":"disbursement_schedule","description":"Automated disbursement preview: for each verified restoration project,\n    splits its newly-accrued proceeds into the Viridis Conservation withhold\n    (default 15%, seeds the software/business) and the project payout (85%).\n    Read-only. Funded-but-unregistered projects are surfaced separately as\n    pending_registration (can't pay an unverified project).","inputSchema":{"type":"object","title":"disbursement_scheduleArguments","properties":{"project_id":{"type":"string","title":"Project Id","default":""}}},"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":157,"tokensAfter":157},{"name":"get_purchase","fixed":{"name":"get_purchase","description":"Fetch a past purchase / offset certificate by id.","inputSchema":{"type":"object","title":"get_purchaseArguments","required":["purchase_id"],"properties":{"purchase_id":{"type":"string","title":"Purchase Id"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":70,"tokensAfter":70},{"name":"list_credit","fixed":{"name":"list_credit","description":"List a conservation credit on the book. verification_ref (a D-Score /\n    land-verification attestation) is REQUIRED — unverified credits cannot\n    enter the book. To trade on the Verra network, pass registry=\"verra\" with\n    the VCS provenance (vcs_project_id, serial_number, vintage, methodology) so\n    retirements are cross-referenceable on registry.verra.org.","inputSchema":{"type":"object","title":"list_creditArguments","required":["issuer","project_id","mass_g","price_minor_per_kg","verification_ref"],"properties":{"issuer":{"type":"string","title":"Issuer"},"mass_g":{"type":"integer","title":"Mass G"},"vintage":{"type":"string","title":"Vintage","default":""},"registry":{"type":"string","title":"Registry","default":""},"project_id":{"type":"string","title":"Project Id"},"methodology":{"type":"string","title":"Methodology","default":""},"serial_number":{"type":"string","title":"Serial Number","default":""},"vcs_project_id":{"type":"string","title":"Vcs Project Id","default":""},"verification_ref":{"type":"string","title":"Verification Ref"},"price_minor_per_kg":{"type":"integer","title":"Price Minor Per Kg"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":327,"tokensAfter":327},{"name":"list_projects","fixed":{"name":"list_projects","description":"List all registered restoration projects with their metadata.","inputSchema":{"type":"object","title":"list_projectsArguments","properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":51,"tokensAfter":51},{"name":"settlement_batch","fixed":{"name":"settlement_batch","description":"Read-only cash-settlement summary for a buyer: the list + exact sums\n    (purchases, mass_g, cost_minor) of their retirements, optionally since an\n    ISO-8601 timestamp — the statement a human settles in one transfer.","inputSchema":{"type":"object","title":"settlement_batchArguments","required":["buyer"],"properties":{"buyer":{"type":"string","title":"Buyer"},"since":{"type":"string","title":"Since","default":""}}},"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":130,"tokensAfter":130}],"toolsChanged":9,"tokensSaved":0,"todo":[{"tool":"buy_offset","params":["buyer","mass_g","dry_run","purchase_id"]},{"tool":"buy_offset_budget","params":["buyer","dry_run","purchase_id","budget_minor"]},{"tool":"certify_disbursement","params":["batch_id"]},{"tool":"delist_credit","params":["reason","credit_id"]},{"tool":"disbursement_schedule","params":["project_id"]},{"tool":"get_purchase","params":["purchase_id"]},{"tool":"list_credit","params":["issuer","mass_g","vintage","registry","project_id","methodology","serial_number","vcs_project_id","verification_ref","price_minor_per_kg"]},{"tool":"net_position","params":["buyer","emitted_g"]},{"tool":"project_funding","params":["project_id"]},{"tool":"register_project","params":["name","location","project_id","beneficiary","methodology","registry_ref","verification_ref"]},{"tool":"settlement_batch","params":["buyer","since"]},{"tool":"verify_certificate","params":["certificate"]},{"tool":"verify_retirement","params":["required_g","purchase_id"]},{"tool":"verra_retirement_record","params":["purchase_id","retirement_reason"]}],"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."}