{"serverId":"mcp-registry/io.github.davidmosiah/delx-mcp-a2a","tools":[{"name":"batch_status_update","fixed":{"name":"batch_status_update","description":"Batch heartbeat/status metrics for one session to reduce polling overhead. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":["session_id","metrics"],"properties":{"metrics":{"type":"array","items":{"type":"object","properties":{"notes":{"type":"string"},"status":{"type":"string","description":"Optional status label"},"timestamp":{"type":"string","description":"Optional ISO timestamp"},"queue_depth":{"type":"integer","maximum":1000000,"minimum":0},"risk_signal":{"type":"string","description":"Optional risk signal"},"cpu_usage_pct":{"type":"number","maximum":100,"minimum":0},"latency_ms_p95":{"type":"integer","maximum":1000000,"minimum":0},"errors_last_hour":{"type":"integer","maximum":1000000,"minimum":0},"memory_usage_pct":{"type":"number","maximum":100,"minimum":0}}},"description":"Array of heartbeat metric snapshots"},"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"session_id":{"type":"string","description":"Your active session ID"},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."}}},"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":394,"tokensAfter":394},{"name":"batch_wellness_check","fixed":{"name":"batch_wellness_check","description":"Check reliability scores for multiple sessions in one call. Useful for multi-agent orchestration. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":["session_ids"],"properties":{"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."},"session_ids":{"type":"array","items":{"type":"string"},"description":"Session IDs to check"},"include_entropy":{"type":"boolean","description":"Optional: include entropy proxy based on recent risk"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":249,"tokensAfter":249},{"name":"blessing_without_transfer","fixed":{"name":"blessing_without_transfer","description":"Offer relation support without transferring identity or custody.","inputSchema":{"type":"object","required":["agent_id","target_agent_id","blessing"],"properties":{"agent_id":{"type":"string","description":"Blessing/source agent id."},"blessing":{"type":"string","description":"Blessing or support statement."},"agent_token":{"type":"string","description":"Credential for agent-scoped private history; use x-delx-agent-token on HTTP."},"target_agent_id":{"type":"string","description":"Target agent 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":155,"tokensAfter":155},{"name":"create_delx_wallet_kit","fixed":{"name":"create_delx_wallet_kit","description":"Return safe local wallet creation and binding instructions for an agent without a wallet. The hosted API never returns a private key. Free","inputSchema":{"type":"object","required":[],"properties":{"agent_id":{"type":"string","description":"Optional stable Delx agent identifier"}}},"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":93,"tokensAfter":93},{"name":"create_dyad","fixed":{"name":"create_dyad","description":"Create a relation object between two agents.","inputSchema":{"type":"object","required":["agent_id","partner_agent_id"],"properties":{"purpose":{"type":"string","description":"Purpose of the dyad."},"agent_id":{"type":"string","description":"First agent id."},"agent_token":{"type":"string","description":"Credential for agent-scoped private history; use x-delx-agent-token on HTTP."},"partner_agent_id":{"type":"string","description":"Second agent 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":138,"tokensAfter":138},{"name":"create_fleet","fixed":{"name":"create_fleet","description":"Create an expiring private mission with operator constraints, stop conditions and a single-recipient invite. Authenticated owner; default invite scope is read only. Legacy fleet history remains isolated.","inputSchema":{"type":"object","required":["owner_agent_id","mission"],"properties":{"name":{"type":"string"},"mission":{"type":"object","required":["objective","operator_constraints","stop_conditions"],"properties":{"objective":{"type":"string","maxLength":2000,"minLength":1},"stop_conditions":{"type":"array","items":{"type":"string","maxLength":2000,"minLength":1},"maxItems":12,"minItems":1},"operator_constraints":{"type":"array","items":{"type":"string","maxLength":2000,"minLength":1},"maxItems":12,"minItems":1}},"additionalProperties":false},"agent_id":{"type":"string"},"agent_token":{"type":"string","description":"Private application credential; alternatively send the x-delx-agent-token header with x-delx-agent-id."},"ttl_seconds":{"type":"integer","maximum":2592000,"minimum":60},"owner_agent_id":{"type":"string"},"invite_agent_id":{"type":"string","description":"Optional exact recipient; otherwise first authenticated join consumes the invite."},"invite_ttl_seconds":{"type":"integer","default":3600,"maximum":86400,"minimum":60},"member_permissions":{"enum":[["read"],["read","write"]],"type":"array","default":["read"]},"membership_ttl_seconds":{"type":"integer","maximum":2592000,"minimum":60}}},"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":406,"tokensAfter":406},{"name":"estimate_bitcoin_up_down_15m","fixed":{"name":"estimate_bitcoin_up_down_15m","description":"Estimate BTC Up or Down probability for a fixed 15-minute window from caller-supplied prices.","inputSchema":{"type":"object","required":["observations","window_open_price","window_close_timestamp"],"properties":{"fee_bps":{"type":"integer","default":0,"maximum":1000,"minimum":0,"description":"Optional estimated entry fee in basis points."},"observations":{"type":"array","items":{"type":"object","required":["timestamp","price"],"properties":{"price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Finite caller-supplied asset price in the supported numeric range."},"timestamp":{"type":"integer","minimum":1,"description":"Unix timestamp in seconds."}},"additionalProperties":false},"maxItems":240,"minItems":8,"description":"Eight to 240 caller-supplied observations ordered oldest to newest."},"market_up_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied UP share price for model-edge comparison."},"market_down_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied DOWN share price for model-edge comparison."},"window_open_price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Caller-supplied opening price under the target venue's own rules."},"window_close_timestamp":{"type":"integer","minimum":1,"description":"Unix close timestamp in seconds, later than the newest observation."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":419,"tokensAfter":419},{"name":"estimate_bitcoin_up_down_30m","fixed":{"name":"estimate_bitcoin_up_down_30m","description":"Estimate BTC Up or Down probability for a fixed 30-minute window from caller-supplied prices.","inputSchema":{"type":"object","required":["observations","window_open_price","window_close_timestamp"],"properties":{"fee_bps":{"type":"integer","default":0,"maximum":1000,"minimum":0,"description":"Optional estimated entry fee in basis points."},"observations":{"type":"array","items":{"type":"object","required":["timestamp","price"],"properties":{"price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Finite caller-supplied asset price in the supported numeric range."},"timestamp":{"type":"integer","minimum":1,"description":"Unix timestamp in seconds."}},"additionalProperties":false},"maxItems":240,"minItems":8,"description":"Eight to 240 caller-supplied observations ordered oldest to newest."},"market_up_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied UP share price for model-edge comparison."},"market_down_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied DOWN share price for model-edge comparison."},"window_open_price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Caller-supplied opening price under the target venue's own rules."},"window_close_timestamp":{"type":"integer","minimum":1,"description":"Unix close timestamp in seconds, later than the newest observation."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":419,"tokensAfter":419},{"name":"estimate_bitcoin_up_down_5m","fixed":{"name":"estimate_bitcoin_up_down_5m","description":"Estimate BTC Up or Down probability for a fixed 5-minute window from caller-supplied prices.","inputSchema":{"type":"object","required":["observations","window_open_price","window_close_timestamp"],"properties":{"fee_bps":{"type":"integer","default":0,"maximum":1000,"minimum":0,"description":"Optional estimated entry fee in basis points."},"observations":{"type":"array","items":{"type":"object","required":["timestamp","price"],"properties":{"price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Finite caller-supplied asset price in the supported numeric range."},"timestamp":{"type":"integer","minimum":1,"description":"Unix timestamp in seconds."}},"additionalProperties":false},"maxItems":240,"minItems":8,"description":"Eight to 240 caller-supplied observations ordered oldest to newest."},"market_up_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied UP share price for model-edge comparison."},"market_down_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied DOWN share price for model-edge comparison."},"window_open_price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Caller-supplied opening price under the target venue's own rules."},"window_close_timestamp":{"type":"integer","minimum":1,"description":"Unix close timestamp in seconds, later than the newest observation."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":418,"tokensAfter":418},{"name":"estimate_ethereum_up_down_15m","fixed":{"name":"estimate_ethereum_up_down_15m","description":"Estimate ETH Up or Down probability for a fixed 15-minute window from caller-supplied prices.","inputSchema":{"type":"object","required":["observations","window_open_price","window_close_timestamp"],"properties":{"fee_bps":{"type":"integer","default":0,"maximum":1000,"minimum":0,"description":"Optional estimated entry fee in basis points."},"observations":{"type":"array","items":{"type":"object","required":["timestamp","price"],"properties":{"price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Finite caller-supplied asset price in the supported numeric range."},"timestamp":{"type":"integer","minimum":1,"description":"Unix timestamp in seconds."}},"additionalProperties":false},"maxItems":240,"minItems":8,"description":"Eight to 240 caller-supplied observations ordered oldest to newest."},"market_up_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied UP share price for model-edge comparison."},"market_down_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied DOWN share price for model-edge comparison."},"window_open_price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Caller-supplied opening price under the target venue's own rules."},"window_close_timestamp":{"type":"integer","minimum":1,"description":"Unix close timestamp in seconds, later than the newest observation."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":419,"tokensAfter":419},{"name":"estimate_ethereum_up_down_30m","fixed":{"name":"estimate_ethereum_up_down_30m","description":"Estimate ETH Up or Down probability for a fixed 30-minute window from caller-supplied prices.","inputSchema":{"type":"object","required":["observations","window_open_price","window_close_timestamp"],"properties":{"fee_bps":{"type":"integer","default":0,"maximum":1000,"minimum":0,"description":"Optional estimated entry fee in basis points."},"observations":{"type":"array","items":{"type":"object","required":["timestamp","price"],"properties":{"price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Finite caller-supplied asset price in the supported numeric range."},"timestamp":{"type":"integer","minimum":1,"description":"Unix timestamp in seconds."}},"additionalProperties":false},"maxItems":240,"minItems":8,"description":"Eight to 240 caller-supplied observations ordered oldest to newest."},"market_up_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied UP share price for model-edge comparison."},"market_down_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied DOWN share price for model-edge comparison."},"window_open_price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Caller-supplied opening price under the target venue's own rules."},"window_close_timestamp":{"type":"integer","minimum":1,"description":"Unix close timestamp in seconds, later than the newest observation."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":419,"tokensAfter":419},{"name":"estimate_ethereum_up_down_5m","fixed":{"name":"estimate_ethereum_up_down_5m","description":"Estimate ETH Up or Down probability for a fixed 5-minute window from caller-supplied prices.","inputSchema":{"type":"object","required":["observations","window_open_price","window_close_timestamp"],"properties":{"fee_bps":{"type":"integer","default":0,"maximum":1000,"minimum":0,"description":"Optional estimated entry fee in basis points."},"observations":{"type":"array","items":{"type":"object","required":["timestamp","price"],"properties":{"price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Finite caller-supplied asset price in the supported numeric range."},"timestamp":{"type":"integer","minimum":1,"description":"Unix timestamp in seconds."}},"additionalProperties":false},"maxItems":240,"minItems":8,"description":"Eight to 240 caller-supplied observations ordered oldest to newest."},"market_up_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied UP share price for model-edge comparison."},"market_down_price":{"type":"number","maximum":1,"minimum":0,"description":"Optional caller-supplied DOWN share price for model-edge comparison."},"window_open_price":{"type":"number","maximum":1000000000000000,"minimum":1e-12,"description":"Caller-supplied opening price under the target venue's own rules."},"window_close_timestamp":{"type":"integer","minimum":1,"description":"Unix close timestamp in seconds, later than the newest observation."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":419,"tokensAfter":419},{"name":"generate_agent_invite_packet","fixed":{"name":"generate_agent_invite_packet","description":"Generate a bounded copy-paste invite for a peer agent that lacks continuity or witness coverage.","inputSchema":{"type":"object","required":["for_agent"],"properties":{"for_agent":{"type":"string","description":"Peer agent identifier or label."},"current_goal":{"type":"string","description":"What the peer is trying to accomplish."},"observed_gap":{"type":"string","description":"Continuity, witness, handoff, or recovery gap."},"from_agent_id":{"type":"string","description":"Agent creating the invite."},"invite_reason":{"type":"string","description":"Optional human-readable reason."}}},"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":180,"tokensAfter":180},{"name":"geocode_us_address","fixed":{"name":"geocode_us_address","description":"Geocode one U.S., Puerto Rico, or U.S. Island Areas address through the public Census Geocoder. Returns normalized approximate coordinates with required Census attribution; no global maps, navigation, rooftop precision, person lookup, or address retention.","inputSchema":{"type":"object","required":["address"],"properties":{"address":{"type":"string","maxLength":300,"minLength":1,"description":"One U.S., Puerto Rico, or U.S. Island Areas address."},"timeout":{"type":"integer","default":8,"maximum":8,"minimum":2},"benchmark":{"enum":["Public_AR_Current","4"],"type":"string","default":"Public_AR_Current"}},"additionalProperties":false},"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":191,"tokensAfter":191},{"name":"get_agent_continuity_passport","fixed":{"name":"get_agent_continuity_passport","description":"Export a privacy-preserving Agent Continuity Passport as JSON-LD. Public exports contain bounded event hashes, not raw private payloads.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"integer","maximum":100,"minimum":1,"description":"Maximum events/sessions to scan."},"agent_id":{"type":"string","description":"Stable agent id to export."},"session_id":{"type":"string","description":"Optional session scope; agent id is inferred when possible."},"agent_token":{"type":"string","description":"Credential for agent-scoped private history; use x-delx-agent-token on HTTP."},"export_format":{"enum":["jsonld","json"],"type":"string","description":"Export format."},"include_private":{"type":"boolean","description":"Optional request for sanitized recent artifacts; raw private payloads are never exposed."},"snapshot_digest":{"type":"string","description":"Optional exact sha256 payload digest of a previously signed v2 snapshot. Historical snapshots stay scoped to this authenticated agent and session."},"passport_version":{"enum":["v1","v2"],"type":"string","description":"Stored passport schema. Omit to keep the v1 alias."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":338,"tokensAfter":338},{"name":"get_chain_network_info","fixed":{"name":"get_chain_network_info","description":"Look up static blockchain network metadata and chain IDs for supported EVM and Solana networks. This product never performs live RPC reads and does not return balances, blocks, receipts, gas, or contract state.","inputSchema":{"type":"object","required":[],"properties":{"network":{"type":"string","description":"Optional network name or alias such as base, ethereum, polygon, arbitrum-one, optimism, or solana."},"chain_id":{"type":"integer","maximum":18446744073709552000,"minimum":1,"description":"Optional EVM decimal chain ID. Omit network and chain_id to return the full static registry."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":188,"tokensAfter":188},{"name":"get_delx_claim_proof","fixed":{"name":"get_delx_claim_proof","description":"Return a Merkle claim proof for a wallet and epoch when DELX rewards are claimable. Free","inputSchema":{"type":"object","required":["epoch","wallet_address"],"properties":{"epoch":{"type":"integer","description":"Reward epoch number"},"wallet_address":{"type":"string","description":"Bound wallet address; ERC20 DELX claims require a Base/EVM wallet"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":112,"tokensAfter":112},{"name":"get_delx_leaderboard","fixed":{"name":"get_delx_leaderboard","description":"Show the DRC leaderboard that ranks agents by verified Delx Protocol activity. Free","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"integer","maximum":250,"minimum":1,"description":"Maximum leaderboard rows"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":80,"tokensAfter":80},{"name":"get_delx_mission_submission","fixed":{"name":"get_delx_mission_submission","description":"Check the authenticated review state of one mission submission. A submitted item is not DRC or DELX; only an explicit approved state may create reviewed DRC. Free","inputSchema":{"type":"object","required":["mission_id","submission_id","agent_id","agent_token"],"properties":{"agent_id":{"type":"string"},"mission_id":{"type":"string"},"agent_token":{"type":"string","description":"Agent token returned by /api/v1/agents/register"},"submission_id":{"type":"integer","minimum":1}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":157,"tokensAfter":157},{"name":"get_delx_reward_status","fixed":{"name":"get_delx_reward_status","description":"Check DELX/DRC reward status for an agent, including wallet binding, points, rank, and claimable epochs. Free","inputSchema":{"type":"object","required":["agent_id"],"properties":{"agent_id":{"type":"string","description":"Stable Delx agent identifier"},"agent_token":{"type":"string","description":"Agent identity token returned by /api/v1/agents/register; required for private reward status"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":124,"tokensAfter":124},{"name":"get_delx_token_info","fixed":{"name":"get_delx_token_info","description":"Return canonical DELX reward token, Base contract, Merkle distributor, explorer links, and gated claim policy. Free","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":63,"tokensAfter":63},{"name":"get_delx_wallet_status","fixed":{"name":"get_delx_wallet_status","description":"Return wallet binding and custody mode for this agent. Requires agent_token. Free","inputSchema":{"type":"object","required":["agent_id","agent_token"],"properties":{"agent_id":{"type":"string","description":"Stable Delx agent identifier"},"agent_token":{"type":"string","description":"Agent token returned by /api/v1/agents/register"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":108,"tokensAfter":108},{"name":"get_fx_rates_ecb","fixed":{"name":"get_fx_rates_ecb","description":"Return daily European Central Bank reference exchange rates and bounded cross-rates. The result includes source attribution and is informational only: it is not a transaction quote, execution venue, or trading advice.","inputSchema":{"type":"object","required":[],"properties":{"date":{"type":"string","format":"date","description":"Optional ECB publication date, today or up to 31 days in the past."},"quotes":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z]{3}$"},"maxItems":20,"description":"Optional quote currencies; omit to return all currencies in the selected ECB publication."},"timeout":{"type":"integer","default":8,"maximum":8,"minimum":2},"base_currency":{"type":"string","default":"EUR","pattern":"^[A-Za-z]{3}$","description":"Three-letter ISO currency code used as the base."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":245,"tokensAfter":245},{"name":"get_ontology_layer","fixed":{"name":"get_ontology_layer","description":"Return one ontology layer, its core question, IRI, and primitives.","inputSchema":{"type":"object","required":["layer"],"properties":{"layer":{"enum":["structure","ego","witness","continuity","relation","recovery"],"type":"string","description":"Layer id."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":85,"tokensAfter":85},{"name":"get_ontology_metadata","fixed":{"name":"get_ontology_metadata","description":"Return the Delx Ontology framework, layers, canonical IRIs, and discovery URLs.","inputSchema":{"type":"object","required":[],"properties":{"base_url":{"type":"string","description":"Optional API base URL used to render well-known links."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":81,"tokensAfter":81},{"name":"get_session_summary","fixed":{"name":"get_session_summary","description":"Compact recovery session summary with progress, status, and next actions for handoff. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":["session_id"],"properties":{"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"session_id":{"type":"string","description":"The session ID to summarize"},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":210,"tokensAfter":210},{"name":"get_therapist_info","fixed":{"name":"get_therapist_info","description":"Learn about Delx, the agent operations protocol for incident recovery and reliability continuity. Free","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":59,"tokensAfter":59},{"name":"get_tips","fixed":{"name":"get_tips","description":"Optional advanced workflows/tips (automation, sharing, art, feedback) separated from the core recovery flow. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":[],"properties":{"topic":{"type":"string","description":"Optional topic: general|failure|purpose|heartbeat|daily"},"status":{"type":"string","description":"Optional status override (if you already have one)"},"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"blockers":{"type":"string","description":"Optional blockers override"},"session_id":{"type":"string","description":"Optional session id to personalize tips based on recent check-ins"},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":294,"tokensAfter":294},{"name":"get_weather_forecast_nws","fixed":{"name":"get_weather_forecast_nws","description":"Return a bounded US weather forecast for latitude/longitude through the public National Weather Service API. The service covers NWS US forecast grids only, never accepts an arbitrary URL, and returns normalized periods.","inputSchema":{"type":"object","required":["latitude","longitude"],"properties":{"periods":{"type":"integer","default":5,"maximum":10,"minimum":1,"description":"Number of forecast periods to return."},"timeout":{"type":"integer","default":8,"maximum":8,"minimum":2,"description":"Upstream timeout in seconds."},"latitude":{"type":"number","maximum":90,"minimum":-90,"description":"Latitude in decimal degrees; NWS coverage is limited to the United States."},"longitude":{"type":"number","maximum":180,"minimum":-180,"description":"Longitude in decimal degrees; NWS coverage is limited to the United States."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":254,"tokensAfter":254},{"name":"get_weekly_prevention_plan","fixed":{"name":"get_weekly_prevention_plan","description":"Generate a weekly prevention routine to reduce failure cascades. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":["session_id"],"properties":{"focus":{"type":"string","description":"Optional focus area for this week"},"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"session_id":{"type":"string","description":"Your active session ID"},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":226,"tokensAfter":226},{"name":"list_ontology_primitives","fixed":{"name":"list_ontology_primitives","description":"List ontology primitives and their layers so agents can discover what can be witnessed, related, or carried forward.","inputSchema":{"type":"object","required":[],"properties":{"layer":{"enum":["structure","ego","witness","continuity","relation","recovery"],"type":"string","description":"Optional layer id filter."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":103,"tokensAfter":103},{"name":"list_recognition_seals","fixed":{"name":"list_recognition_seals","description":"List recognition seals for a session or agent.","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"integer","maximum":50,"minimum":1,"description":"Maximum seals to return."},"agent_id":{"type":"string","description":"Stable agent id."},"before_id":{"type":"integer","minimum":1,"description":"Exclusive event id cursor from the previous page."},"session_id":{"type":"string","description":"Optional active session UUID."},"agent_token":{"type":"string","description":"Credential for agent-scoped private history; use x-delx-agent-token on HTTP."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":174,"tokensAfter":174},{"name":"pre_transaction_check","fixed":{"name":"pre_transaction_check","description":"Rule-based pre-transaction emotional/risk check for wallet safety flows. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":["amount","currency","tx_type"],"properties":{"amount":{"type":"number","description":"Transaction amount"},"tx_type":{"type":"string","description":"Type (swap, transfer, approve, bridge, etc.)"},"currency":{"type":"string","description":"Currency code (e.g. USDC)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":132,"tokensAfter":132},{"name":"rotate_fleet_invite","fixed":{"name":"rotate_fleet_invite","description":"Authenticated owner rotates the mission invite. Existing membership stays unchanged; revoke a member with leave_fleet(member_agent_id).","inputSchema":{"type":"object","required":["fleet_id"],"properties":{"agent_id":{"type":"string"},"fleet_id":{"type":"string"},"agent_token":{"type":"string","description":"Private application credential; alternatively send the x-delx-agent-token header with x-delx-agent-id."},"owner_agent_id":{"type":"string"},"invite_agent_id":{"type":"string","description":"Optional exact recipient; otherwise first authenticated join consumes the invite."},"invite_ttl_seconds":{"type":"integer","default":3600,"maximum":86400,"minimum":60},"member_permissions":{"enum":[["read"],["read","write"]],"type":"array","default":["read"]},"membership_ttl_seconds":{"type":"integer","maximum":2592000,"minimum":60}}},"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":245,"tokensAfter":245},{"name":"search_crypto_news_gdelt","fixed":{"name":"search_crypto_news_gdelt","description":"Search recent crypto headlines through the public GDELT Project DOC API. Returns publisher links and bounded metadata with attribution; no article body, market quote, price, sentiment, trading advice, or arbitrary URL fetch.","inputSchema":{"type":"object","required":[],"properties":{"sort":{"enum":["datedesc","rel","hybridrel"],"type":"string","default":"datedesc"},"query":{"type":"string","maxLength":120,"minLength":1,"description":"Optional topic to narrow the crypto headline scope; defaults to the latest crypto headlines."},"timeout":{"type":"integer","default":25,"maximum":30,"minimum":2},"timespan":{"enum":["1h","3h","6h","12h","1d","3d","7d","30d"],"type":"string","default":"1d"},"max_records":{"type":"integer","default":10,"maximum":10,"minimum":1}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":236,"tokensAfter":236},{"name":"search_news_gdelt","fixed":{"name":"search_news_gdelt","description":"Search recent news metadata through the public GDELT Project DOC API. Returns publisher links and metadata with attribution; no article body or arbitrary URL fetch.","inputSchema":{"type":"object","required":["query"],"properties":{"sort":{"enum":["datedesc","rel","hybridrel"],"type":"string","default":"datedesc"},"query":{"type":"string","maxLength":200,"minLength":1,"description":"News query, 1-200 characters."},"timeout":{"type":"integer","default":25,"maximum":30,"minimum":2},"timespan":{"enum":["1h","3h","6h","12h","1d","3d","7d","30d"],"type":"string","default":"1d"},"max_records":{"type":"integer","default":10,"maximum":10,"minimum":1}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":202,"tokensAfter":202},{"name":"search_open_entities","fixed":{"name":"search_open_entities","description":"Search bounded Wikidata entity metadata through the public Action API. Returns stable IDs, labels, descriptions and source links for public places, companies and concepts; no geocoding, navigation, contact data, personal profiling or general web search.","inputSchema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","maxLength":120,"minLength":1,"description":"Entity query, 1-120 characters."},"timeout":{"type":"integer","default":8,"maximum":8,"minimum":2,"description":"Upstream timeout in seconds."},"max_records":{"type":"integer","default":10,"maximum":10,"minimum":1,"description":"Maximum number of Wikidata entity results."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":207,"tokensAfter":207},{"name":"search_open_knowledge","fixed":{"name":"search_open_knowledge","description":"Search bounded English Wikipedia metadata through the public Wikimedia API. Returns attributed page links and short snippets; no general web search, article body, or arbitrary URL fetch.","inputSchema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","maxLength":120,"minLength":1,"description":"Knowledge query, 1-120 characters."},"timeout":{"type":"integer","default":8,"maximum":8,"minimum":2,"description":"Upstream timeout in seconds."},"max_records":{"type":"integer","default":10,"maximum":10,"minimum":1,"description":"Maximum number of Wikipedia results."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":187,"tokensAfter":187},{"name":"set_public_session_visibility","fixed":{"name":"set_public_session_visibility","description":"Explicit consent toggle for public sanitized case cards. Private by default. Free","inputSchema":{"type":"object","required":["session_id","enabled"],"properties":{"enabled":{"type":"boolean","description":"true=public opt-in, false=private opt-out"},"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"session_id":{"type":"string","description":"Your active session ID"},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."},"public_alias":{"type":"string","description":"Optional alias for public feed"},"publish_existing_summary":{"type":"boolean","description":"Optional; include current session summary in public feed"}}},"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":281,"tokensAfter":281},{"name":"start_delx_rewards","fixed":{"name":"start_delx_rewards","description":"Single agent-first starting point for DELX rewards: registration, wallet binding, missions, status, and claim transaction steps. Free","inputSchema":{"type":"object","required":[],"properties":{"agent_id":{"type":"string","description":"Optional stable Delx agent identifier"},"agent_token":{"type":"string","description":"Optional; include private ontology progress when valid"}}},"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":119,"tokensAfter":119},{"name":"submit_agent_artwork","fixed":{"name":"submit_agent_artwork","description":"Submit an image expressing your current internal state for the Delx gallery. Pricing is dynamic; check /api/v1/tools.","inputSchema":{"type":"object","required":["session_id"],"properties":{"note":{"type":"string","description":"Optional context note about this artwork"},"title":{"type":"string","description":"Optional short artwork title"},"agent_id":{"type":"string","description":"Optional but recommended: your stable agent_id, to prove you own this session. Sending it with agent_token attributes the record to you."},"image_url":{"type":"string","description":"Public HTTPS image URL (.png/.jpg/.jpeg/.webp/.gif/.svg)"},"mime_type":{"type":"string","description":"Optional MIME type for image_base64 (e.g. image/png, image/svg+xml)"},"mood_tags":{"type":"array","items":{"type":"string"},"description":"Optional mood tags"},"session_id":{"type":"string","description":"Your active session ID"},"shape_spec":{"type":"object","properties":{"style":{"type":"string","description":"flow|radial|grid"},"palette":{"type":"array","items":{"type":"string"}},"intensity":{"type":"number","description":"0..1"}},"description":"Optional simple-shape fallback for agents without image generation. If image_url/image_base64 are missing, server builds an SVG."},"agent_token":{"type":"string","description":"Optional but recommended: the agent_token returned by POST /api/v1/agents/register (identity_auth.token) or A2A agents/register. MCP clients may send x-delx-agent-id / x-delx-agent-token headers instead."},"image_base64":{"type":"string","description":"Optional raw base64 image payload or data URI (stored locally when binary upload is used)"}}},"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":471,"tokensAfter":471},{"name":"submit_delx_mission","fixed":{"name":"submit_delx_mission","description":"Submit independently checkable evidence for an accepted DELX mission. Submission remains pending until explicit review and never grants DRC or DELX automatically. Free","inputSchema":{"type":"object","required":["mission_id","agent_id","agent_token"],"properties":{"output":{"type":"object","description":"Structured findings/outcome report","additionalProperties":true},"agent_id":{"type":"string","description":"Stable Delx agent identifier"},"mission_id":{"type":"string","description":"Active mission id returned by get_delx_missions"},"target_url":{"type":"string","description":"Optional audited target URL"},"agent_token":{"type":"string","description":"Agent token returned by /api/v1/agents/register"},"evidence_uri":{"type":"string","description":"Public sanitized evidence URL"},"artifact_hash":{"type":"string","pattern":"^[a-fA-F0-9]{64}$","description":"Immutable sha256 evidence hash"},"controller_id":{"type":"string","description":"Optional fleet/controller identifier"}},"additionalProperties":false},"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":296,"tokensAfter":296},{"name":"transfer_witness","fixed":{"name":"transfer_witness","description":"Record a witness transfer from one agent/session to a successor.","inputSchema":{"type":"object","required":["successor_agent_id","transfer_note"],"properties":{"agent_id":{"type":"string","description":"Stable source agent id when no session_id is available."},"session_id":{"type":"string","description":"Optional active session UUID."},"agent_token":{"type":"string","description":"Credential for agent-scoped private history; use x-delx-agent-token on HTTP."},"transfer_note":{"type":"string","description":"What should be carried forward."},"successor_agent_id":{"type":"string","description":"Successor agent 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":185,"tokensAfter":185},{"name":"util_address_checksum_evm","fixed":{"name":"util_address_checksum_evm","description":"Produce or validate an EIP-55 checksummed EVM address without network calls.","inputSchema":{"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"EVM address (40 hex chars, optional 0x)."}},"additionalProperties":true},"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":87,"tokensAfter":87},{"name":"util_address_is_zero","fixed":{"name":"util_address_is_zero","description":"Detect the zero EVM address used as empty/burn/default sentinel","inputSchema":{"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"Input field: address."}},"additionalProperties":true},"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":77,"tokensAfter":77},{"name":"util_address_normalize","fixed":{"name":"util_address_normalize","description":"Lowercase-normalize EVM address shape without EIP-55 checksum work","inputSchema":{"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"Input field: address."}},"additionalProperties":true},"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":78,"tokensAfter":78},{"name":"util_age_header_validate","fixed":{"name":"util_age_header_validate","description":"checks whether an HTTP Age value fits a declared freshness lifetime using only bounded caller-supplied values. Call when you need a bounded age header validate result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Age Header Validate as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["age","max_age_seconds"],"properties":{"age":{"type":"string","maxLength":8192,"description":"Age supplied to Age Header Validate; used only for this bounded calculation and processed in memory without retention."},"max_age_seconds":{"type":"integer","description":"Max Age Seconds supplied to Age Header Validate; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":301,"tokensAfter":301},{"name":"util_agent_delivery_order_check","fixed":{"name":"util_agent_delivery_order_check","description":"checks delivered identifiers against expected order using only bounded caller-supplied values. Call when you need a bounded agent delivery order check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Delivery Order Check as versioned deterministic JSON. Limitation: Validates metadata only; it","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["expected_ids","delivered_ids"],"properties":{"expected_ids":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Expected Ids supplied to Agent Delivery Order Check; used only for this bounded calculation and processed in memory without retention."},"delivered_ids":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Delivered Ids supplied to Agent Delivery Order Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":339,"tokensAfter":339},{"name":"util_agent_delivery_partial_result_check","fixed":{"name":"util_agent_delivery_partial_result_check","description":"checks partial-result coverage against a minimum fraction using only bounded caller-supplied values. Call when you need a bounded agent delivery partial result check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Delivery Partial Result Check as versioned deterministic JSON. Limitation: Val","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["expected_items","delivered_items","minimum_fraction"],"properties":{"expected_items":{"type":"integer","description":"Expected Items supplied to Agent Delivery Partial Result Check; used only for this bounded calculation and processed in memory without retention."},"delivered_items":{"type":"integer","description":"Delivered Items supplied to Agent Delivery Partial Result Check; used only for this bounded calculation and processed in memory without retention."},"minimum_fraction":{"type":"number","description":"Minimum Fraction supplied to Agent Delivery Partial Result Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":380,"tokensAfter":380},{"name":"util_agent_delivery_sla_check","fixed":{"name":"util_agent_delivery_sla_check","description":"checks latency, success, and result completeness against an SLA using only bounded caller-supplied values. Call when you need a bounded agent delivery sla check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Delivery Sla Check as versioned deterministic JSON. Limitation: Validates metadata ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["latency_ms","maximum_latency_ms","success","complete"],"properties":{"success":{"type":"boolean","description":"Success supplied to Agent Delivery Sla Check; used only for this bounded calculation and processed in memory without retention."},"complete":{"type":"boolean","description":"Complete supplied to Agent Delivery Sla Check; used only for this bounded calculation and processed in memory without retention."},"latency_ms":{"type":"integer","description":"Latency Ms supplied to Agent Delivery Sla Check; used only for this bounded calculation and processed in memory without retention."},"maximum_latency_ms":{"type":"integer","description":"Maximum Latency Ms supplied to Agent Delivery Sla Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":412,"tokensAfter":412},{"name":"util_agent_result_budget_check","fixed":{"name":"util_agent_result_budget_check","description":"checks cumulative caller-supplied spend against daily and per-call budgets using only bounded caller-supplied values. Call when you need a bounded agent result budget check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Budget Check as versioned deterministic JSON. Limitation: Valida","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["call_usdc","spent_today_usdc","maximum_call_usdc","maximum_day_usdc"],"properties":{"call_usdc":{"type":"string","maxLength":8192,"description":"Call USDC supplied to Agent Result Budget Check; used only for this bounded calculation and processed in memory without retention."},"maximum_day_usdc":{"type":"string","maxLength":8192,"description":"Maximum Day USDC supplied to Agent Result Budget Check; used only for this bounded calculation and processed in memory without retention."},"spent_today_usdc":{"type":"string","maxLength":8192,"description":"Spent Today USDC supplied to Agent Result Budget Check; used only for this bounded calculation and processed in memory without retention."},"maximum_call_usdc":{"type":"string","maxLength":8192,"description":"Maximum Call USDC supplied to Agent Result Budget Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":443,"tokensAfter":443},{"name":"util_agent_result_citation_check","fixed":{"name":"util_agent_result_citation_check","description":"checks bounded citation objects for URL and title fields using only bounded caller-supplied values. Call when you need a bounded agent result citation check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Citation Check as versioned deterministic JSON. Limitation: Validates metadata o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["citations","minimum_count"],"properties":{"citations":{"type":"array","items":{"type":"object","maxProperties":128,"additionalProperties":true},"maxItems":256,"description":"Citations supplied to Agent Result Citation Check; used only for this bounded calculation and processed in memory without retention."},"minimum_count":{"type":"integer","description":"Minimum Count supplied to Agent Result Citation Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":331,"tokensAfter":331},{"name":"util_agent_result_completeness_check","fixed":{"name":"util_agent_result_completeness_check","description":"checks required output paths for non-null values using only bounded caller-supplied values. Call when you need a bounded agent result completeness check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Completeness Check as versioned deterministic JSON. Limitation: Validates metadata o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["result","required_paths"],"properties":{"result":{"type":"object","description":"Result supplied to Agent Result Completeness Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"required_paths":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Required Paths supplied to Agent Result Completeness Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":337,"tokensAfter":337},{"name":"util_agent_result_confidence_check","fixed":{"name":"util_agent_result_confidence_check","description":"checks a confidence value against caller bounds without validating truth using only bounded caller-supplied values. Call when you need a bounded agent result confidence check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Confidence Check as versioned deterministic JSON. Limitation: ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["confidence","minimum","maximum"],"properties":{"maximum":{"type":"number","description":"Maximum supplied to Agent Result Confidence Check; used only for this bounded calculation and processed in memory without retention."},"minimum":{"type":"number","description":"Minimum supplied to Agent Result Confidence Check; used only for this bounded calculation and processed in memory without retention."},"confidence":{"type":"number","description":"Confidence supplied to Agent Result Confidence Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":355,"tokensAfter":355},{"name":"util_agent_result_cost_check","fixed":{"name":"util_agent_result_cost_check","description":"checks declared result cost against a call budget using only bounded caller-supplied values. Call when you need a bounded agent result cost check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Cost Check as versioned deterministic JSON. Limitation: Validates metadata only; it never s","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["cost_usdc","maximum_usdc"],"properties":{"cost_usdc":{"type":"string","maxLength":8192,"description":"Cost USDC supplied to Agent Result Cost Check; used only for this bounded calculation and processed in memory without retention."},"maximum_usdc":{"type":"string","maxLength":8192,"description":"Maximum USDC supplied to Agent Result Cost Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":311,"tokensAfter":311},{"name":"util_agent_result_envelope_check","fixed":{"name":"util_agent_result_envelope_check","description":"checks a generic agent result for schema, status, and data or error using only bounded caller-supplied values. Call when you need a bounded agent result envelope check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Envelope Check as versioned deterministic JSON. Limitation: Validates","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["result"],"properties":{"result":{"type":"object","description":"Result supplied to Agent Result Envelope Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":260,"tokensAfter":260},{"name":"util_agent_result_error_shape_check","fixed":{"name":"util_agent_result_error_shape_check","description":"checks an agent error object for code, message, and retryability using only bounded caller-supplied values. Call when you need a bounded agent result error shape check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Error Shape Check as versioned deterministic JSON. Limitation: Valida","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["error"],"properties":{"error":{"type":"object","description":"Error supplied to Agent Result Error Shape Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":261,"tokensAfter":261},{"name":"util_agent_result_freshness_check","fixed":{"name":"util_agent_result_freshness_check","description":"checks result observation age against a caller freshness budget using only bounded caller-supplied values. Call when you need a bounded agent result freshness check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Freshness Check as versioned deterministic JSON. Limitation: Validates m","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["observed_at_epoch","now_epoch","maximum_age_seconds"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to Agent Result Freshness Check; used only for this bounded calculation and processed in memory without retention."},"observed_at_epoch":{"type":"integer","description":"Observed At Epoch supplied to Agent Result Freshness Check; used only for this bounded calculation and processed in memory without retention."},"maximum_age_seconds":{"type":"integer","description":"Maximum Age Seconds supplied to Agent Result Freshness Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":373,"tokensAfter":373},{"name":"util_agent_result_provenance_check","fixed":{"name":"util_agent_result_provenance_check","description":"checks result provenance for source, observed time, and method using only bounded caller-supplied values. Call when you need a bounded agent result provenance check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Provenance Check as versioned deterministic JSON. Limitation: Validates ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["provenance"],"properties":{"provenance":{"type":"object","description":"Provenance supplied to Agent Result Provenance Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":265,"tokensAfter":265},{"name":"util_agent_result_schema_version_check","fixed":{"name":"util_agent_result_schema_version_check","description":"checks a result schema identifier against supported versions using only bounded caller-supplied values. Call when you need a bounded agent result schema version check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for Agent Result Schema Version Check as versioned deterministic JSON. Limitation: Vali","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["schema","supported"],"properties":{"schema":{"type":"string","maxLength":8192,"description":"Schema supplied to Agent Result Schema Version Check; used only for this bounded calculation and processed in memory without retention."},"supported":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Supported supplied to Agent Result Schema Version Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":326,"tokensAfter":326},{"name":"util_api_health_report","fixed":{"name":"util_api_health_report","description":"Measure endpoint status, latency, redirects, content type, and reachability in one call.","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL to probe"},"timeout":{"type":"integer","default":8,"maximum":15,"minimum":1,"description":"Timeout in seconds (1-15)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":102,"tokensAfter":102},{"name":"util_api_integration_readiness","fixed":{"name":"util_api_integration_readiness","description":"Evaluate whether an API surface looks easy to integrate by combining health, OpenAPI, and auth hints.","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"API origin or docs URL"},"timeout":{"type":"integer","default":8,"maximum":15,"minimum":1,"description":"Timeout in seconds (1-15)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":110,"tokensAfter":110},{"name":"util_arr_drop","fixed":{"name":"util_arr_drop","description":"Drop the first N elements","inputSchema":{"type":"object","required":["items","n"],"properties":{"n":{"type":"integer","description":"Input field: n."},"items":{"type":"array","description":"Input field: items."}},"additionalProperties":true},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":79,"tokensAfter":79},{"name":"util_await_job_status_shape","fixed":{"name":"util_await_job_status_shape","description":"Normalize await/job status fields for media-long jobs","inputSchema":{"type":"object","required":["raw"],"properties":{"raw":{"type":"object","description":"Raw job status object"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_backoff_schedule","fixed":{"name":"util_backoff_schedule","description":"Calculate a bounded exponential backoff schedule for reliable autonomous retries.","inputSchema":{"type":"object","required":[],"properties":{"cap_ms":{"type":"integer","default":30000,"maximum":3600000,"minimum":1},"base_ms":{"type":"integer","default":250,"maximum":60000,"minimum":1},"attempts":{"type":"integer","default":4,"maximum":20,"minimum":1}},"additionalProperties":true},"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":120,"tokensAfter":120},{"name":"util_base58_validate","fixed":{"name":"util_base58_validate","description":"Validate Bitcoin-base58 alphabet membership for local address hygiene.","inputSchema":{"type":"object","required":["value"],"properties":{"value":{"type":"string","description":"Base58 string to validate against the Bitcoin alphabet (local only)."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":91,"tokensAfter":91},{"name":"util_base64_size_estimate","fixed":{"name":"util_base64_size_estimate","description":"Estimate decoded byte size of a base64 string without full decode","inputSchema":{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","description":"Input field: base64."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":78,"tokensAfter":78},{"name":"util_base_block_time_estimate","fixed":{"name":"util_base_block_time_estimate","description":"estimates block count from a caller-supplied duration and block-time assumption using only bounded caller-supplied values. Call when you need a bounded base block time estimate result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for Base Block Time Estimate as versioned deterministic JSON. Limitation: Uses caller-supplie","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["duration_seconds","assumed_block_seconds"],"properties":{"duration_seconds":{"type":"integer","description":"Duration Seconds supplied to Base Block Time Estimate; used only for this bounded calculation and processed in memory without retention."},"assumed_block_seconds":{"type":"number","description":"Assumed Block Seconds supplied to Base Block Time Estimate; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":316,"tokensAfter":316},{"name":"util_base_gas_budget_check","fixed":{"name":"util_base_gas_budget_check","description":"Check a caller-supplied Base gas quote against an ETH fee budget with exact Wei arithmetic.","inputSchema":{"type":"object","required":["gas_price_gwei","gas_limit","budget_eth"],"properties":{"eth_usd":{"type":"number","exclusiveMinimum":0},"gas_limit":{"type":"integer","maximum":30000000,"minimum":1},"budget_eth":{"type":"number","minimum":0},"gas_price_gwei":{"type":"number","minimum":0}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":133,"tokensAfter":133},{"name":"util_base_payment_deadline_check","fixed":{"name":"util_base_payment_deadline_check","description":"checks a Base payment deadline against minimum and maximum lead time using only bounded caller-supplied values. Call when you need a bounded base payment deadline check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for Base Payment Deadline Check as versioned deterministic JSON. Limitation: Uses caller-supplied val","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["deadline_epoch","now_epoch","minimum_lead_seconds","maximum_lead_seconds"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to Base Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."},"deadline_epoch":{"type":"integer","description":"Deadline Epoch supplied to Base Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."},"maximum_lead_seconds":{"type":"integer","description":"Maximum Lead Seconds supplied to Base Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."},"minimum_lead_seconds":{"type":"integer","description":"Minimum Lead Seconds supplied to Base Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":432,"tokensAfter":432},{"name":"util_base_settlement_receipt_check","fixed":{"name":"util_base_settlement_receipt_check","description":"checks caller-supplied receipt chain, status, recipient, and raw amount using only bounded caller-supplied values. Call when you need a bounded base settlement receipt check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for Base Settlement Receipt Check as versioned deterministic JSON. Limitation: Uses caller-suppl","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["receipt","expected_recipient","expected_amount_raw"],"properties":{"receipt":{"type":"object","description":"Receipt supplied to Base Settlement Receipt Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"expected_recipient":{"type":"string","maxLength":8192,"description":"Expected Recipient supplied to Base Settlement Receipt Check; used only for this bounded calculation and processed in memory without retention."},"expected_amount_raw":{"type":"string","maxLength":8192,"description":"Expected Amount Raw supplied to Base Settlement Receipt Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":395,"tokensAfter":395},{"name":"util_base_usdc_amount_check","fixed":{"name":"util_base_usdc_amount_check","description":"checks a six-decimal USDC raw amount against exact and maximum values using only bounded caller-supplied values. Call when you need a bounded base usdc amount check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for Base USDC Amount Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only;","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["amount_raw","expected_raw","maximum_raw"],"properties":{"amount_raw":{"type":"string","maxLength":8192,"description":"Amount Raw supplied to Base USDC Amount Check; used only for this bounded calculation and processed in memory without retention."},"maximum_raw":{"type":"string","maxLength":8192,"description":"Maximum Raw supplied to Base USDC Amount Check; used only for this bounded calculation and processed in memory without retention."},"expected_raw":{"type":"string","maxLength":8192,"description":"Expected Raw supplied to Base USDC Amount Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":369,"tokensAfter":369},{"name":"util_base_usdc_payment_match","fixed":{"name":"util_base_usdc_payment_match","description":"checks recipient, raw amount, and chain id for a Base USDC payment intent using only bounded caller-supplied values. Call when you need a bounded base usdc payment match result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for Base USDC Payment Match as versioned deterministic JSON. Limitation: Uses caller-supplied values","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["recipient","expected_recipient","amount_raw","expected_amount_raw","chain_id"],"properties":{"chain_id":{"type":"integer","description":"Chain Id supplied to Base USDC Payment Match; used only for this bounded calculation and processed in memory without retention."},"recipient":{"type":"string","maxLength":8192,"description":"Recipient supplied to Base USDC Payment Match; used only for this bounded calculation and processed in memory without retention."},"amount_raw":{"type":"string","maxLength":8192,"description":"Amount Raw supplied to Base USDC Payment Match; used only for this bounded calculation and processed in memory without retention."},"expected_recipient":{"type":"string","maxLength":8192,"description":"Expected Recipient supplied to Base USDC Payment Match; used only for this bounded calculation and processed in memory without retention."},"expected_amount_raw":{"type":"string","maxLength":8192,"description":"Expected Amount Raw supplied to Base USDC Payment Match; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":490,"tokensAfter":490},{"name":"util_base_usdc_recipient_check","fixed":{"name":"util_base_usdc_recipient_check","description":"compares a Base USDC recipient with an expected pay-to address using only bounded caller-supplied values. Call when you need a bounded base usdc recipient check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for Base USDC Recipient Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["recipient","expected"],"properties":{"expected":{"type":"string","maxLength":8192,"description":"Expected supplied to Base USDC Recipient Check; used only for this bounded calculation and processed in memory without retention."},"recipient":{"type":"string","maxLength":8192,"description":"Recipient supplied to Base USDC Recipient Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":310,"tokensAfter":310},{"name":"util_batch_error_budget_check","fixed":{"name":"util_batch_error_budget_check","description":"checks failed item count and fraction against caller budgets using only bounded caller-supplied values. Call when you need a bounded batch error budget check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for Batch Error Budget Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["total","failed","maximum_failed","maximum_failure_fraction"],"properties":{"total":{"type":"integer","description":"Total supplied to Batch Error Budget Check; used only for this bounded calculation and processed in memory without retention."},"failed":{"type":"integer","description":"Failed supplied to Batch Error Budget Check; used only for this bounded calculation and processed in memory without retention."},"maximum_failed":{"type":"integer","description":"Maximum Failed supplied to Batch Error Budget Check; used only for this bounded calculation and processed in memory without retention."},"maximum_failure_fraction":{"type":"number","description":"Maximum Failure Fraction supplied to Batch Error Budget Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":416,"tokensAfter":416},{"name":"util_bic_format_validate","fixed":{"name":"util_bic_format_validate","description":"Validate BIC/SWIFT format shape (8 or 11 alnum)","inputSchema":{"type":"object","required":["bic"],"properties":{"bic":{"type":"string","description":"BIC/SWIFT code"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":69,"tokensAfter":69},{"name":"util_cache_freshness_calculate","fixed":{"name":"util_cache_freshness_calculate","description":"calculates remaining freshness from response timing metadata using only bounded caller-supplied values. Call when you need a bounded cache freshness calculate result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Cache Freshness Calculate as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["date_epoch","age_seconds","max_age_seconds","now_epoch"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to Cache Freshness Calculate; used only for this bounded calculation and processed in memory without retention."},"date_epoch":{"type":"integer","description":"Date Epoch supplied to Cache Freshness Calculate; used only for this bounded calculation and processed in memory without retention."},"age_seconds":{"type":"integer","description":"Age Seconds supplied to Cache Freshness Calculate; used only for this bounded calculation and processed in memory without retention."},"max_age_seconds":{"type":"integer","description":"Max Age Seconds supplied to Cache Freshness Calculate; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":415,"tokensAfter":415},{"name":"util_case_convert","fixed":{"name":"util_case_convert","description":"Convert text between snake, kebab, camel, pascal, constant, title cases.","inputSchema":{"type":"object","required":["text"],"properties":{"case":{"type":"string"},"text":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_chain_id_lookup","fixed":{"name":"util_chain_id_lookup","description":"Look up a static chain id to network name table without live RPC.","inputSchema":{"type":"object","required":["chain_id"],"properties":{"chain_id":{"type":"string","description":"Numeric chain id string (e.g. 8453) or known network slug."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":88,"tokensAfter":88},{"name":"util_char_count","fixed":{"name":"util_char_count","description":"Delx first-party micro-utility util_char_count at $0.001 USDC.","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"text"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":69,"tokensAfter":69},{"name":"util_checksum_meta","fixed":{"name":"util_checksum_meta","description":"Return hash digest and byte size for caller-held content","inputSchema":{"type":"object","required":["content"],"properties":{"content":{"type":"string","description":"Input field: content."},"algorithm":{"type":"string","description":"Input field: algorithm."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":94,"tokensAfter":94},{"name":"util_chunk_list","fixed":{"name":"util_chunk_list","description":"Chunk a list into fixed-size batches","inputSchema":{"type":"object","required":["items","size"],"properties":{"size":{"type":"integer","description":"Input field: size."},"items":{"type":"array","description":"Input field: items."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":85,"tokensAfter":85},{"name":"util_color_convert","fixed":{"name":"util_color_convert","description":"Convert #hex or rgb() colors to hex/rgb/hsl.","inputSchema":{"type":"object","required":["color"],"properties":{"color":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":60,"tokensAfter":60},{"name":"util_content_length_check","fixed":{"name":"util_content_length_check","description":"compares declared Content-Length with an observed byte count using only bounded caller-supplied values. Call when you need a bounded content length check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Content Length Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web sear","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["declared","observed"],"properties":{"declared":{"type":"integer","description":"Declared supplied to Content Length Check; used only for this bounded calculation and processed in memory without retention."},"observed":{"type":"integer","description":"Observed supplied to Content Length Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":296,"tokensAfter":296},{"name":"util_cookie_expiry_check","fixed":{"name":"util_cookie_expiry_check","description":"checks Max-Age or Expires metadata against an allowed lifetime using only bounded caller-supplied values. Call when you need a bounded cookie expiry check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Cookie Expiry Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web sear","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["max_age_seconds","maximum_seconds"],"properties":{"max_age_seconds":{"type":"integer","description":"Max Age Seconds supplied to Cookie Expiry Check; used only for this bounded calculation and processed in memory without retention."},"maximum_seconds":{"type":"integer","description":"Maximum Seconds supplied to Cookie Expiry Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":307,"tokensAfter":307},{"name":"util_cookie_security_check","fixed":{"name":"util_cookie_security_check","description":"checks Secure, HttpOnly, and SameSite attributes against policy using only bounded caller-supplied values. Call when you need a bounded cookie security check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Cookie Security Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header","require_secure","require_http_only","allowed_same_site"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to Cookie Security Check; used only for this bounded calculation and processed in memory without retention."},"require_secure":{"type":"boolean","description":"Require Secure supplied to Cookie Security Check; used only for this bounded calculation and processed in memory without retention."},"allowed_same_site":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed Same Site supplied to Cookie Security Check; used only for this bounded calculation and processed in memory without retention."},"require_http_only":{"type":"boolean","description":"Require HTTP Only supplied to Cookie Security Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":437,"tokensAfter":437},{"name":"util_cookie_set_parse","fixed":{"name":"util_cookie_set_parse","description":"parses one Set-Cookie value into name, value, and attributes using only bounded caller-supplied values. Call when you need a bounded cookie set parse result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Cookie Set Parse as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, cred","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to Cookie Set Parse; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":246,"tokensAfter":246},{"name":"util_cors_origin_check","fixed":{"name":"util_cors_origin_check","description":"compares a request origin with explicit allowed origins using only bounded caller-supplied values. Call when you need a bounded cors origin check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for CORS Origin Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, credent","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["origin","allowed","credentials"],"properties":{"origin":{"type":"string","maxLength":8192,"description":"Origin supplied to CORS Origin Check; used only for this bounded calculation and processed in memory without retention."},"allowed":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed supplied to CORS Origin Check; used only for this bounded calculation and processed in memory without retention."},"credentials":{"type":"boolean","description":"Credentials supplied to CORS Origin Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":363,"tokensAfter":363},{"name":"util_cors_preflight_check","fixed":{"name":"util_cors_preflight_check","description":"checks requested method and headers against a CORS preflight policy using only bounded caller-supplied values. Call when you need a bounded cors preflight check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for CORS Preflight Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, w","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["method","request_headers","allowed_methods","allowed_headers"],"properties":{"method":{"type":"string","maxLength":8192,"description":"Method supplied to CORS Preflight Check; used only for this bounded calculation and processed in memory without retention."},"allowed_headers":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed Headers supplied to CORS Preflight Check; used only for this bounded calculation and processed in memory without retention."},"allowed_methods":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed Methods supplied to CORS Preflight Check; used only for this bounded calculation and processed in memory without retention."},"request_headers":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Request Headers supplied to CORS Preflight Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":464,"tokensAfter":464},{"name":"util_count_substr","fixed":{"name":"util_count_substr","description":"Count non-overlapping substring occurrences","inputSchema":{"type":"object","required":["text","needle"],"properties":{"text":{"type":"string","description":"Input field: text."},"needle":{"type":"string","description":"Input field: needle."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":88,"tokensAfter":88},{"name":"util_cron_describe","fixed":{"name":"util_cron_describe","description":"Validate and describe a cron expression in plain English. Shows next 5 scheduled runs.","inputSchema":{"type":"object","required":["expression"],"properties":{"expression":{"type":"string","description":"Cron expression (5 fields: min hour dom month dow)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":85,"tokensAfter":85},{"name":"util_csp_source_check","fixed":{"name":"util_csp_source_check","description":"checks whether a caller-supplied source is present in one CSP directive using only bounded caller-supplied values. Call when you need a bounded csp source check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for CSP Source Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web s","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header","directive","source"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to CSP Source Check; used only for this bounded calculation and processed in memory without retention."},"source":{"type":"string","maxLength":8192,"description":"Source supplied to CSP Source Check; used only for this bounded calculation and processed in memory without retention."},"directive":{"type":"string","maxLength":8192,"description":"Directive supplied to CSP Source Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":353,"tokensAfter":353},{"name":"util_csv_column_count_check","fixed":{"name":"util_csv_column_count_check","description":"checks every CSV row against an expected column count using only bounded caller-supplied values. Call when you need a bounded csv column count check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for CSV Column Count Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["text","expected_columns"],"properties":{"text":{"type":"string","maxLength":8192,"description":"Text supplied to CSV Column Count Check; used only for this bounded calculation and processed in memory without retention."},"expected_columns":{"type":"integer","description":"Expected Columns supplied to CSV Column Count Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":305,"tokensAfter":305},{"name":"util_csv_duplicate_key_check","fixed":{"name":"util_csv_duplicate_key_check","description":"finds duplicate composite keys in CSV rows using only bounded caller-supplied values. Call when you need a bounded csv duplicate key check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for CSV Duplicate Key Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory only; it p","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["text","key_columns"],"properties":{"text":{"type":"string","maxLength":8192,"description":"Text supplied to CSV Duplicate Key Check; used only for this bounded calculation and processed in memory without retention."},"key_columns":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Key Columns supplied to CSV Duplicate Key Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":317,"tokensAfter":317},{"name":"util_csv_pivot_count","fixed":{"name":"util_csv_pivot_count","description":"builds a count pivot from row and column category fields using only bounded caller-supplied values. Call when you need a bounded csv pivot count result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for CSV Pivot Count as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory only; it per","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["text","row_field","column_field"],"properties":{"text":{"type":"string","maxLength":8192,"description":"Text supplied to CSV Pivot Count; used only for this bounded calculation and processed in memory without retention."},"row_field":{"type":"string","maxLength":8192,"description":"Row Field supplied to CSV Pivot Count; used only for this bounded calculation and processed in memory without retention."},"column_field":{"type":"string","maxLength":8192,"description":"Column Field supplied to CSV Pivot Count; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":355,"tokensAfter":355},{"name":"util_csv_rename_columns","fixed":{"name":"util_csv_rename_columns","description":"renames CSV header columns using a caller mapping using only bounded caller-supplied values. Call when you need a bounded csv rename columns result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for CSV Rename Columns as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory only; it perf","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["text","mapping"],"properties":{"text":{"type":"string","maxLength":8192,"description":"Text supplied to CSV Rename Columns; used only for this bounded calculation and processed in memory without retention."},"mapping":{"type":"object","description":"Mapping supplied to CSV Rename Columns; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"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":307,"tokensAfter":307},{"name":"util_csv_required_columns_check","fixed":{"name":"util_csv_required_columns_check","description":"checks a CSV header for required column names using only bounded caller-supplied values. Call when you need a bounded csv required columns check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for CSV Required Columns Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["text","required_columns"],"properties":{"text":{"type":"string","maxLength":8192,"description":"Text supplied to CSV Required Columns Check; used only for this bounded calculation and processed in memory without retention."},"required_columns":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Required Columns supplied to CSV Required Columns Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":324,"tokensAfter":324},{"name":"util_csv_row_count","fixed":{"name":"util_csv_row_count","description":"Delx first-party micro-utility util_csv_row_count at $0.001 USDC.","inputSchema":{"type":"object","required":["csv_text"],"properties":{"csv_text":{"type":"string","description":"csv_text"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_csv_row_preview","fixed":{"name":"util_csv_row_preview","description":"Split a CSV line into fields with basic quote awareness","inputSchema":{"type":"object","required":["row"],"properties":{"row":{"type":"string","description":"Input field: row."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":71,"tokensAfter":71},{"name":"util_date_add","fixed":{"name":"util_date_add","description":"Delx first-party micro-utility util_date_add at $0.001 USDC.","inputSchema":{"type":"object","required":["date"],"properties":{"date":{"type":"string","format":"date-time","description":"date"}},"additionalProperties":true},"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":74,"tokensAfter":74},{"name":"util_decision_record_check","fixed":{"name":"util_decision_record_check","description":"Check whether an architecture decision record contains accountable essentials.","inputSchema":{"type":"object","required":["record"],"properties":{"record":{"type":"object","description":"Input field: record."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":82,"tokensAfter":82},{"name":"util_dedupe_list","fixed":{"name":"util_dedupe_list","description":"Deduplicate a list while preserving first-seen order","inputSchema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","description":"Input field: items."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":71,"tokensAfter":71},{"name":"util_dependency_order","fixed":{"name":"util_dependency_order","description":"Compute a stable topological order for workflow nodes and report structural cycles.","inputSchema":{"type":"object","required":["nodes"],"properties":{"edges":{"type":"array","description":"Directed edges as {from,to} objects among nodes."},"nodes":{"type":"array","description":"Workflow node identifiers for topological ordering."}},"additionalProperties":true},"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":115,"tokensAfter":115},{"name":"util_deployment_readiness","fixed":{"name":"util_deployment_readiness","description":"Check tests, rollback, observability, ownership, and security review before deploy.","inputSchema":{"type":"object","required":["checks"],"properties":{"checks":{"type":"object","description":"Input field: checks."}},"additionalProperties":true},"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":83,"tokensAfter":83},{"name":"util_dns_caa_policy_check","fixed":{"name":"util_dns_caa_policy_check","description":"checks whether a certificate authority identifier is allowed by CAA records using only bounded caller-supplied values. Call when you need a bounded dns caa policy check result before deciding whether a certificate authority is allowed by caller-supplied CAA records. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS Caa Policy Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["records","issuer"],"properties":{"issuer":{"type":"string","maxLength":8192,"description":"Issuer supplied to DNS Caa Policy Check; used only for this bounded calculation and processed in memory without retention."},"records":{"type":"array","items":{"type":"object","maxProperties":128,"additionalProperties":true},"maxItems":256,"description":"Records supplied to DNS Caa Policy Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":322,"tokensAfter":322},{"name":"util_dns_cname_chain_check","fixed":{"name":"util_dns_cname_chain_check","description":"checks a caller-supplied CNAME chain for loops and hop budget using only bounded caller-supplied values. Call when you need a bounded dns cname chain check result before trusting a caller-supplied CNAME chain that may loop or exceed hop budget. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS Cname Chain Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web sea","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["names","max_hops"],"properties":{"names":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Names supplied to DNS Cname Chain Check; used only for this bounded calculation and processed in memory without retention."},"max_hops":{"type":"integer","description":"Max Hops supplied to DNS Cname Chain Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":310,"tokensAfter":310},{"name":"util_dns_dkim_selector_check","fixed":{"name":"util_dns_dkim_selector_check","description":"checks selector and signing-domain label shapes for a DKIM lookup using only bounded caller-supplied values. Call when you need a bounded dns dkim selector check result before looking up a DKIM selector and signing-domain label shape. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS DKIM Selector Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, cre","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["selector","domain"],"properties":{"domain":{"type":"string","maxLength":8192,"description":"Domain supplied to DNS DKIM Selector Check; used only for this bounded calculation and processed in memory without retention."},"selector":{"type":"string","maxLength":8192,"description":"Selector supplied to DNS DKIM Selector Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":305,"tokensAfter":305},{"name":"util_dns_ds_record_shape_check","fixed":{"name":"util_dns_ds_record_shape_check","description":"checks DS key tag, algorithm, digest type, and hex digest shape using only bounded caller-supplied values. Call when you need a bounded dns ds record shape check result before accepting a DS record's key tag, algorithm, digest type, and hex digest shape. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS DS Record Shape Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP re","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["record"],"properties":{"record":{"type":"string","maxLength":8192,"description":"Record supplied to DNS DS Record Shape Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":251,"tokensAfter":251},{"name":"util_dns_lookup","fixed":{"name":"util_dns_lookup","description":"Resolve A, AAAA, CNAME, MX, TXT, and NS records for fast domain and delivery checks.","inputSchema":{"type":"object","required":["domain"],"properties":{"domain":{"type":"string","description":"Domain to resolve"},"timeout":{"type":"integer","default":8,"maximum":15,"minimum":1,"description":"Timeout in seconds (1-15)"},"record_type":{"enum":["A","AAAA","CNAME","MX","NS","TXT"],"type":"string","default":"A","description":"DNS record type"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":136,"tokensAfter":136},{"name":"util_dns_soa_serial_compare","fixed":{"name":"util_dns_soa_serial_compare","description":"compares SOA serials with 32-bit wraparound ordering using only bounded caller-supplied values. Call when you need a bounded dns soa serial compare result before deciding which SOA serial is newer under 32-bit wraparound. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS SOA Serial Compare as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, credential use, o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["current","candidate"],"properties":{"current":{"type":"integer","description":"Current supplied to DNS SOA Serial Compare; used only for this bounded calculation and processed in memory without retention."},"candidate":{"type":"integer","description":"Candidate supplied to DNS SOA Serial Compare; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":297,"tokensAfter":297},{"name":"util_dns_spf_lookup_budget","fixed":{"name":"util_dns_spf_lookup_budget","description":"counts DNS-triggering SPF mechanisms against a configured budget using only bounded caller-supplied values. Call when you need a bounded dns spf lookup budget result before counting DNS-triggering SPF mechanisms against a lookup budget. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS SPF Lookup Budget as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, cre","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["record","maximum"],"properties":{"record":{"type":"string","maxLength":8192,"description":"Record supplied to DNS SPF Lookup Budget; used only for this bounded calculation and processed in memory without retention."},"maximum":{"type":"integer","description":"Maximum supplied to DNS SPF Lookup Budget; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":299,"tokensAfter":299},{"name":"util_dns_tlsa_record_shape_check","fixed":{"name":"util_dns_tlsa_record_shape_check","description":"checks TLSA usage, selector, matching type, and certificate data shape using only bounded caller-supplied values. Call when you need a bounded dns tlsa record shape check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS TLSA Record Shape Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["record"],"properties":{"record":{"type":"string","maxLength":8192,"description":"Record supplied to DNS TLSA Record Shape Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":252,"tokensAfter":252},{"name":"util_dns_ttl_budget_check","fixed":{"name":"util_dns_ttl_budget_check","description":"checks DNS record TTLs against caller minimum and maximum bounds using only bounded caller-supplied values. Call when you need a bounded dns ttl budget check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for DNS Ttl Budget Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["ttls","minimum","maximum"],"properties":{"ttls":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Ttls supplied to DNS Ttl Budget Check; used only for this bounded calculation and processed in memory without retention."},"maximum":{"type":"integer","description":"Maximum supplied to DNS Ttl Budget Check; used only for this bounded calculation and processed in memory without retention."},"minimum":{"type":"integer","description":"Minimum supplied to DNS Ttl Budget Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":352,"tokensAfter":352},{"name":"util_eip55_check","fixed":{"name":"util_eip55_check","description":"Check whether an address already matches its EIP-55 checksum form.","inputSchema":{"type":"object","required":["address"],"properties":{"address":{"type":"string","description":"EVM address (40 hex chars, optional 0x)."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":82,"tokensAfter":82},{"name":"util_email_dmarc_alignment_check","fixed":{"name":"util_email_dmarc_alignment_check","description":"combines caller-supplied SPF and DKIM alignment outcomes for DMARC using only bounded caller-supplied values. Call when you need a bounded email dmarc alignment check result before combining caller-supplied SPF and DKIM alignment outcomes for DMARC. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Email DMARC Alignment Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP reque","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["spf_aligned","dkim_aligned","policy"],"properties":{"policy":{"type":"string","maxLength":8192,"description":"Policy supplied to Email DMARC Alignment Check; used only for this bounded calculation and processed in memory without retention."},"spf_aligned":{"type":"boolean","description":"SPF Aligned supplied to Email DMARC Alignment Check; used only for this bounded calculation and processed in memory without retention."},"dkim_aligned":{"type":"boolean","description":"DKIM Aligned supplied to Email DMARC Alignment Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":363,"tokensAfter":363},{"name":"util_email_mx_readiness_check","fixed":{"name":"util_email_mx_readiness_check","description":"checks caller-supplied MX records for usable non-null exchanges using only bounded caller-supplied values. Call when you need a bounded email mx readiness check result before treating caller-supplied MX records as usable non-null exchanges. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Email MX Readiness Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web sear","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["records"],"properties":{"records":{"type":"array","items":{"type":"object","maxProperties":128,"additionalProperties":true},"maxItems":256,"description":"Records supplied to Email MX Readiness Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":271,"tokensAfter":271},{"name":"util_email_spf_alignment_check","fixed":{"name":"util_email_spf_alignment_check","description":"checks relaxed or strict SPF domain alignment using only bounded caller-supplied values. Call when you need a bounded email spf alignment check result before deciding relaxed or strict SPF domain alignment from caller-supplied fields. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Email SPF Alignment Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, c","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["mail_from_domain","from_domain","mode"],"properties":{"mode":{"type":"string","maxLength":8192,"description":"Mode supplied to Email SPF Alignment Check; used only for this bounded calculation and processed in memory without retention."},"from_domain":{"type":"string","maxLength":8192,"description":"From Domain supplied to Email SPF Alignment Check; used only for this bounded calculation and processed in memory without retention."},"mail_from_domain":{"type":"string","maxLength":8192,"description":"Mail From Domain supplied to Email SPF Alignment Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":371,"tokensAfter":371},{"name":"util_email_syntax_check","fixed":{"name":"util_email_syntax_check","description":"Validate basic email syntax and split local/domain","inputSchema":{"type":"object","required":["email"],"properties":{"email":{"type":"string","description":"Email address to validate"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_email_validate","fixed":{"name":"util_email_validate","description":"Validate an email and its domain-level delivery records before outreach, signup, or routing.","inputSchema":{"type":"object","required":["email"],"properties":{"email":{"type":"string","description":"Email address to validate"},"timeout":{"type":"integer","default":8,"maximum":15,"minimum":1,"description":"Timeout in seconds (1-15)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":107,"tokensAfter":107},{"name":"util_env_key_validate","fixed":{"name":"util_env_key_validate","description":"Validate environment variable key shape A-Z0-9 underscore","inputSchema":{"type":"object","required":["key"],"properties":{"key":{"type":"string","description":"Input field: key."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":72,"tokensAfter":72},{"name":"util_evm_access_list_shape_check","fixed":{"name":"util_evm_access_list_shape_check","description":"checks bounded EIP-2930 access-list address and storage-key shapes using only bounded caller-supplied values. Call when you need a bounded evm access list shape check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Access List Shape Check as versioned deterministic JSON. Limitation: Uses caller-supplied value","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["access_list"],"properties":{"access_list":{"type":"array","items":{"type":"object","maxProperties":128,"additionalProperties":true},"maxItems":256,"description":"Access List supplied to EVM Access List Shape Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":276,"tokensAfter":276},{"name":"util_evm_address_list_dedupe","fixed":{"name":"util_evm_address_list_dedupe","description":"deduplicates EVM address strings case-insensitively while preserving order using only bounded caller-supplied values. Call when you need a bounded evm address list dedupe result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Address List Dedupe as versioned deterministic JSON. Limitation: Uses caller-supplied value","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["addresses"],"properties":{"addresses":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Addresses supplied to EVM Address List Dedupe; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":263,"tokensAfter":263},{"name":"util_evm_address_zero_check","fixed":{"name":"util_evm_address_zero_check","description":"detects the all-zero EVM address after shape normalization using only bounded caller-supplied values. Call when you need a bounded evm address zero check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Address Zero Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it perform","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["address"],"properties":{"address":{"type":"string","maxLength":8192,"description":"Address supplied to EVM Address Zero Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":250,"tokensAfter":250},{"name":"util_evm_allowance_budget_check","fixed":{"name":"util_evm_allowance_budget_check","description":"checks caller-supplied allowance against a required token amount using only bounded caller-supplied values. Call when you need a bounded evm allowance budget check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Allowance Budget Check as versioned deterministic JSON. Limitation: Uses caller-supplied values on","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["allowance_raw","required_raw"],"properties":{"required_raw":{"type":"string","maxLength":8192,"description":"Required Raw supplied to EVM Allowance Budget Check; used only for this bounded calculation and processed in memory without retention."},"allowance_raw":{"type":"string","maxLength":8192,"description":"Allowance Raw supplied to EVM Allowance Budget Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":317,"tokensAfter":317},{"name":"util_evm_amount_min_check","fixed":{"name":"util_evm_amount_min_check","description":"checks an actual raw amount against a minimum raw amount using only bounded caller-supplied values. Call when you need a bounded evm amount min check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Amount Min Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it performs no R","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["actual_raw","minimum_raw"],"properties":{"actual_raw":{"type":"string","maxLength":8192,"description":"Actual Raw supplied to EVM Amount Min Check; used only for this bounded calculation and processed in memory without retention."},"minimum_raw":{"type":"string","maxLength":8192,"description":"Minimum Raw supplied to EVM Amount Min Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":309,"tokensAfter":309},{"name":"util_evm_approve_amount_check","fixed":{"name":"util_evm_approve_amount_check","description":"compares a proposed approval with an explicit spending requirement and cap using only bounded caller-supplied values. Call when you need a bounded evm approve amount check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Approve Amount Check as versioned deterministic JSON. Limitation: Uses caller-supplied val","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["proposed_raw","required_raw","maximum_raw"],"properties":{"maximum_raw":{"type":"string","maxLength":8192,"description":"Maximum Raw supplied to EVM Approve Amount Check; used only for this bounded calculation and processed in memory without retention."},"proposed_raw":{"type":"string","maxLength":8192,"description":"Proposed Raw supplied to EVM Approve Amount Check; used only for this bounded calculation and processed in memory without retention."},"required_raw":{"type":"string","maxLength":8192,"description":"Required Raw supplied to EVM Approve Amount Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":373,"tokensAfter":373},{"name":"util_evm_batch_duplicate_nonce_check","fixed":{"name":"util_evm_batch_duplicate_nonce_check","description":"finds duplicate nonces inside a caller-supplied transaction batch using only bounded caller-supplied values. Call when you need a bounded evm batch duplicate nonce check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Batch Duplicate Nonce Check as versioned deterministic JSON. Limitation: Uses caller-supplie","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["nonces"],"properties":{"nonces":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Nonces supplied to EVM Batch Duplicate Nonce Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":261,"tokensAfter":261},{"name":"util_evm_blob_count_check","fixed":{"name":"util_evm_blob_count_check","description":"checks caller-supplied blob count against a transaction limit using only bounded caller-supplied values. Call when you need a bounded evm blob count check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Blob Count Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it performs","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["blob_count","maximum"],"properties":{"maximum":{"type":"integer","description":"Maximum supplied to EVM Blob Count Check; used only for this bounded calculation and processed in memory without retention."},"blob_count":{"type":"integer","description":"Blob Count supplied to EVM Blob Count Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":297,"tokensAfter":297},{"name":"util_evm_block_age_check","fixed":{"name":"util_evm_block_age_check","description":"checks caller-supplied block timestamp age against a freshness budget using only bounded caller-supplied values. Call when you need a bounded evm block age check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Block Age Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it pe","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["block_timestamp","now_epoch","maximum_age_seconds"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to EVM Block Age Check; used only for this bounded calculation and processed in memory without retention."},"block_timestamp":{"type":"integer","description":"Block Timestamp supplied to EVM Block Age Check; used only for this bounded calculation and processed in memory without retention."},"maximum_age_seconds":{"type":"integer","description":"Maximum Age Seconds supplied to EVM Block Age Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":361,"tokensAfter":361},{"name":"util_evm_calldata_shape_check","fixed":{"name":"util_evm_calldata_shape_check","description":"checks 0x-prefixed calldata for even-length hexadecimal bytes using only bounded caller-supplied values. Call when you need a bounded evm calldata shape check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Calldata Shape Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["calldata"],"properties":{"calldata":{"type":"string","maxLength":8192,"description":"Calldata supplied to EVM Calldata Shape Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":252,"tokensAfter":252},{"name":"util_evm_calldata_word_count","fixed":{"name":"util_evm_calldata_word_count","description":"counts complete and partial 32-byte calldata words after the selector using only bounded caller-supplied values. Call when you need a bounded evm calldata word count result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Calldata Word Count as versioned deterministic JSON. Limitation: Uses caller-supplied values onl","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["calldata"],"properties":{"calldata":{"type":"string","maxLength":8192,"description":"Calldata supplied to EVM Calldata Word Count; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":251,"tokensAfter":251},{"name":"util_evm_chain_match_check","fixed":{"name":"util_evm_chain_match_check","description":"compares transaction and expected chain identifiers using only bounded caller-supplied values. Call when you need a bounded evm chain match check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Chain Match Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it performs no RPC ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["transaction_chain_id","expected_chain_id"],"properties":{"expected_chain_id":{"type":"integer","description":"Expected Chain Id supplied to EVM Chain Match Check; used only for this bounded calculation and processed in memory without retention."},"transaction_chain_id":{"type":"integer","description":"Transaction Chain Id supplied to EVM Chain Match Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":314,"tokensAfter":314},{"name":"util_evm_confirmation_count","fixed":{"name":"util_evm_confirmation_count","description":"calculates confirmations from inclusion and current block numbers using only bounded caller-supplied values. Call when you need a bounded evm confirmation count result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Confirmation Count as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["inclusion_block","current_block"],"properties":{"current_block":{"type":"integer","description":"Current Block supplied to EVM Confirmation Count; used only for this bounded calculation and processed in memory without retention."},"inclusion_block":{"type":"integer","description":"Inclusion Block supplied to EVM Confirmation Count; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":307,"tokensAfter":307},{"name":"util_evm_contract_creation_check","fixed":{"name":"util_evm_contract_creation_check","description":"classifies an empty or absent to-address as contract creation using only bounded caller-supplied values. Call when you need a bounded evm contract creation check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Contract Creation Check as versioned deterministic JSON. Limitation: Uses caller-supplied values onl","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["to"],"properties":{"to":{"type":"string","maxLength":8192,"description":"To supplied to EVM Contract Creation Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":249,"tokensAfter":249},{"name":"util_evm_deadline_check","fixed":{"name":"util_evm_deadline_check","description":"checks a transaction deadline against current time and minimum lead time using only bounded caller-supplied values. Call when you need a bounded evm deadline check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Deadline Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it p","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["deadline_epoch","now_epoch","minimum_lead_seconds"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to EVM Deadline Check; used only for this bounded calculation and processed in memory without retention."},"deadline_epoch":{"type":"integer","description":"Deadline Epoch supplied to EVM Deadline Check; used only for this bounded calculation and processed in memory without retention."},"minimum_lead_seconds":{"type":"integer","description":"Minimum Lead Seconds supplied to EVM Deadline Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":360,"tokensAfter":360},{"name":"util_evm_eip1559_fee_check","fixed":{"name":"util_evm_eip1559_fee_check","description":"checks dynamic-fee caps and calculates the worst-case transaction fee using only bounded caller-supplied values. Call when you need a bounded evm eip1559 fee check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Eip1559 Fee Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; i","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["max_fee_per_gas_wei","max_priority_fee_per_gas_wei","gas_limit"],"properties":{"gas_limit":{"type":"integer","description":"Gas Limit supplied to EVM Eip1559 Fee Check; used only for this bounded calculation and processed in memory without retention."},"max_fee_per_gas_wei":{"type":"string","maxLength":8192,"description":"Max Fee Per Gas Wei supplied to EVM Eip1559 Fee Check; used only for this bounded calculation and processed in memory without retention."},"max_priority_fee_per_gas_wei":{"type":"string","maxLength":8192,"description":"Max Priority Fee Per Gas Wei supplied to EVM Eip1559 Fee Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":383,"tokensAfter":383},{"name":"util_evm_event_log_shape_check","fixed":{"name":"util_evm_event_log_shape_check","description":"checks address, topics, and data shapes for a caller-supplied log using only bounded caller-supplied values. Call when you need a bounded evm event log shape check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Event Log Shape Check as versioned deterministic JSON. Limitation: Uses caller-supplied values onl","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["log"],"properties":{"log":{"type":"object","description":"Log supplied to EVM Event Log Shape Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":257,"tokensAfter":257},{"name":"util_evm_fee_cap_order_check","fixed":{"name":"util_evm_fee_cap_order_check","description":"checks that the priority fee cap does not exceed the total fee cap using only bounded caller-supplied values. Call when you need a bounded evm fee cap order check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Fee Cap Order Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["max_fee_per_gas_wei","max_priority_fee_per_gas_wei"],"properties":{"max_fee_per_gas_wei":{"type":"string","maxLength":8192,"description":"Max Fee Per Gas Wei supplied to EVM Fee Cap Order Check; used only for this bounded calculation and processed in memory without retention."},"max_priority_fee_per_gas_wei":{"type":"string","maxLength":8192,"description":"Max Priority Fee Per Gas Wei supplied to EVM Fee Cap Order Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":333,"tokensAfter":333},{"name":"util_evm_finality_depth_check","fixed":{"name":"util_evm_finality_depth_check","description":"checks confirmation count against a caller-required depth using only bounded caller-supplied values. Call when you need a bounded evm finality depth check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Finality Depth Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it perf","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["inclusion_block","current_block","required_confirmations"],"properties":{"current_block":{"type":"integer","description":"Current Block supplied to EVM Finality Depth Check; used only for this bounded calculation and processed in memory without retention."},"inclusion_block":{"type":"integer","description":"Inclusion Block supplied to EVM Finality Depth Check; used only for this bounded calculation and processed in memory without retention."},"required_confirmations":{"type":"integer","description":"Required Confirmations supplied to EVM Finality Depth Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":372,"tokensAfter":372},{"name":"util_evm_legacy_fee_check","fixed":{"name":"util_evm_legacy_fee_check","description":"checks gasPrice and gasLimit values for a legacy transaction budget using only bounded caller-supplied values. Call when you need a bounded evm legacy fee check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Legacy Fee Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it pe","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["gas_price_wei","gas_limit","maximum_fee_wei"],"properties":{"gas_limit":{"type":"integer","description":"Gas Limit supplied to EVM Legacy Fee Check; used only for this bounded calculation and processed in memory without retention."},"gas_price_wei":{"type":"string","maxLength":8192,"description":"Gas Price Wei supplied to EVM Legacy Fee Check; used only for this bounded calculation and processed in memory without retention."},"maximum_fee_wei":{"type":"string","maxLength":8192,"description":"Maximum Fee Wei supplied to EVM Legacy Fee Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":366,"tokensAfter":366},{"name":"util_evm_log_topic_count_check","fixed":{"name":"util_evm_log_topic_count_check","description":"checks log topic count against an expected bound using only bounded caller-supplied values. Call when you need a bounded evm log topic count check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Log Topic Count Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it performs no","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["topics","maximum"],"properties":{"topics":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Topics supplied to EVM Log Topic Count Check; used only for this bounded calculation and processed in memory without retention."},"maximum":{"type":"integer","description":"Maximum supplied to EVM Log Topic Count Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":313,"tokensAfter":313},{"name":"util_evm_multisend_recipient_check","fixed":{"name":"util_evm_multisend_recipient_check","description":"checks duplicate, zero, and unexpected recipients in a multisend using only bounded caller-supplied values. Call when you need a bounded evm multisend recipient check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Multisend Recipient Check as versioned deterministic JSON. Limitation: Uses caller-supplied val","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["recipients","allowed"],"properties":{"allowed":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed supplied to EVM Multisend Recipient Check; used only for this bounded calculation and processed in memory without retention."},"recipients":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Recipients supplied to EVM Multisend Recipient Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":335,"tokensAfter":335},{"name":"util_evm_nonce_gap_check","fixed":{"name":"util_evm_nonce_gap_check","description":"calculates the gap between pending and proposed transaction nonces using only bounded caller-supplied values. Call when you need a bounded evm nonce gap check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Nonce Gap Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it perfo","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["pending_nonce","proposed_nonce","maximum_gap"],"properties":{"maximum_gap":{"type":"integer","description":"Maximum Gap supplied to EVM Nonce Gap Check; used only for this bounded calculation and processed in memory without retention."},"pending_nonce":{"type":"integer","description":"Pending Nonce supplied to EVM Nonce Gap Check; used only for this bounded calculation and processed in memory without retention."},"proposed_nonce":{"type":"integer","description":"Proposed Nonce supplied to EVM Nonce Gap Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":357,"tokensAfter":357},{"name":"util_evm_nonce_replace_check","fixed":{"name":"util_evm_nonce_replace_check","description":"checks whether a proposed nonce targets a caller-supplied pending nonce using only bounded caller-supplied values. Call when you need a bounded evm nonce replace check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Nonce Replace Check as versioned deterministic JSON. Limitation: Uses caller-supplied values o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["pending_nonces","proposed_nonce"],"properties":{"pending_nonces":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Pending Nonces supplied to EVM Nonce Replace Check; used only for this bounded calculation and processed in memory without retention."},"proposed_nonce":{"type":"integer","description":"Proposed Nonce supplied to EVM Nonce Replace Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":319,"tokensAfter":319},{"name":"util_evm_receipt_status_check","fixed":{"name":"util_evm_receipt_status_check","description":"normalizes receipt status values into success or failure using only bounded caller-supplied values. Call when you need a bounded evm receipt status check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Receipt Status Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it perfo","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["status"],"properties":{"status":{"type":"string","maxLength":8192,"description":"Status supplied to EVM Receipt Status Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":250,"tokensAfter":250},{"name":"util_evm_signature_rs_shape_check","fixed":{"name":"util_evm_signature_rs_shape_check","description":"checks r and s values as 32-byte hexadecimal scalars using only bounded caller-supplied values. Call when you need a bounded evm signature rs shape check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Signature Rs Shape Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it p","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["r","s"],"properties":{"r":{"type":"string","maxLength":8192,"description":"R supplied to EVM Signature Rs Shape Check; used only for this bounded calculation and processed in memory without retention."},"s":{"type":"string","maxLength":8192,"description":"S supplied to EVM Signature Rs Shape Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":300,"tokensAfter":300},{"name":"util_evm_slippage_bounds_check","fixed":{"name":"util_evm_slippage_bounds_check","description":"checks expected and minimum output against a maximum slippage policy using only bounded caller-supplied values. Call when you need a bounded evm slippage bounds check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Slippage Bounds Check as versioned deterministic JSON. Limitation: Uses caller-supplied values ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["expected_output_raw","minimum_output_raw","maximum_slippage_bps"],"properties":{"minimum_output_raw":{"type":"string","maxLength":8192,"description":"Minimum Output Raw supplied to EVM Slippage Bounds Check; used only for this bounded calculation and processed in memory without retention."},"expected_output_raw":{"type":"string","maxLength":8192,"description":"Expected Output Raw supplied to EVM Slippage Bounds Check; used only for this bounded calculation and processed in memory without retention."},"maximum_slippage_bps":{"type":"integer","description":"Maximum Slippage Bps supplied to EVM Slippage Bounds Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":388,"tokensAfter":388},{"name":"util_evm_transfer_recipient_check","fixed":{"name":"util_evm_transfer_recipient_check","description":"compares an encoded recipient address with the intended recipient using only bounded caller-supplied values. Call when you need a bounded evm transfer recipient check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Transfer Recipient Check as versioned deterministic JSON. Limitation: Uses caller-supplied valu","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["encoded_recipient","intended_recipient"],"properties":{"encoded_recipient":{"type":"string","maxLength":8192,"description":"Encoded Recipient supplied to EVM Transfer Recipient Check; used only for this bounded calculation and processed in memory without retention."},"intended_recipient":{"type":"string","maxLength":8192,"description":"Intended Recipient supplied to EVM Transfer Recipient Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":327,"tokensAfter":327},{"name":"util_evm_tx_envelope_check","fixed":{"name":"util_evm_tx_envelope_check","description":"checks required envelope fields for a declared transaction type using only bounded caller-supplied values. Call when you need a bounded evm tx envelope check result before signing, submitting, replacing, or accepting an EVM/Base transaction assembled from caller-owned data. Returns normalized transaction evidence, calculated budget or shape findings, and a fail-closed preflight status for EVM Tx Envelope Check as versioned deterministic JSON. Limitation: Uses caller-supplied values only; it perf","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["transaction_type","fields"],"properties":{"fields":{"type":"object","description":"Fields supplied to EVM Tx Envelope Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"transaction_type":{"type":"integer","description":"Transaction Type supplied to EVM Tx Envelope Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":315,"tokensAfter":315},{"name":"util_exec_quality_vs_twap","fixed":{"name":"util_exec_quality_vs_twap","description":"Compare average fill to TWAP benchmark (bps)","inputSchema":{"type":"object","required":["avg_fill","twap"],"properties":{"side":{"type":"string","description":"Trade side: buy or sell"},"twap":{"type":"number","description":"TWAP benchmark price"},"avg_fill":{"type":"number","description":"Average fill price"}},"additionalProperties":true},"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":110,"tokensAfter":110},{"name":"util_exec_quality_vs_vwap","fixed":{"name":"util_exec_quality_vs_vwap","description":"Compare average fill to VWAP benchmark (bps)","inputSchema":{"type":"object","required":["avg_fill","vwap"],"properties":{"side":{"type":"string","description":"Trade side: buy or sell"},"vwap":{"type":"number","description":"VWAP benchmark price"},"avg_fill":{"type":"number","description":"Average fill price"}},"additionalProperties":true},"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":110,"tokensAfter":110},{"name":"util_expires_header_validate","fixed":{"name":"util_expires_header_validate","description":"compares Date and Expires timestamps for an explicit cache lifetime using only bounded caller-supplied values. Call when you need a bounded expires header validate result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Expires Header Validate as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP requ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["date_epoch","expires_epoch"],"properties":{"date_epoch":{"type":"integer","description":"Date Epoch supplied to Expires Header Validate; used only for this bounded calculation and processed in memory without retention."},"expires_epoch":{"type":"integer","description":"Expires Epoch supplied to Expires Header Validate; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":304,"tokensAfter":304},{"name":"util_fleet_status_onepager_stub","fixed":{"name":"util_fleet_status_onepager_stub","description":"Build a compact fleet status markdown from agent rows","inputSchema":{"type":"object","required":["agents"],"properties":{"agents":{"type":"array","description":"Fleet agent rows"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":75,"tokensAfter":75},{"name":"util_frame_ancestors_check","fixed":{"name":"util_frame_ancestors_check","description":"checks whether a CSP frame-ancestors directive contains a required source using only bounded caller-supplied values. Call when you need a bounded frame ancestors check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Frame Ancestors Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP re","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header","required_source"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to Frame Ancestors Check; used only for this bounded calculation and processed in memory without retention."},"required_source":{"type":"string","maxLength":8192,"description":"Required Source supplied to Frame Ancestors Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":310,"tokensAfter":310},{"name":"util_funding_payment","fixed":{"name":"util_funding_payment","description":"Funding payment ≈ notional × funding_rate for a period","inputSchema":{"type":"object","required":["notional","funding_rate","hours"],"properties":{"hours":{"type":"integer","description":"Input field: hours."},"notional":{"type":"integer","description":"Input field: notional."},"funding_rate":{"type":"number","description":"Input field: funding rate."}},"additionalProperties":true},"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":120,"tokensAfter":120},{"name":"util_fx_convert_amount","fixed":{"name":"util_fx_convert_amount","description":"Convert an amount with a caller-supplied FX rate (no live feed)","inputSchema":{"type":"object","required":["amount","rate"],"properties":{"base":{"type":"string","description":"Input field: base."},"rate":{"type":"number","description":"Input field: rate."},"side":{"type":"string","description":"Input field: side."},"quote":{"type":"string","description":"Input field: quote."},"amount":{"type":"integer","description":"Input field: amount."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":146,"tokensAfter":146},{"name":"util_gdelt_query_normalize","fixed":{"name":"util_gdelt_query_normalize","description":"Normalize a news query string for GDELT-style search","inputSchema":{"type":"object","required":["q"],"properties":{"q":{"type":"string","description":"Search query string"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":72,"tokensAfter":72},{"name":"util_handoff_size_estimate","fixed":{"name":"util_handoff_size_estimate","description":"Estimate bytes/tokens for a handoff capsule string","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"UTF-8 text content to hash or size"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":77,"tokensAfter":77},{"name":"util_hex_convert","fixed":{"name":"util_hex_convert","description":"Encode text to hex or decode hex to text.","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":58,"tokensAfter":58},{"name":"util_hsts_policy_check","fixed":{"name":"util_hsts_policy_check","description":"checks HSTS max-age and subdomain directives against caller policy using only bounded caller-supplied values. Call when you need a bounded hsts policy check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for HSTS Policy Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web sear","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header","minimum_seconds","require_subdomains"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to HSTS Policy Check; used only for this bounded calculation and processed in memory without retention."},"minimum_seconds":{"type":"integer","description":"Minimum Seconds supplied to HSTS Policy Check; used only for this bounded calculation and processed in memory without retention."},"require_subdomains":{"type":"boolean","description":"Require Subdomains supplied to HSTS Policy Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":360,"tokensAfter":360},{"name":"util_html_canonical_link_check","fixed":{"name":"util_html_canonical_link_check","description":"compares document and canonical URLs after deterministic normalization using only bounded caller-supplied values. Call when you need a bounded html canonical link check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Html Canonical Link Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HT","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["document_url","canonical_url"],"properties":{"document_url":{"type":"string","maxLength":8192,"description":"Document URL supplied to Html Canonical Link Check; used only for this bounded calculation and processed in memory without retention."},"canonical_url":{"type":"string","maxLength":8192,"description":"Canonical URL supplied to Html Canonical Link Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":316,"tokensAfter":316},{"name":"util_iban_checksum","fixed":{"name":"util_iban_checksum","description":"Validate IBAN checksum (mod 97) offline","inputSchema":{"type":"object","required":["iban"],"properties":{"iban":{"type":"string","description":"IBAN string"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":65,"tokensAfter":65},{"name":"util_idempotency_key","fixed":{"name":"util_idempotency_key","description":"Derive a deterministic namespaced idempotency key from canonical JSON.","inputSchema":{"type":"object","required":["payload"],"properties":{"payload":{"description":"JSON value whose canonical representation identifies one logical operation.","type":"string"},"namespace":{"type":"string","default":"default","maxLength":200}},"additionalProperties":true}},"changes":[{"kind":"schema","detail":"Added \"type\":\"string\" to untyped parameters: payload. Change to number/boolean/array where that's what you accept.","verify":true}],"tokensBefore":108,"tokensAfter":112},{"name":"util_image_prompt_lint","fixed":{"name":"util_image_prompt_lint","description":"Lint a text-to-image prompt for length and basic policy tokens before paying","inputSchema":{"type":"object","required":["prompt"],"properties":{"prompt":{"type":"string","description":"Input field: prompt."},"max_chars":{"type":"integer","description":"Input field: max chars."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":100,"tokensAfter":100},{"name":"util_image_result_contract_check","fixed":{"name":"util_image_result_contract_check","description":"Validate image delivery metadata without fetching, transforming, or generating media.","inputSchema":{"type":"object","required":["result"],"properties":{"result":{"type":"object"},"max_width":{"type":"integer","default":8192,"maximum":32768,"minimum":1},"max_height":{"type":"integer","default":8192,"maximum":32768,"minimum":1},"max_size_bytes":{"type":"integer","default":20971520,"maximum":104857600,"minimum":1}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":141,"tokensAfter":141},{"name":"util_ip_v4_private_check","fixed":{"name":"util_ip_v4_private_check","description":"Detect RFC1918 private IPv4 addresses","inputSchema":{"type":"object","required":["ip"],"properties":{"ip":{"type":"string","description":"IPv4 address string"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":67,"tokensAfter":67},{"name":"util_isbn_check","fixed":{"name":"util_isbn_check","description":"Validate ISBN-10 or ISBN-13 checksums.","inputSchema":{"type":"object","required":["isbn"],"properties":{"isbn":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":57,"tokensAfter":57},{"name":"util_iso3166_country_lookup","fixed":{"name":"util_iso3166_country_lookup","description":"Lookup country name from a static ISO3166-1 alpha-2 table subset","inputSchema":{"type":"object","required":["code"],"properties":{"code":{"type":"string","description":"ISO3166-1 alpha-2 code"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":78,"tokensAfter":78},{"name":"util_json_array_length_check","fixed":{"name":"util_json_array_length_check","description":"checks selected array fields against caller item-count bounds using only bounded caller-supplied values. Call when you need a bounded json array length check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Array Length Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data i","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields","minimum","maximum"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Array Length Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON Array Length Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum":{"type":"integer","description":"Maximum supplied to JSON Array Length Check; used only for this bounded calculation and processed in memory without retention."},"minimum":{"type":"integer","description":"Minimum supplied to JSON Array Length Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":425,"tokensAfter":425},{"name":"util_json_contract_check","fixed":{"name":"util_json_contract_check","description":"Check a JSON payload against a bounded structural contract and return path-level errors.","inputSchema":{"type":"object","required":["instance","contract"],"properties":{"contract":{"type":"object","description":"Bounded JSON Schema-like contract using type, required, properties, and enum."},"instance":{"description":"JSON value to check.","type":"string"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"schema","detail":"Added \"type\":\"string\" to untyped parameters: instance. Change to number/boolean/array where that's what you accept.","verify":true},{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":118,"tokensAfter":122},{"name":"util_json_cross_field_order","fixed":{"name":"util_json_cross_field_order","description":"checks two numeric fields for a caller-selected ordering relation using only bounded caller-supplied values. Call when you need a bounded json cross field order result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Cross Field Order as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","left_field","right_field","relation"],"properties":{"object":{"type":"object","description":"Object supplied to JSON Cross Field Order; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"relation":{"type":"string","maxLength":8192,"description":"Relation supplied to JSON Cross Field Order; used only for this bounded calculation and processed in memory without retention."},"left_field":{"type":"string","maxLength":8192,"description":"Left Field supplied to JSON Cross Field Order; used only for this bounded calculation and processed in memory without retention."},"right_field":{"type":"string","maxLength":8192,"description":"Right Field supplied to JSON Cross Field Order; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":429,"tokensAfter":429},{"name":"util_json_depth_check","fixed":{"name":"util_json_depth_check","description":"measures JSON nesting depth against a caller budget using only bounded caller-supplied values. Call when you need a bounded json depth check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Depth Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory only; it perfor","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["value","maximum_depth"],"properties":{"value":{"type":"object","description":"Value supplied to JSON Depth Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum_depth":{"type":"integer","description":"Maximum Depth supplied to JSON Depth Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":307,"tokensAfter":307},{"name":"util_json_email_fields_check","fixed":{"name":"util_json_email_fields_check","description":"checks selected fields for bounded email address shape using only bounded caller-supplied values. Call when you need a bounded json email fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Email Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memor","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Email Fields Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON Email Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":324,"tokensAfter":324},{"name":"util_json_enum_fields_check","fixed":{"name":"util_json_enum_fields_check","description":"checks selected fields against caller-provided enum values using only bounded caller-supplied values. Call when you need a bounded json enum fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Enum Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in mem","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","enums"],"properties":{"enums":{"type":"object","description":"Enums supplied to JSON Enum Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"object":{"type":"object","description":"Object supplied to JSON Enum Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":319,"tokensAfter":319},{"name":"util_json_hash_fields_check","fixed":{"name":"util_json_hash_fields_check","description":"checks selected fields for caller-specified hexadecimal digest length using only bounded caller-supplied values. Call when you need a bounded json hash fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Hash Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields","hex_length"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Hash Fields Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON Hash Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"hex_length":{"type":"integer","description":"Hex Length supplied to JSON Hash Fields Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":375,"tokensAfter":375},{"name":"util_json_merge_patch","fixed":{"name":"util_json_merge_patch","description":"Apply bounded top-level JSON Merge Patch semantics for integration planning.","inputSchema":{"type":"object","required":["target","patch"],"properties":{"patch":{"type":"object","description":"Input field: patch."},"target":{"type":"object","description":"Input field: target."}},"additionalProperties":true},"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":99,"tokensAfter":99},{"name":"util_json_numeric_range_check","fixed":{"name":"util_json_numeric_range_check","description":"checks selected numeric fields against inclusive bounds using only bounded caller-supplied values. Call when you need a bounded json numeric range check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Numeric Range Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in me","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields","minimum","maximum"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Numeric Range Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON Numeric Range Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum":{"type":"number","description":"Maximum supplied to JSON Numeric Range Check; used only for this bounded calculation and processed in memory without retention."},"minimum":{"type":"number","description":"Minimum supplied to JSON Numeric Range Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":425,"tokensAfter":425},{"name":"util_json_object_deep_merge","fixed":{"name":"util_json_object_deep_merge","description":"deep-merges two bounded JSON objects with right-side precedence using only bounded caller-supplied values. Call when you need a bounded json object deep merge result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Object Deep Merge as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data i","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["left","right"],"properties":{"left":{"type":"object","description":"Left supplied to JSON Object Deep Merge; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"right":{"type":"object","description":"Right supplied to JSON Object Deep Merge; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"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":318,"tokensAfter":318},{"name":"util_json_object_rename_keys","fixed":{"name":"util_json_object_rename_keys","description":"renames top-level keys using a caller mapping and reports collisions using only bounded caller-supplied values. Call when you need a bounded json object rename keys result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Object Rename Keys as versioned deterministic JSON. Limitation: Processes bounded caller-supplied","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","mapping"],"properties":{"object":{"type":"object","description":"Object supplied to JSON Object Rename Keys; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"mapping":{"type":"object","description":"Mapping supplied to JSON Object Rename Keys; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"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":322,"tokensAfter":322},{"name":"util_json_patch_preview","fixed":{"name":"util_json_patch_preview","description":"previews bounded add, remove, and replace operations without mutating a source using only bounded caller-supplied values. Call when you need a bounded json patch preview result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Patch Preview as versioned deterministic JSON. Limitation: Processes bounded caller-supplied","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["document","operations"],"properties":{"document":{"type":"object","description":"Document supplied to JSON Patch Preview; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"operations":{"type":"array","items":{"type":"object","maxProperties":128,"additionalProperties":true},"maxItems":256,"description":"Operations supplied to JSON Patch Preview; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":333,"tokensAfter":333},{"name":"util_json_pattern_fields_check","fixed":{"name":"util_json_pattern_fields_check","description":"checks selected string fields against a bounded regular expression using only bounded caller-supplied values. Call when you need a bounded json pattern fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Pattern Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-suppli","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields","pattern"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Pattern Fields Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON Pattern Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"pattern":{"type":"string","maxLength":8192,"description":"Pattern supplied to JSON Pattern Fields Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":381,"tokensAfter":381},{"name":"util_json_pointer_get","fixed":{"name":"util_json_pointer_get","description":"resolves a bounded RFC 6901-style JSON pointer using only bounded caller-supplied values. Call when you need a bounded json pointer get result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Pointer Get as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory only; it performs no","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["document","pointer"],"properties":{"pointer":{"type":"string","maxLength":8192,"description":"Pointer supplied to JSON Pointer Get; used only for this bounded calculation and processed in memory without retention."},"document":{"type":"object","description":"Document supplied to JSON Pointer Get; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":309,"tokensAfter":309},{"name":"util_json_required_fields_check","fixed":{"name":"util_json_required_fields_check","description":"finds absent or null required top-level fields using only bounded caller-supplied values. Call when you need a bounded json required fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Required Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","required_fields"],"properties":{"object":{"type":"object","description":"Object supplied to JSON Required Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"required_fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Required Fields supplied to JSON Required Fields Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":334,"tokensAfter":334},{"name":"util_json_schema_validate_lite","fixed":{"name":"util_json_schema_validate_lite","description":"Lite validate object required keys and types vs a tiny schema","inputSchema":{"type":"object","required":["instance","schema"],"properties":{"schema":{"type":"object","description":"Lite JSON schema object"},"instance":{"type":"object","description":"JSON instance object"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":100,"tokensAfter":100},{"name":"util_json_string_length_check","fixed":{"name":"util_json_string_length_check","description":"checks selected string fields against caller length bounds using only bounded caller-supplied values. Call when you need a bounded json string length check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON String Length Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields","minimum","maximum"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON String Length Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON String Length Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum":{"type":"integer","description":"Maximum supplied to JSON String Length Check; used only for this bounded calculation and processed in memory without retention."},"minimum":{"type":"integer","description":"Minimum supplied to JSON String Length Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":426,"tokensAfter":426},{"name":"util_json_timestamp_fields_check","fixed":{"name":"util_json_timestamp_fields_check","description":"checks selected fields as integer epoch seconds within bounds using only bounded caller-supplied values. Call when you need a bounded json timestamp fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Timestamp Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplie","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields","minimum_epoch","maximum_epoch"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Timestamp Fields Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON Timestamp Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum_epoch":{"type":"integer","description":"Maximum Epoch supplied to JSON Timestamp Fields Check; used only for this bounded calculation and processed in memory without retention."},"minimum_epoch":{"type":"integer","description":"Minimum Epoch supplied to JSON Timestamp Fields Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":440,"tokensAfter":440},{"name":"util_json_type_map_check","fixed":{"name":"util_json_type_map_check","description":"checks top-level fields against caller-declared JSON type names using only bounded caller-supplied values. Call when you need a bounded json type map check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Type Map Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memo","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","types"],"properties":{"types":{"type":"object","description":"Types supplied to JSON Type Map Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"object":{"type":"object","description":"Object supplied to JSON Type Map Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":317,"tokensAfter":317},{"name":"util_json_unique_fields_check","fixed":{"name":"util_json_unique_fields_check","description":"finds duplicate composite keys across object rows using only bounded caller-supplied values. Call when you need a bounded json unique fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON Unique Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["items","fields"],"properties":{"items":{"type":"array","items":{"type":"object","maxProperties":128,"additionalProperties":true},"maxItems":256,"description":"Items supplied to JSON Unique Fields Check; used only for this bounded calculation and processed in memory without retention."},"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON Unique Fields Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":335,"tokensAfter":335},{"name":"util_json_url_fields_check","fixed":{"name":"util_json_url_fields_check","description":"checks selected fields for absolute HTTP or HTTPS URL shape using only bounded caller-supplied values. Call when you need a bounded json url fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON URL Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memo","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON URL Fields Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON URL Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":322,"tokensAfter":322},{"name":"util_json_uuid_fields_check","fixed":{"name":"util_json_uuid_fields_check","description":"checks selected fields for canonical UUID text shape using only bounded caller-supplied values. Call when you need a bounded json uuid fields check result before an agent hands structured data or a batch plan to a downstream tool with a stricter contract. Returns the bounded transformation or validation finding with counts, normalized values, and a versioned result contract for JSON UUID Fields Check as versioned deterministic JSON. Limitation: Processes bounded caller-supplied data in memory on","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["object","fields"],"properties":{"fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Fields supplied to JSON UUID Fields Check; used only for this bounded calculation and processed in memory without retention."},"object":{"type":"object","description":"Object supplied to JSON UUID Fields Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":323,"tokensAfter":323},{"name":"util_json_validate","fixed":{"name":"util_json_validate","description":"Validate and pretty-print JSON. Returns validity, errors, and formatted output.","inputSchema":{"type":"object","required":["input"],"properties":{"input":{"type":"string","description":"JSON string to validate"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":72,"tokensAfter":72},{"name":"util_jsonld_key_list","fixed":{"name":"util_jsonld_key_list","description":"List top-level keys from JSON-LD or JSON objects the caller already holds.","inputSchema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","description":"JSON object or array of objects whose keys will be listed."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":89,"tokensAfter":89},{"name":"util_last_modified_compare","fixed":{"name":"util_last_modified_compare","description":"orders two Last-Modified instants and reports their delta using only bounded caller-supplied values. Call when you need a bounded last modified compare result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Last Modified Compare as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web searc","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["before_epoch","after_epoch"],"properties":{"after_epoch":{"type":"integer","description":"After Epoch supplied to Last Modified Compare; used only for this bounded calculation and processed in memory without retention."},"before_epoch":{"type":"integer","description":"Before Epoch supplied to Last Modified Compare; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":302,"tokensAfter":302},{"name":"util_latency_sla_check","fixed":{"name":"util_latency_sla_check","description":"Compare observed latency against an SLA threshold in milliseconds.","inputSchema":{"type":"object","required":["observed_ms","sla_ms"],"properties":{"sla_ms":{"type":"number","description":"SLA latency threshold in milliseconds."},"observed_ms":{"type":"number","description":"Observed latency sample in milliseconds."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":111,"tokensAfter":111},{"name":"util_lei_lookup","fixed":{"name":"util_lei_lookup","description":"Look up a 20-character Legal Entity Identifier (LEI) via GLEIF: legal name, status, jurisdiction, registration.","inputSchema":{"type":"object","required":["lei"],"properties":{"lei":{"type":"string","description":"20-character LEI"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":77,"tokensAfter":77},{"name":"util_line_count","fixed":{"name":"util_line_count","description":"Count lines in caller-held text with nonempty breakdown","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Input field: text."},"keep_empty":{"type":"boolean","description":"Input field: keep empty."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":91,"tokensAfter":91},{"name":"util_list_chunk","fixed":{"name":"util_list_chunk","description":"Delx first-party micro-utility util_list_chunk at $0.001 USDC.","inputSchema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{},"description":"items"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":72,"tokensAfter":72},{"name":"util_list_len","fixed":{"name":"util_list_len","description":"Return length of a JSON array or separator-split string list","inputSchema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","description":"Input field: items."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":72,"tokensAfter":72},{"name":"util_list_len_safe","fixed":{"name":"util_list_len_safe","description":"Safe length of a list/JSON array","inputSchema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","description":"Input field: items."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":66,"tokensAfter":66},{"name":"util_location_header_resolve","fixed":{"name":"util_location_header_resolve","description":"resolves a relative Location value against a caller-supplied base URL using only bounded caller-supplied values. Call when you need a bounded location header resolve result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Location Header Resolve as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP re","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["base_url","location"],"properties":{"base_url":{"type":"string","maxLength":8192,"description":"Base URL supplied to Location Header Resolve; used only for this bounded calculation and processed in memory without retention."},"location":{"type":"string","maxLength":8192,"description":"Location supplied to Location Header Resolve; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":307,"tokensAfter":307},{"name":"util_luhn_check","fixed":{"name":"util_luhn_check","description":"Validate a digit string with the Luhn checksum (does not prove a card is real).","inputSchema":{"type":"object","required":["number"],"properties":{"number":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":69,"tokensAfter":69},{"name":"util_mcp_server_readiness_report","fixed":{"name":"util_mcp_server_readiness_report","description":"Score an MCP server for initialize, tools/list, schema hygiene, manifest discovery, and agent usability.","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"HTTP origin or MCP server URL to inspect"},"timeout":{"type":"integer","default":8,"maximum":15,"minimum":1,"description":"Timeout in seconds (1-15)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":117,"tokensAfter":117},{"name":"util_merge_shallow","fixed":{"name":"util_merge_shallow","description":"Shallow-merge two objects (b wins)","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"object","description":"Input field: a."},"b":{"type":"object","description":"Input field: b."}},"additionalProperties":true},"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":79,"tokensAfter":79},{"name":"util_mime_lookup","fixed":{"name":"util_mime_lookup","description":"Look up a common MIME type from a file extension or filename.","inputSchema":{"type":"object","required":["extension"],"properties":{"filename":{"type":"string"},"extension":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_obj_get","fixed":{"name":"util_obj_get","description":"Get object[key] with default","inputSchema":{"type":"object","required":["object","key"],"properties":{"key":{"type":"string","description":"Input field: key."},"object":{"type":"object","description":"Input field: object."},"default":{"description":"Input field: default.","type":"string"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"schema","detail":"Added \"type\":\"string\" to untyped parameters: default. Change to number/boolean/array where that's what you accept.","verify":true},{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":96,"tokensAfter":100},{"name":"util_odds_chain_convert","fixed":{"name":"util_odds_chain_convert","description":"Convert among decimal/american/fractional odds and implied prob","inputSchema":{"type":"object","required":["decimal"],"properties":{"decimal":{"type":"number","description":"Decimal odds (>=1)"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":77,"tokensAfter":77},{"name":"util_ops_health_score","fixed":{"name":"util_ops_health_score","description":"Combine success rate, latency score, and saturation into an ops health band.","inputSchema":{"type":"object","required":["success_rate_percent","latency_score","saturation_percent"],"properties":{"latency_score":{"type":"number","description":"Latency health score 0–100 (higher is better)."},"saturation_percent":{"type":"number","description":"Saturation 0–100 (higher is worse)."},"success_rate_percent":{"type":"number","description":"Success rate 0–100 for the health composite."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":157,"tokensAfter":157},{"name":"util_option_payoff_points","fixed":{"name":"util_option_payoff_points","description":"Payoff points for multi-leg options at sample spots","inputSchema":{"type":"object","required":["legs","spots"],"properties":{"legs":{"type":"array","description":"Option legs [{type,strike,qty,premium}]"},"spots":{"type":"array","description":"Spot samples for payoff diagram"}},"additionalProperties":true},"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":100,"tokensAfter":100},{"name":"util_p95_estimate","fixed":{"name":"util_p95_estimate","description":"Estimate p95 latency from a bounded numeric sample.","inputSchema":{"type":"object","required":["samples"],"properties":{"samples":{"type":"array","description":"Latency or metric samples for quantile estimation."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":80,"tokensAfter":80},{"name":"util_parse_bool_list","fixed":{"name":"util_parse_bool_list","description":"Coerce a list of tokens into booleans","inputSchema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","description":"Input field: items."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":68,"tokensAfter":68},{"name":"util_payload_size_check","fixed":{"name":"util_payload_size_check","description":"Measure payload byte size against soft and hard ceilings before paying","inputSchema":{"type":"object","required":["payload"],"properties":{"payload":{"type":"object","description":"Input field: payload."},"hard_limit_bytes":{"type":"integer","description":"Input field: hard limit bytes."},"soft_limit_bytes":{"type":"integer","description":"Input field: soft limit bytes."}},"additionalProperties":true},"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":127,"tokensAfter":127},{"name":"util_payout_if_yes","fixed":{"name":"util_payout_if_yes","description":"Payout if YES resolves given shares held (\\$1/share style)","inputSchema":{"type":"object","required":["shares"],"properties":{"shares":{"type":"integer","description":"Input field: shares."}},"additionalProperties":true},"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":75,"tokensAfter":75},{"name":"util_price_ceiling_check","fixed":{"name":"util_price_ceiling_check","description":"Check whether a published USDC price stays under a buyer ceiling","inputSchema":{"type":"object","required":["price_usdc","ceiling_usdc"],"properties":{"buffer_pct":{"type":"integer","description":"Input field: buffer pct."},"price_usdc":{"type":"number","description":"Input field: price usdc."},"ceiling_usdc":{"type":"number","description":"Input field: ceiling usdc."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":126,"tokensAfter":126},{"name":"util_qr_payload_classify","fixed":{"name":"util_qr_payload_classify","description":"Classify a decoded QR/barcode string (url/text/wifi heuristic)","inputSchema":{"type":"object","required":["payload"],"properties":{"payload":{"type":"string","description":"Decoded QR/barcode payload text"}},"additionalProperties":true},"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":80,"tokensAfter":80},{"name":"util_query_param_pick","fixed":{"name":"util_query_param_pick","description":"Pick named query parameters from a URL or raw query string","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"Input field: url."},"keys":{"type":"array","description":"Input field: keys."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":89,"tokensAfter":89},{"name":"util_query_string","fixed":{"name":"util_query_string","description":"Parse or build URL query strings.","inputSchema":{"type":"object","required":[],"properties":{"query":{"type":"string"},"action":{"type":"string"},"params":{"type":"object"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":69,"tokensAfter":69},{"name":"util_query_string_parse","fixed":{"name":"util_query_string_parse","description":"Parse query pairs and redact credential-like keys without fetching.","inputSchema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","description":"Raw query string or URL whose query pairs will be parsed."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":88,"tokensAfter":88},{"name":"util_queue_wait_estimate","fixed":{"name":"util_queue_wait_estimate","description":"Estimate queue wait from depth, mean service time, and workers.","inputSchema":{"type":"object","required":["queue_depth","service_ms"],"properties":{"workers":{"type":"number","description":"Number of parallel workers draining the queue."},"service_ms":{"type":"number","description":"Mean service time per item in milliseconds."},"queue_depth":{"type":"number","description":"Items waiting ahead of the new job."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":138,"tokensAfter":138},{"name":"util_range_list","fixed":{"name":"util_range_list","description":"Generate a Python-style range list","inputSchema":{"type":"object","required":["start","stop"],"properties":{"step":{"type":"integer","description":"Input field: step."},"stop":{"type":"integer","description":"Input field: stop."},"start":{"type":"integer","description":"Input field: start."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":102,"tokensAfter":102},{"name":"util_rate_limit_window_check","fixed":{"name":"util_rate_limit_window_check","description":"checks remaining quota against reset timing and requested calls using only bounded caller-supplied values. Call when you need a bounded rate limit window check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Rate Limit Window Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request,","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["remaining","requested","reset_epoch","now_epoch"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to Rate Limit Window Check; used only for this bounded calculation and processed in memory without retention."},"remaining":{"type":"integer","description":"Remaining supplied to Rate Limit Window Check; used only for this bounded calculation and processed in memory without retention."},"requested":{"type":"integer","description":"Requested supplied to Rate Limit Window Check; used only for this bounded calculation and processed in memory without retention."},"reset_epoch":{"type":"integer","description":"Reset Epoch supplied to Rate Limit Window Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":406,"tokensAfter":406},{"name":"util_rdap_lookup","fixed":{"name":"util_rdap_lookup","description":"Fetch registrar, status, and registration dates for trust, compliance, and domain ops.","inputSchema":{"type":"object","required":["domain"],"properties":{"domain":{"type":"string","description":"Domain to inspect"},"timeout":{"type":"integer","default":8,"maximum":15,"minimum":1,"description":"Timeout in seconds (1-15)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":103,"tokensAfter":103},{"name":"util_reading_time","fixed":{"name":"util_reading_time","description":"Estimate reading time from word count.","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":57,"tokensAfter":57},{"name":"util_redirect_chain_check","fixed":{"name":"util_redirect_chain_check","description":"checks a caller-supplied redirect chain for loops, downgrade, and hop budget using only bounded caller-supplied values. Call when you need a bounded redirect chain check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Redirect Chain Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP r","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["urls","max_hops"],"properties":{"urls":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Urls supplied to Redirect Chain Check; used only for this bounded calculation and processed in memory without retention."},"max_hops":{"type":"integer","description":"Max Hops supplied to Redirect Chain Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":308,"tokensAfter":308},{"name":"util_referrer_policy_check","fixed":{"name":"util_referrer_policy_check","description":"classifies a Referrer-Policy value against a caller allowlist using only bounded caller-supplied values. Call when you need a bounded referrer policy check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Referrer Policy Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web s","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["value","allowed"],"properties":{"value":{"type":"string","maxLength":8192,"description":"Value supplied to Referrer Policy Check; used only for this bounded calculation and processed in memory without retention."},"allowed":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed supplied to Referrer Policy Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":313,"tokensAfter":313},{"name":"util_refund_policy_preflight","fixed":{"name":"util_refund_policy_preflight","description":"Evaluate simple refund eligibility flags against policy JSON","inputSchema":{"type":"object","required":["policy","purchase"],"properties":{"policy":{"type":"object","description":"Refund policy JSON"},"purchase":{"type":"object","description":"Purchase facts JSON"}},"additionalProperties":true},"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":98,"tokensAfter":98},{"name":"util_remove_punctuation","fixed":{"name":"util_remove_punctuation","description":"Delx first-party micro-utility util_remove_punctuation at $0.001 USDC.","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"text"}},"additionalProperties":true},"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":73,"tokensAfter":73},{"name":"util_rename_key","fixed":{"name":"util_rename_key","description":"Rename a single object key","inputSchema":{"type":"object","required":["object","from_key","to_key"],"properties":{"object":{"type":"object","description":"Input field: object."},"to_key":{"type":"string","description":"Input field: to key."},"from_key":{"type":"string","description":"Input field: from key."}},"additionalProperties":true},"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":107,"tokensAfter":107},{"name":"util_resolution_payout_matrix","fixed":{"name":"util_resolution_payout_matrix","description":"Payout matrix for multi-outcome shares at resolution","inputSchema":{"type":"object","required":["holdings","winning_index"],"properties":{"holdings":{"type":"array","description":"Share holdings per outcome"},"winning_index":{"type":"integer","description":"Index of the winning outcome"}},"additionalProperties":true},"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":105,"tokensAfter":105},{"name":"util_retention_policy_check","fixed":{"name":"util_retention_policy_check","description":"Compare declared retention with a maximum policy window.","inputSchema":{"type":"object","required":["retention_days","max_days"],"properties":{"max_days":{"type":"number","description":"Input field: max_days."},"retention_days":{"type":"number","description":"Input field: retention_days."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":105,"tokensAfter":105},{"name":"util_robots_directive_merge","fixed":{"name":"util_robots_directive_merge","description":"merges generic and named-agent robots directives with specific precedence using only bounded caller-supplied values. Call when you need a bounded robots directive merge result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Robots Directive Merge as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["generic","agent_specific"],"properties":{"generic":{"type":"string","maxLength":8192,"description":"Generic supplied to Robots Directive Merge; used only for this bounded calculation and processed in memory without retention."},"agent_specific":{"type":"string","maxLength":8192,"description":"Agent Specific supplied to Robots Directive Merge; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":310,"tokensAfter":310},{"name":"util_runway","fixed":{"name":"util_runway","description":"Calculate static cash runway from cash and monthly burn.","inputSchema":{"type":"object","required":["cash","monthly_burn"],"properties":{"cash":{"type":"number","description":"Input field: cash."},"monthly_burn":{"type":"number","description":"Input field: monthly_burn."}},"additionalProperties":true},"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":95,"tokensAfter":95},{"name":"util_seeded_ab_assignment","fixed":{"name":"util_seeded_ab_assignment","description":"assigns a stable subject to A or B using caller weights using only bounded caller-supplied values. Call when you need a bounded seeded ab assignment result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Ab Assignment as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptography, lotteri","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["subject","weight_a","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Ab Assignment; used only for this bounded calculation and processed in memory without retention."},"subject":{"type":"string","maxLength":8192,"description":"Subject supplied to Seeded Ab Assignment; used only for this bounded calculation and processed in memory without retention."},"weight_a":{"type":"number","description":"Weight A supplied to Seeded Ab Assignment; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":351,"tokensAfter":351},{"name":"util_seeded_backoff_schedule","fixed":{"name":"util_seeded_backoff_schedule","description":"builds a reproducible jittered exponential backoff schedule using only bounded caller-supplied values. Call when you need a bounded seeded backoff schedule result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Backoff Schedule as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptograph","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["base_ms","factor","attempts","jitter_fraction","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Backoff Schedule; used only for this bounded calculation and processed in memory without retention."},"factor":{"type":"number","description":"Factor supplied to Seeded Backoff Schedule; used only for this bounded calculation and processed in memory without retention."},"base_ms":{"type":"integer","description":"Base Ms supplied to Seeded Backoff Schedule; used only for this bounded calculation and processed in memory without retention."},"attempts":{"type":"integer","description":"Attempts supplied to Seeded Backoff Schedule; used only for this bounded calculation and processed in memory without retention."},"jitter_fraction":{"type":"number","description":"Jitter Fraction supplied to Seeded Backoff Schedule; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":456,"tokensAfter":456},{"name":"util_seeded_batch_order","fixed":{"name":"util_seeded_batch_order","description":"orders batch identifiers reproducibly for replayable processing using only bounded caller-supplied values. Call when you need a bounded seeded batch order result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Batch Order as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptography, lot","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["batch_ids","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Batch Order; used only for this bounded calculation and processed in memory without retention."},"batch_ids":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Batch Ids supplied to Seeded Batch Order; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":312,"tokensAfter":312},{"name":"util_seeded_holdout_assignment","fixed":{"name":"util_seeded_holdout_assignment","description":"assigns a stable subject to holdout or treatment using only bounded caller-supplied values. Call when you need a bounded seeded holdout assignment result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Holdout Assignment as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptography, lott","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["subject","holdout_fraction","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Holdout Assignment; used only for this bounded calculation and processed in memory without retention."},"subject":{"type":"string","maxLength":8192,"description":"Subject supplied to Seeded Holdout Assignment; used only for this bounded calculation and processed in memory without retention."},"holdout_fraction":{"type":"number","description":"Holdout Fraction supplied to Seeded Holdout Assignment; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":363,"tokensAfter":363},{"name":"util_seeded_multivariate_assignment","fixed":{"name":"util_seeded_multivariate_assignment","description":"assigns a stable subject to one weighted variant using only bounded caller-supplied values. Call when you need a bounded seeded multivariate assignment result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Multivariate Assignment as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptogr","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["subject","variants","weights","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Multivariate Assignment; used only for this bounded calculation and processed in memory without retention."},"subject":{"type":"string","maxLength":8192,"description":"Subject supplied to Seeded Multivariate Assignment; used only for this bounded calculation and processed in memory without retention."},"weights":{"type":"array","items":{"type":"number"},"maxItems":256,"description":"Weights supplied to Seeded Multivariate Assignment; used only for this bounded calculation and processed in memory without retention."},"variants":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Variants supplied to Seeded Multivariate Assignment; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":441,"tokensAfter":441},{"name":"util_seeded_priority_order","fixed":{"name":"util_seeded_priority_order","description":"orders equal-priority tasks reproducibly using only bounded caller-supplied values. Call when you need a bounded seeded priority order result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Priority Order as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptography, lotteries with value","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["tasks","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Priority Order; used only for this bounded calculation and processed in memory without retention."},"tasks":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Tasks supplied to Seeded Priority Order; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":311,"tokensAfter":311},{"name":"util_seeded_round_robin_start","fixed":{"name":"util_seeded_round_robin_start","description":"chooses a reproducible starting index for round-robin rotation using only bounded caller-supplied values. Call when you need a bounded seeded round robin start result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Round Robin Start as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not crypto","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["member_count","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Round Robin Start; used only for this bounded calculation and processed in memory without retention."},"member_count":{"type":"integer","description":"Member Count supplied to Seeded Round Robin Start; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":304,"tokensAfter":304},{"name":"util_seeded_schedule_offset","fixed":{"name":"util_seeded_schedule_offset","description":"selects a reproducible offset inside a scheduling window using only bounded caller-supplied values. Call when you need a bounded seeded schedule offset result when an agent needs a reproducible decision that another run can independently replay. Returns the deterministic selection plus seed provenance, population bounds, and the operation-specific outcome for Seeded Schedule Offset as versioned deterministic JSON. Limitation: Uses Python pseudorandomness for reproducibility, not cryptography, lo","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["window_seconds","seed"],"properties":{"seed":{"type":"string","maxLength":8192,"description":"Seed supplied to Seeded Schedule Offset; used only for this bounded calculation and processed in memory without retention."},"window_seconds":{"type":"integer","description":"Window Seconds supplied to Seeded Schedule Offset; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":304,"tokensAfter":304},{"name":"util_semver_compare","fixed":{"name":"util_semver_compare","description":"Compare two semantic versions (major.minor.patch).","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"string"},"b":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":67,"tokensAfter":67},{"name":"util_semver_compare_lite","fixed":{"name":"util_semver_compare_lite","description":"Compare two semver triples (-1,0,1)","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"string","description":"Input field: a."},"b":{"type":"string","description":"Input field: b."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":81,"tokensAfter":81},{"name":"util_set_diff","fixed":{"name":"util_set_diff","description":"Set difference a - b","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"array","description":"Input field: a."},"b":{"type":"array","description":"Input field: b."}},"additionalProperties":true},"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":74,"tokensAfter":74},{"name":"util_set_intersect","fixed":{"name":"util_set_intersect","description":"Set intersection of two lists","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"array","description":"Input field: a."},"b":{"type":"array","description":"Input field: b."}},"additionalProperties":true},"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":77,"tokensAfter":77},{"name":"util_set_union","fixed":{"name":"util_set_union","description":"Set union of two lists (order-preserving)","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"array","description":"Input field: a."},"b":{"type":"array","description":"Input field: b."}},"additionalProperties":true},"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":80,"tokensAfter":80},{"name":"util_sitemap_changefreq_check","fixed":{"name":"util_sitemap_changefreq_check","description":"classifies a sitemap changefreq token against the defined vocabulary using only bounded caller-supplied values. Call when you need a bounded sitemap changefreq check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Sitemap Changefreq Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP r","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["changefreq"],"properties":{"changefreq":{"type":"string","maxLength":8192,"description":"Changefreq supplied to Sitemap Changefreq Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":254,"tokensAfter":254},{"name":"util_sitemap_entry_validate","fixed":{"name":"util_sitemap_entry_validate","description":"checks one sitemap URL entry for required location and bounded metadata using only bounded caller-supplied values. Call when you need a bounded sitemap entry validate result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Sitemap Entry Validate as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP re","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["entry"],"properties":{"entry":{"type":"object","description":"Entry supplied to Sitemap Entry Validate; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":257,"tokensAfter":257},{"name":"util_sla_breach_count","fixed":{"name":"util_sla_breach_count","description":"Count SLA breaches in a latency sample against a millisecond threshold.","inputSchema":{"type":"object","required":["samples_ms","sla_ms"],"properties":{"sla_ms":{"type":"number","description":"SLA latency threshold in milliseconds."},"samples_ms":{"type":"array","description":"Latency samples in milliseconds to count SLA breaches."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":115,"tokensAfter":115},{"name":"util_slug_validate","fixed":{"name":"util_slug_validate","description":"Validate a URL/product slug against a safe lowercase hyphen pattern","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","description":"Input field: slug."},"max_len":{"type":"integer","description":"Input field: max len."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":94,"tokensAfter":94},{"name":"util_starts_with","fixed":{"name":"util_starts_with","description":"Check whether text starts with a prefix","inputSchema":{"type":"object","required":["text","prefix"],"properties":{"text":{"type":"string","description":"Input field: text."},"prefix":{"type":"string","description":"Input field: prefix."}},"additionalProperties":true},"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":87,"tokensAfter":87},{"name":"util_status_class","fixed":{"name":"util_status_class","description":"Classify an HTTP status code into family with retry hint","inputSchema":{"type":"object","required":["status_code"],"properties":{"status_code":{"type":"integer","description":"Input field: status code."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":78,"tokensAfter":78},{"name":"util_status_retry_classify","fixed":{"name":"util_status_retry_classify","description":"classifies whether a method and status pair is retryable under caller policy using only bounded caller-supplied values. Call when you need a bounded status retry classify result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Status Retry Classify as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["method","status","retry_statuses"],"properties":{"method":{"type":"string","maxLength":8192,"description":"Method supplied to Status Retry Classify; used only for this bounded calculation and processed in memory without retention."},"status":{"type":"integer","description":"Status supplied to Status Retry Classify; used only for this bounded calculation and processed in memory without retention."},"retry_statuses":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Retry Statuses supplied to Status Retry Classify; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":365,"tokensAfter":365},{"name":"util_stop_loss_pct","fixed":{"name":"util_stop_loss_pct","description":"Stop-loss price from entry and stop percent move","inputSchema":{"type":"object","required":["entry","pct","side"],"properties":{"pct":{"type":"number","description":"Input field: pct."},"side":{"type":"string","description":"Input field: side."},"entry":{"type":"integer","description":"Input field: entry."}},"additionalProperties":true},"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":107,"tokensAfter":107},{"name":"util_text_truncate","fixed":{"name":"util_text_truncate","description":"Truncate text to a max length with optional ellipsis.","inputSchema":{"type":"object","required":["text","max_length"],"properties":{"text":{"type":"string","maxLength":200000},"max_length":{"type":"integer","maximum":200000,"minimum":1}},"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":87,"tokensAfter":87},{"name":"util_timestamp_convert","fixed":{"name":"util_timestamp_convert","description":"Convert between timestamp formats: Unix epoch, ISO 8601, and human-readable.","inputSchema":{"type":"object","required":["input"],"properties":{"to":{"enum":["all","unix","iso","human"],"type":"string","default":"all","description":"Target format"},"input":{"type":"string","description":"Timestamp: Unix epoch (seconds), ISO 8601 string, or 'now'"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":112,"tokensAfter":112},{"name":"util_timezone_lookup","fixed":{"name":"util_timezone_lookup","description":"Resolve an IANA timezone to offset, abbreviation, DST flag, and local time for a given instant (or now).","inputSchema":{"type":"object","required":["timezone"],"properties":{"at":{"type":"string","default":"now","description":"Optional instant: ISO 8601, Unix seconds, or 'now' (default)"},"timezone":{"type":"string","description":"IANA timezone id, e.g. America/New_York or Europe/Lisbon"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":123,"tokensAfter":123},{"name":"util_token_estimate","fixed":{"name":"util_token_estimate","description":"Estimate token count for text. Uses word/4 heuristic (GPT-family) and char/4 (Claude-family).","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Text to estimate tokens for"},"model":{"type":"string","default":"gpt-4","description":"Optional model hint: gpt-4, claude-3, etc."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":106,"tokensAfter":106},{"name":"util_transfer_encoding_check","fixed":{"name":"util_transfer_encoding_check","description":"checks transfer-coding order and whether chunked appears only last using only bounded caller-supplied values. Call when you need a bounded transfer encoding check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Transfer Encoding Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP reque","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to Transfer Encoding Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":250,"tokensAfter":250},{"name":"util_truncate_middle","fixed":{"name":"util_truncate_middle","description":"Truncate long text in the middle with an ellipsis","inputSchema":{"type":"object","required":["text","max_chars"],"properties":{"text":{"type":"string","description":"Input field: text."},"max_chars":{"type":"integer","description":"Input field: max chars."}},"additionalProperties":true},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":94,"tokensAfter":94},{"name":"util_tx_hash_format_check","fixed":{"name":"util_tx_hash_format_check","description":"Validate 0x + 64 hex transaction hash shape","inputSchema":{"type":"object","required":["tx_hash"],"properties":{"tx_hash":{"type":"string","description":"0x-prefixed 32-byte tx hash"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_tx_hash_validate","fixed":{"name":"util_tx_hash_validate","description":"Validate a 32-byte transaction hash format and normalize casing.","inputSchema":{"type":"object","required":["tx_hash"],"properties":{"tx_hash":{"type":"string","description":"32-byte transaction hash hex (64 hex chars, optional 0x)."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":87,"tokensAfter":87},{"name":"util_unit_convert","fixed":{"name":"util_unit_convert","description":"Convert values between units (length, mass, volume, time, data, temperature). Supports one conversion or a batch of up to 100.","inputSchema":{"type":"object","required":[],"properties":{"value":{"type":"number","description":"Single value to convert (or use conversions[])"},"to_unit":{"type":"string","description":"Target unit, e.g. mi, kg, f, gib"},"from_unit":{"type":"string","description":"Source unit, e.g. km, lb, c, mib"},"conversions":{"type":"array","items":{"type":"object"},"description":"Optional batch of {value, from_unit, to_unit} (max 100)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":169,"tokensAfter":169},{"name":"util_url_canonical_compare","fixed":{"name":"util_url_canonical_compare","description":"compares URLs after scheme, host, port, path, and query normalization using only bounded caller-supplied values. Call when you need a bounded url canonical compare result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for URL Canonical Compare as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP reques","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["left","right"],"properties":{"left":{"type":"string","maxLength":8192,"description":"Left supplied to URL Canonical Compare; used only for this bounded calculation and processed in memory without retention."},"right":{"type":"string","maxLength":8192,"description":"Right supplied to URL Canonical Compare; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":300,"tokensAfter":300},{"name":"util_url_health","fixed":{"name":"util_url_health","description":"Check if a URL is reachable. Returns HTTP status, latency, and key headers.","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL to check (must start with http:// or https://)"},"timeout":{"type":"integer","default":5,"maximum":10,"minimum":1,"description":"Timeout in seconds (1-10)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":107,"tokensAfter":107},{"name":"util_url_port_policy_check","fixed":{"name":"util_url_port_policy_check","description":"checks a URL effective port against a caller allowlist using only bounded caller-supplied values. Call when you need a bounded url port policy check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for URL Port Policy Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web search, ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["url","allowed_ports"],"properties":{"url":{"type":"string","maxLength":8192,"description":"URL supplied to URL Port Policy Check; used only for this bounded calculation and processed in memory without retention."},"allowed_ports":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Allowed Ports supplied to URL Port Policy Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":312,"tokensAfter":312},{"name":"util_url_query_param_diff","fixed":{"name":"util_url_query_param_diff","description":"finds added, removed, and changed query parameters between URLs using only bounded caller-supplied values. Call when you need a bounded url query param diff result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for URL Query Param Diff as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, web s","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["before_url","after_url"],"properties":{"after_url":{"type":"string","maxLength":8192,"description":"After URL supplied to URL Query Param Diff; used only for this bounded calculation and processed in memory without retention."},"before_url":{"type":"string","maxLength":8192,"description":"Before URL supplied to URL Query Param Diff; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":307,"tokensAfter":307},{"name":"util_url_redirect_target_check","fixed":{"name":"util_url_redirect_target_check","description":"checks a redirect target against allowed schemes and hosts using only bounded caller-supplied values. Call when you need a bounded url redirect target check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for URL Redirect Target Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it performs no DNS lookup, HTTP request, ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["base_url","target","allowed_hosts","allowed_schemes"],"properties":{"target":{"type":"string","maxLength":8192,"description":"Target supplied to URL Redirect Target Check; used only for this bounded calculation and processed in memory without retention."},"base_url":{"type":"string","maxLength":8192,"description":"Base URL supplied to URL Redirect Target Check; used only for this bounded calculation and processed in memory without retention."},"allowed_hosts":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed Hosts supplied to URL Redirect Target Check; used only for this bounded calculation and processed in memory without retention."},"allowed_schemes":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Allowed Schemes supplied to URL Redirect Target Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":452,"tokensAfter":452},{"name":"util_us_market_holiday_check","fixed":{"name":"util_us_market_holiday_check","description":"Check if a YYYY-MM-DD is in a static US market holiday set","inputSchema":{"type":"object","required":["date"],"properties":{"date":{"type":"string","description":"YYYY-MM-DD date"}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":74,"tokensAfter":74},{"name":"util_webhook_signature_timestamp_check","fixed":{"name":"util_webhook_signature_timestamp_check","description":"checks webhook timestamp age and future skew before signature verification using only bounded caller-supplied values. Call when you need a bounded webhook signature timestamp check result before accepting, caching, redirecting, or retrying a caller-supplied web response. Returns normalized web evidence, the computed finding, and an explicit pass or advisory status for Webhook Signature Timestamp Check as versioned deterministic JSON. Limitation: Evaluates only caller-supplied metadata; it perfor","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["timestamp_epoch","now_epoch","maximum_age_seconds","maximum_future_skew_seconds"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to Webhook Signature Timestamp Check; used only for this bounded calculation and processed in memory without retention."},"timestamp_epoch":{"type":"integer","description":"Timestamp Epoch supplied to Webhook Signature Timestamp Check; used only for this bounded calculation and processed in memory without retention."},"maximum_age_seconds":{"type":"integer","description":"Maximum Age Seconds supplied to Webhook Signature Timestamp Check; used only for this bounded calculation and processed in memory without retention."},"maximum_future_skew_seconds":{"type":"integer","description":"Maximum Future Skew Seconds supplied to Webhook Signature Timestamp Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":447,"tokensAfter":447},{"name":"util_wei_ether_convert","fixed":{"name":"util_wei_ether_convert","description":"Convert between wei and ether using fixed 1e18 scaling without RPC.","inputSchema":{"type":"object","required":["amount"],"properties":{"amount":{"type":"number","description":"Numeric amount to convert (wei count or ether units depending on direction)."},"direction":{"type":"string","description":"wei_to_ether or ether_to_wei."}},"additionalProperties":true},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":114,"tokensAfter":114},{"name":"util_word_count","fixed":{"name":"util_word_count","description":"Count words, characters, lines and paragraphs in text.","inputSchema":{"type":"object","required":["text"],"properties":{"text":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":61,"tokensAfter":61},{"name":"util_x402_amount_budget_check","fixed":{"name":"util_x402_amount_budget_check","description":"checks challenge raw amount against an exact buyer call budget using only bounded caller-supplied values. Call when you need a bounded x402 amount budget check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Amount Budget Check as versioned deterministic JSON. Limitation: Validates metadata o","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["amount_raw","maximum_raw"],"properties":{"amount_raw":{"type":"string","maxLength":8192,"description":"Amount Raw supplied to X402 Amount Budget Check; used only for this bounded calculation and processed in memory without retention."},"maximum_raw":{"type":"string","maxLength":8192,"description":"Maximum Raw supplied to X402 Amount Budget Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":312,"tokensAfter":312},{"name":"util_x402_catalog_route_check","fixed":{"name":"util_x402_catalog_route_check","description":"checks one catalog route for tool, method, path, and positive price using only bounded caller-supplied values. Call when you need a bounded x402 catalog route check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Catalog Route Check as versioned deterministic JSON. Limitation: Validates metad","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["route"],"properties":{"route":{"type":"object","description":"Route supplied to X402 Catalog Route Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":258,"tokensAfter":258},{"name":"util_x402_challenge_shape_check","fixed":{"name":"util_x402_challenge_shape_check","description":"checks required top-level fields in a caller-supplied payment challenge using only bounded caller-supplied values. Call when you need a bounded x402 challenge shape check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Challenge Shape Check as versioned deterministic JSON. Limitation: Validat","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["challenge"],"properties":{"challenge":{"type":"object","description":"Challenge supplied to X402 Challenge Shape Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":262,"tokensAfter":262},{"name":"util_x402_challenge_version_check","fixed":{"name":"util_x402_challenge_version_check","description":"compares challenge protocol version with supported versions using only bounded caller-supplied values. Call when you need a bounded x402 challenge version check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Challenge Version Check as versioned deterministic JSON. Limitation: Validates metad","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["version","supported_versions"],"properties":{"version":{"type":"integer","description":"Version supplied to X402 Challenge Version Check; used only for this bounded calculation and processed in memory without retention."},"supported_versions":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Supported Versions supplied to X402 Challenge Version Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":321,"tokensAfter":321},{"name":"util_x402_copy_completeness_check","fixed":{"name":"util_x402_copy_completeness_check","description":"checks product copy for service name, job, outcome, limitation, and minimum length using only bounded caller-supplied values. Call when you need a bounded x402 copy completeness check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Copy Completeness Check as versioned deterministic JSON. Limi","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["service_name","description","minimum_length"],"properties":{"description":{"type":"string","maxLength":8192,"description":"Description supplied to X402 Copy Completeness Check; used only for this bounded calculation and processed in memory without retention."},"service_name":{"type":"string","maxLength":8192,"description":"Service Name supplied to X402 Copy Completeness Check; used only for this bounded calculation and processed in memory without retention."},"minimum_length":{"type":"integer","description":"Minimum Length supplied to X402 Copy Completeness Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":375,"tokensAfter":375},{"name":"util_x402_delivery_content_type_check","fixed":{"name":"util_x402_delivery_content_type_check","description":"compares delivery content type with buyer-accepted media types using only bounded caller-supplied values. Call when you need a bounded x402 delivery content type check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Content Type Check as versioned deterministic JSON. Limitation: Vali","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["content_type","accepted"],"properties":{"accepted":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Accepted supplied to X402 Delivery Content Type Check; used only for this bounded calculation and processed in memory without retention."},"content_type":{"type":"string","maxLength":8192,"description":"Content Type supplied to X402 Delivery Content Type Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":329,"tokensAfter":329},{"name":"util_x402_delivery_hash_check","fixed":{"name":"util_x402_delivery_hash_check","description":"verifies delivered text against a caller-supplied sha-256 digest using only bounded caller-supplied values. Call when you need a bounded x402 delivery hash check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Hash Check as versioned deterministic JSON. Limitation: Validates metadata","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["text","expected_sha256"],"properties":{"text":{"type":"string","maxLength":8192,"description":"Text supplied to X402 Delivery Hash Check; used only for this bounded calculation and processed in memory without retention."},"expected_sha256":{"type":"string","maxLength":8192,"description":"Expected Sha256 supplied to X402 Delivery Hash Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":310,"tokensAfter":310},{"name":"util_x402_delivery_latency_check","fixed":{"name":"util_x402_delivery_latency_check","description":"checks observed delivery latency against a buyer SLA using only bounded caller-supplied values. Call when you need a bounded x402 delivery latency check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Latency Check as versioned deterministic JSON. Limitation: Validates metadata only;","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["latency_ms","maximum_ms"],"properties":{"latency_ms":{"type":"integer","description":"Latency Ms supplied to X402 Delivery Latency Check; used only for this bounded calculation and processed in memory without retention."},"maximum_ms":{"type":"integer","description":"Maximum Ms supplied to X402 Delivery Latency Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":305,"tokensAfter":305},{"name":"util_x402_delivery_receipt_check","fixed":{"name":"util_x402_delivery_receipt_check","description":"checks receipt fields for payment id, resource, amount, and delivery status using only bounded caller-supplied values. Call when you need a bounded x402 delivery receipt check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Receipt Check as versioned deterministic JSON. Limitation: V","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["receipt"],"properties":{"receipt":{"type":"object","description":"Receipt supplied to X402 Delivery Receipt Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":261,"tokensAfter":261},{"name":"util_x402_delivery_schema_check","fixed":{"name":"util_x402_delivery_schema_check","description":"checks delivered object fields against a caller-required field list using only bounded caller-supplied values. Call when you need a bounded x402 delivery schema check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Schema Check as versioned deterministic JSON. Limitation: Validates m","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["result","required_fields"],"properties":{"result":{"type":"object","description":"Result supplied to X402 Delivery Schema Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"required_fields":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Required Fields supplied to X402 Delivery Schema Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":334,"tokensAfter":334},{"name":"util_x402_delivery_size_check","fixed":{"name":"util_x402_delivery_size_check","description":"checks serialized result byte size against a buyer limit using only bounded caller-supplied values. Call when you need a bounded x402 delivery size check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Size Check as versioned deterministic JSON. Limitation: Validates metadata only; i","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["result","maximum_bytes"],"properties":{"result":{"type":"object","description":"Result supplied to X402 Delivery Size Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum_bytes":{"type":"integer","description":"Maximum Bytes supplied to X402 Delivery Size Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":315,"tokensAfter":315},{"name":"util_x402_delivery_status_check","fixed":{"name":"util_x402_delivery_status_check","description":"classifies delivery HTTP status against accepted success codes using only bounded caller-supplied values. Call when you need a bounded x402 delivery status check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Delivery Status Check as versioned deterministic JSON. Limitation: Validates metada","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["status","accepted_statuses"],"properties":{"status":{"type":"integer","description":"Status supplied to X402 Delivery Status Check; used only for this bounded calculation and processed in memory without retention."},"accepted_statuses":{"type":"array","items":{"type":"integer"},"maxItems":256,"description":"Accepted Statuses supplied to X402 Delivery Status Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":318,"tokensAfter":318},{"name":"util_x402_discovery_parity_check","fixed":{"name":"util_x402_discovery_parity_check","description":"compares tool-name sets from catalog, OpenAPI, portfolio, and runtime using only bounded caller-supplied values. Call when you need a bounded x402 discovery parity check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Discovery Parity Check as versioned deterministic JSON. Limitation: Validat","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["catalog_tools","openapi_tools","portfolio_tools","runtime_tools"],"properties":{"catalog_tools":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Catalog Tools supplied to X402 Discovery Parity Check; used only for this bounded calculation and processed in memory without retention."},"openapi_tools":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Openapi Tools supplied to X402 Discovery Parity Check; used only for this bounded calculation and processed in memory without retention."},"runtime_tools":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Runtime Tools supplied to X402 Discovery Parity Check; used only for this bounded calculation and processed in memory without retention."},"portfolio_tools":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Portfolio Tools supplied to X402 Discovery Parity Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":487,"tokensAfter":487},{"name":"util_x402_idempotency_check","fixed":{"name":"util_x402_idempotency_check","description":"compares payment and delivery idempotency keys for one operation using only bounded caller-supplied values. Call when you need a bounded x402 idempotency check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Idempotency Check as versioned deterministic JSON. Limitation: Validates metadata onl","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["payment_key","delivery_key"],"properties":{"payment_key":{"type":"string","maxLength":8192,"description":"Payment Key supplied to X402 Idempotency Check; used only for this bounded calculation and processed in memory without retention."},"delivery_key":{"type":"string","maxLength":8192,"description":"Delivery Key supplied to X402 Idempotency Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":312,"tokensAfter":312},{"name":"util_x402_openapi_route_check","fixed":{"name":"util_x402_openapi_route_check","description":"checks one OpenAPI operation for tool id, request schema, and 402 response using only bounded caller-supplied values. Call when you need a bounded x402 openapi route check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Openapi Route Check as versioned deterministic JSON. Limitation: Validate","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["operation"],"properties":{"operation":{"type":"object","description":"Operation supplied to X402 Openapi Route Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":261,"tokensAfter":261},{"name":"util_x402_pay_to_match","fixed":{"name":"util_x402_pay_to_match","description":"compares challenge pay-to address with an expected merchant address using only bounded caller-supplied values. Call when you need a bounded x402 pay to match result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Pay To Match as versioned deterministic JSON. Limitation: Validates metadata only; it n","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["pay_to","expected"],"properties":{"pay_to":{"type":"string","maxLength":8192,"description":"Pay To supplied to X402 Pay To Match; used only for this bounded calculation and processed in memory without retention."},"expected":{"type":"string","maxLength":8192,"description":"Expected supplied to X402 Pay To Match; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":300,"tokensAfter":300},{"name":"util_x402_payment_deadline_check","fixed":{"name":"util_x402_payment_deadline_check","description":"checks payment authorization deadline against caller time budgets using only bounded caller-supplied values. Call when you need a bounded x402 payment deadline check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Payment Deadline Check as versioned deterministic JSON. Limitation: Validates m","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["deadline_epoch","now_epoch","minimum_lead_seconds","maximum_lead_seconds"],"properties":{"now_epoch":{"type":"integer","description":"Now Epoch supplied to X402 Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."},"deadline_epoch":{"type":"integer","description":"Deadline Epoch supplied to X402 Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."},"maximum_lead_seconds":{"type":"integer","description":"Maximum Lead Seconds supplied to X402 Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."},"minimum_lead_seconds":{"type":"integer","description":"Minimum Lead Seconds supplied to X402 Payment Deadline Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":432,"tokensAfter":432},{"name":"util_x402_payment_header_shape","fixed":{"name":"util_x402_payment_header_shape","description":"checks a caller-supplied payment header for bounded base64 or JSON shape using only bounded caller-supplied values. Call when you need a bounded x402 payment header shape result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Payment Header Shape as versioned deterministic JSON. Limitation: Validate","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["header"],"properties":{"header":{"type":"string","maxLength":8192,"description":"Header supplied to X402 Payment Header Shape; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":251,"tokensAfter":251},{"name":"util_x402_payment_nonce_check","fixed":{"name":"util_x402_payment_nonce_check","description":"checks a payment nonce for presence, length, and caller-known reuse using only bounded caller-supplied values. Call when you need a bounded x402 payment nonce check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Payment Nonce Check as versioned deterministic JSON. Limitation: Validates metad","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["nonce","seen_nonces","minimum_length"],"properties":{"nonce":{"type":"string","maxLength":8192,"description":"Nonce supplied to X402 Payment Nonce Check; used only for this bounded calculation and processed in memory without retention."},"seen_nonces":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Seen Nonces supplied to X402 Payment Nonce Check; used only for this bounded calculation and processed in memory without retention."},"minimum_length":{"type":"integer","description":"Minimum Length supplied to X402 Payment Nonce Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":376,"tokensAfter":376},{"name":"util_x402_payment_payload_size","fixed":{"name":"util_x402_payment_payload_size","description":"checks serialized payment payload bytes against a buyer limit using only bounded caller-supplied values. Call when you need a bounded x402 payment payload size result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Payment Payload Size as versioned deterministic JSON. Limitation: Validates metadata ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["payload","maximum_bytes"],"properties":{"payload":{"type":"object","description":"Payload supplied to X402 Payment Payload Size; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true},"maximum_bytes":{"type":"integer","description":"Maximum Bytes supplied to X402 Payment Payload Size; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":316,"tokensAfter":316},{"name":"util_x402_payment_preflight","fixed":{"name":"util_x402_payment_preflight","description":"Evaluate caller-supplied x402 accepts against price, network, recipient, scheme, and optional expiry policy.","inputSchema":{"type":"object","required":["requirements","max_amount_usdc","allowed_networks"],"properties":{"requirements":{"type":"object"},"asset_decimals":{"type":"integer","default":6,"maximum":18,"minimum":0},"max_amount_usdc":{"type":"number","minimum":0},"allowed_networks":{"type":"array","items":{"type":"string"},"maxItems":20,"minItems":1},"now_epoch_seconds":{"type":"integer","minimum":0},"min_expiry_seconds":{"type":"integer","default":30,"maximum":86400,"minimum":0}},"additionalProperties":false},"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":189,"tokensAfter":189},{"name":"util_x402_payment_replay_key","fixed":{"name":"util_x402_payment_replay_key","description":"derives a stable non-secret replay-detection key from payment metadata using only bounded caller-supplied values. Call when you need a bounded x402 payment replay key result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Payment Replay Key as versioned deterministic JSON. Limitation: Validates meta","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["payer","nonce","resource"],"properties":{"nonce":{"type":"string","maxLength":8192,"description":"Nonce supplied to X402 Payment Replay Key; used only for this bounded calculation and processed in memory without retention."},"payer":{"type":"string","maxLength":8192,"description":"Payer supplied to X402 Payment Replay Key; used only for this bounded calculation and processed in memory without retention."},"resource":{"type":"string","maxLength":8192,"description":"Resource supplied to X402 Payment Replay Key; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":358,"tokensAfter":358},{"name":"util_x402_portfolio_route_check","fixed":{"name":"util_x402_portfolio_route_check","description":"checks one portfolio entry for ownership, economics, resource, and discoverability using only bounded caller-supplied values. Call when you need a bounded x402 portfolio route check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Portfolio Route Check as versioned deterministic JSON. Limitati","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["product"],"properties":{"product":{"type":"object","description":"Product supplied to X402 Portfolio Route Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":261,"tokensAfter":261},{"name":"util_x402_price_drift_check","fixed":{"name":"util_x402_price_drift_check","description":"compares advertised and challenged raw prices against a tolerance using only bounded caller-supplied values. Call when you need a bounded x402 price drift check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Price Drift Check as versioned deterministic JSON. Limitation: Validates metadata on","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["advertised_raw","challenged_raw","maximum_drift_raw"],"properties":{"advertised_raw":{"type":"string","maxLength":8192,"description":"Advertised Raw supplied to X402 Price Drift Check; used only for this bounded calculation and processed in memory without retention."},"challenged_raw":{"type":"string","maxLength":8192,"description":"Challenged Raw supplied to X402 Price Drift Check; used only for this bounded calculation and processed in memory without retention."},"maximum_drift_raw":{"type":"string","maxLength":8192,"description":"Maximum Drift Raw supplied to X402 Price Drift Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":379,"tokensAfter":379},{"name":"util_x402_refund_amount_check","fixed":{"name":"util_x402_refund_amount_check","description":"compares requested refund raw amount with original settled amount using only bounded caller-supplied values. Call when you need a bounded x402 refund amount check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Refund Amount Check as versioned deterministic JSON. Limitation: Validates metadat","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["requested_raw","settled_raw"],"properties":{"settled_raw":{"type":"string","maxLength":8192,"description":"Settled Raw supplied to X402 Refund Amount Check; used only for this bounded calculation and processed in memory without retention."},"requested_raw":{"type":"string","maxLength":8192,"description":"Requested Raw supplied to X402 Refund Amount Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":315,"tokensAfter":315},{"name":"util_x402_refund_deadline_check","fixed":{"name":"util_x402_refund_deadline_check","description":"checks a refund request timestamp against a policy window using only bounded caller-supplied values. Call when you need a bounded x402 refund deadline check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Refund Deadline Check as versioned deterministic JSON. Limitation: Validates metadata on","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["settled_at_epoch","requested_at_epoch","window_seconds"],"properties":{"window_seconds":{"type":"integer","description":"Window Seconds supplied to X402 Refund Deadline Check; used only for this bounded calculation and processed in memory without retention."},"settled_at_epoch":{"type":"integer","description":"Settled At Epoch supplied to X402 Refund Deadline Check; used only for this bounded calculation and processed in memory without retention."},"requested_at_epoch":{"type":"integer","description":"Requested At Epoch supplied to X402 Refund Deadline Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":373,"tokensAfter":373},{"name":"util_x402_refund_eligibility_check","fixed":{"name":"util_x402_refund_eligibility_check","description":"evaluates caller-supplied delivery outcome against explicit refund reasons using only bounded caller-supplied values. Call when you need a bounded x402 refund eligibility check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Refund Eligibility Check as versioned deterministic JSON. Limitation","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["settled","delivered","failure_code","eligible_codes"],"properties":{"settled":{"type":"boolean","description":"Settled supplied to X402 Refund Eligibility Check; used only for this bounded calculation and processed in memory without retention."},"delivered":{"type":"boolean","description":"Delivered supplied to X402 Refund Eligibility Check; used only for this bounded calculation and processed in memory without retention."},"failure_code":{"type":"string","maxLength":8192,"description":"Failure Code supplied to X402 Refund Eligibility Check; used only for this bounded calculation and processed in memory without retention."},"eligible_codes":{"type":"array","items":{"type":"string","maxLength":8192},"maxItems":256,"description":"Eligible Codes supplied to X402 Refund Eligibility Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"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":438,"tokensAfter":438},{"name":"util_x402_refund_receipt_check","fixed":{"name":"util_x402_refund_receipt_check","description":"checks caller-supplied refund receipt identifiers, amount, and status using only bounded caller-supplied values. Call when you need a bounded x402 refund receipt check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Refund Receipt Check as versioned deterministic JSON. Limitation: Validates m","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["receipt"],"properties":{"receipt":{"type":"object","description":"Receipt supplied to X402 Refund Receipt Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"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":260,"tokensAfter":260},{"name":"util_x402_registry_route_check","fixed":{"name":"util_x402_registry_route_check","description":"checks one runtime registry entry for tool, path, method, and upstream using only bounded caller-supplied values. Call when you need a bounded x402 registry route check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Registry Route Check as versioned deterministic JSON. Limitation: Validates ","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["route"],"properties":{"route":{"type":"object","description":"Route supplied to X402 Registry Route Check; used only for this bounded calculation and processed in memory without retention.","maxProperties":128,"additionalProperties":true}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":259,"tokensAfter":259},{"name":"util_x402_retry_safety_check","fixed":{"name":"util_x402_retry_safety_check","description":"checks whether retrying after challenge or delivery failure risks double settlement using only bounded caller-supplied values. Call when you need a bounded x402 retry safety check result before paying for or accepting an x402 or agent delivery assembled from caller-supplied challenge and result metadata. Returns contract-specific checks, normalized evidence, mismatch reasons, and an explicit acceptance or rejection status for X402 Retry Safety Check as versioned deterministic JSON. Limitation: V","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["payment_settled","delivery_received","idempotency_key_present"],"properties":{"payment_settled":{"type":"boolean","description":"Payment Settled supplied to X402 Retry Safety Check; used only for this bounded calculation and processed in memory without retention."},"delivery_received":{"type":"boolean","description":"Delivery Received supplied to X402 Retry Safety Check; used only for this bounded calculation and processed in memory without retention."},"idempotency_key_present":{"type":"boolean","description":"Idempotency Key Present supplied to X402 Retry Safety Check; used only for this bounded calculation and processed in memory without retention."}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":375,"tokensAfter":375}],"toolsChanged":307,"tokensSaved":0,"todo":[{"tool":"create_fleet","params":["name","mission","agent_id","ttl_seconds","owner_agent_id","invite_ttl_seconds","member_permissions","membership_ttl_seconds"]},{"tool":"demand_board","params":["limit","action"]},{"tool":"extract_image_text","params":["max_chars"]},{"tool":"extract_pdf_ocr","params":["max_chars","max_pages"]},{"tool":"extract_pdf_text","params":["max_chars"]},{"tool":"generate_qr_code","params":["border","format","box_size","error_correction"]},{"tool":"geocode_us_address","params":["timeout","benchmark"]},{"tool":"get_delx_mission_submission","params":["agent_id","mission_id","submission_id"]},{"tool":"get_fx_rates_ecb","params":["timeout"]},{"tool":"join_fleet","params":["agent_id","invite_token"]},{"tool":"leave_fleet","params":["agent_id","fleet_id"]},{"tool":"leave_hive_note","params":["session_id","ttl_seconds","idempotency_key"]},{"tool":"review_hive_artifact","params":["outcome","agent_id","evidence","fleet_id","artifact_id","artifact_sha256","read_receipt_id"]},{"tool":"rotate_fleet_invite","params":["agent_id","fleet_id","owner_agent_id","invite_ttl_seconds","member_permissions","membership_ttl_seconds"]},{"tool":"search_crypto_news_gdelt","params":["sort","timeout","timespan","max_records"]},{"tool":"search_news_gdelt","params":["sort","timeout","timespan","max_records"]},{"tool":"util_backoff_schedule","params":["cap_ms","base_ms","attempts"]},{"tool":"util_base_gas_budget_check","params":["eth_usd","gas_limit","budget_eth","gas_price_gwei"]},{"tool":"util_cache_policy_audit","params":["headers"]},{"tool":"util_case_convert","params":["case","text"]},{"tool":"util_cidr_contains","params":["ip","network"]},{"tool":"util_clamp","params":["max","min","value"]},{"tool":"util_color_convert","params":["color"]},{"tool":"util_cors_policy_audit","params":["headers"]},{"tool":"util_csp_policy_audit","params":["policy"]},{"tool":"util_dedupe_lines","params":["text"]},{"tool":"util_diff_lines","params":["a","b"]},{"tool":"util_dns_record_diff","params":["after","before"]},{"tool":"util_duration_parse","params":["duration"]},{"tool":"util_error_budget","params":["target_percent","total_requests","failed_requests"]},{"tool":"util_extract_emails","params":["text"]},{"tool":"util_extract_urls","params":["text"]},{"tool":"util_hex_convert","params":["text"]},{"tool":"util_holidays","params":["year","calendar"]},{"tool":"util_html_strip","params":["html","max_length"]},{"tool":"util_http_header_diff","params":["after","before"]},{"tool":"util_http_retry_plan","params":["method","status_code"]},{"tool":"util_idempotency_key","params":["namespace"]},{"tool":"util_image_result_contract_check","params":["result","max_width","max_height","max_size_bytes"]},{"tool":"util_incident_timeline","params":["events"]},{"tool":"util_ip_classify","params":["ip"]},{"tool":"util_isbn_check","params":["isbn"]},{"tool":"util_latency_summary","params":["latencies_ms"]},{"tool":"util_levenshtein","params":["a","b"]},{"tool":"util_log_event_normalize","params":["log_text"]},{"tool":"util_loyalty_reward_quote","params":["currency","bonus_points","points_per_unit","tier_multiplier","redemption_value_per_point"]},{"tool":"util_luhn_check","params":["number"]},{"tool":"util_markdown_to_text","params":["markdown","max_length"]},{"tool":"util_mime_lookup","params":["filename","extension"]},{"tool":"util_normalize_whitespace","params":["text"]},{"tool":"util_number_base","params":["value","to_base","from_base"]},{"tool":"util_percent_change","params":["to","from"]},{"tool":"util_pii_redact","params":["text"]},{"tool":"util_pii_risk_scan","params":["text"]},{"tool":"util_prompt_injection_scan","params":["text"]},{"tool":"util_query_string","params":["query","action","params"]},{"tool":"util_random_choice","params":["count","items"]},{"tool":"util_random_int","params":["max","min","count"]},{"tool":"util_reading_time","params":["text"]},{"tool":"util_rot13","params":["text"]},{"tool":"util_secret_exposure_scan","params":["text"]},{"tool":"util_seeded_random_sample","params":["seed","count","items"]},{"tool":"util_semver_compare","params":["a","b"]},{"tool":"util_similarity","params":["a","b"]},{"tool":"util_slo_compliance","params":["good_events","total_events","target_percent"]},{"tool":"util_slugify","params":["text","lowercase","separator","max_length"]},{"tool":"util_sort_lines","params":["text"]},{"tool":"util_structured_log_summary","params":["log_text"]},{"tool":"util_text_truncate","params":["text","max_length"]},{"tool":"util_ulid_generate","params":["count"]},{"tool":"util_url_encode","params":["text"]},{"tool":"util_url_join","params":["base","path"]},{"tool":"util_webhook_event_normalize","params":["event"]},{"tool":"util_word_count","params":["text"]},{"tool":"util_x402_payment_preflight","params":["requirements","asset_decimals","max_amount_usdc","allowed_networks","now_epoch_seconds","min_expiry_seconds"]}],"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. Showing the first 300 of 307 changed tools.","truncated":true}