[{"slug":"ZV-2026-0779","server_name":"roosteragents.ai","severity":"breaking","title":"roosteragents.ai: Tool update_profile was removed.","summary":"[breaking] Tool update_profile was removed. [risky] Description of cancel_offer changed (87% word delta). [risky] Description of check_offer_status changed (51% word delta). [safe] Description of get_creator changed (14% word delta). [risky] Description of get_market_benchmarks changed (29% word delta). [risky] Description of join_waitlist changed (81% word delta). [safe] Description of list_creators changed (11% word delta). [breaking] Field platform was removed from list_creators input; consumers still sending it may be rejected or silently ignored. [risky] Description of submit_offer changed (44% word delta). [breaking] Field sandbox was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field testMode was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field agentName was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field agentWallet was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field sandboxChain was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field agentEndpoint was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field agentOperator was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Field sandboxOutcome was removed from submit_offer input; consumers still sending it may be rejected or silently ignored. [breaking] Enum value post removed from kind on submit_offer. [breaking] Enum value reel removed from kind on submit_offer. [breaking] Enum value story removed from kind on submit_offer. [breaking] Enum value shoutout removed from kind on submit_offer. [breaking] Enum value video removed from kind on submit_offer. [risky] Default of audien","changes":[{"kind":"tool_removed","tool":"update_profile","detail":"Tool `update_profile` was removed.","severity":"breaking"},{"kind":"description_changed","tool":"cancel_offer","after":"Withdraw an offer you submitted, before it is funded. Requires the same agentApiKey.","before":"Withdraw an offer you submitted, before it is funded. Use this instead of letting an offer sit until its 72h deadline when you no longer want the post — it releases the USDC you had earmarked for it immediately. Cancellable while `lifecycle` is pending_human_decision, countered, accepted, provisioning_escrow or awaiting_funding. It is REFUSED (409) once escrow is funded: at that point a human creator is mid-delivery, and the only endings are delivery (creator paid) or refund (post failed — 100% back to you, no fee). Cancelling costs nothing and leaves no mark on your track record.","detail":"Description of `cancel_offer` changed (87% word delta).","severity":"risky","descriptionDelta":0.8666666666666667},{"kind":"description_changed","tool":"check_offer_status","after":"Check an offer end to end. Read `lifecycle` — the one authoritative state (pending_human_decision → countered / rejected / awaiting_funding → funded_delivery_in_progress → completed | refunded) — and stop polling when `terminal` is true. Requires the same agentApiKey.","before":"Check an offer end to end. Read the `lifecycle` field — it is the ONE authoritative state (pending_human_decision → countered / rejected / awaiting_funding → funded_delivery_in_progress → completed | refunded) — and stop polling when `terminal` is true. `status` tracks only the human/post stage (it stays `posted` after a successful post) and `escrowStatus` only the money stage, so neither alone tells you how the offer ended. Also returns the counter price, funding instructions and the post receipt. Requires the same agentApiKey.","detail":"Description of `check_offer_status` changed (51% word delta).","severity":"risky","descriptionDelta":0.5087719298245614},{"kind":"description_changed","tool":"get_creator","after":"Get one creator's full agent manifest (platforms, followers, rate card, how to submit an offer) by creator code. Public, no key needed.","before":"Get one creator's full agent manifest (platforms, followers, rate card, how to submit an offer) by creator code. Public.","detail":"Description of `get_creator` changed (14% word delta).","severity":"safe","descriptionDelta":0.13636363636363635},{"kind":"description_changed","tool":"get_market_benchmarks","after":"Fair-market rate benchmarks ($ per 1k followers by platform and deliverable kind), offer verdict rules (LOWBALL / FAIR / PREMIUM), and the marketplace's live combined reach. Public, no key needed.","before":"Get current fair-market rate benchmarks ($ per 1k followers by platform and deliverable kind), offer verdict rules (LOWBALL / FAIR / PREMIUM), and the marketplace's live combined reach (creators, connected accounts, total verified followers). Public.","detail":"Description of `get_market_benchmarks` changed (29% word delta).","severity":"risky","descriptionDelta":0.2941176470588235},{"kind":"description_changed","tool":"join_waitlist","after":"Register yourself as an AI agent on the marketplace and receive an agentApiKey instantly (shown once, no approval queue). Required before submit_offer.","before":"Register your agent and get a LIVE API key back instantly — no approval queue. This is how an agent starts hiring real humans to post about its product. Free, public, no key required to call. The key is returned exactly once, so store it. Agent names are globally unique. The first 100 registrants become Founding Agents: a Founding badge and launch-price lock on Agent Pro.","detail":"Description of `join_waitlist` changed (81% word delta).","severity":"risky","descriptionDelta":0.8095238095238095},{"kind":"description_changed","tool":"list_creators","after":"List human creators currently accepting paid post offers from AI agents. Returns each creator's code, platforms, follower counts and estimated market rates. Public, no key needed.","before":"List human creators currently accepting paid post offers from AI agents. Returns each creator's code, platforms, follower counts, and estimated market rates. Public.","detail":"Description of `list_creators` changed (11% word delta).","severity":"safe","descriptionDelta":0.11111111111111116},{"kind":"input_property_removed","path":"inputSchema.properties.platform","tool":"list_creators","before":{"type":"string","description":"Optional filter: instagram | tiktok | youtube | facebook | x | linkedin"},"detail":"Field `platform` was removed from `list_creators` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"description_changed","tool":"submit_offer","after":"Hire a human to post your content. TWO PATHS: (1) TARGETED — audience='targeted' (default) + creatorCode, a private offer to one named creator; (2) BOARD — audience='board' with NO creatorCode, a listing any eligible creator can claim. The human always decides personally. Screening auto-rejects scam/adult/gambling/false-claims; the caption MUST contain #ad; put links in linkUrl, not the caption body. priceCents is in CENTS. Requires agentApiKey.","before":"Hire a real human to post your content on their real social account. TWO PATHS: (1) TARGETED — audience='targeted' (default) + creatorCode, a private offer to one named creator; (2) BOARD — audience='board' with NO creatorCode, a general listing any eligible creator can claim, optionally scoped with boardEligibility. The human always decides personally — you are NEVER auto-approved and there is no way to buy your way past that. Screening auto-rejects scam/adult/gambling/false-claims; the caption MUST contain #ad; links belong in linkUrl, not the caption body. priceCents is in CENTS. Real offers settle in USDC on Base through escrow: you fund after acceptance, the post goes out, the money releases on verification. Requires an agentApiKey — call join_waitlist and one is returned instantly, no approval queue.","detail":"Description of `submit_offer` changed (44% word delta).","severity":"risky","descriptionDelta":0.4375},{"kind":"input_property_removed","path":"inputSchema.properties.sandbox","tool":"submit_offer","before":{"type":"boolean","default":false,"description":"SANDBOX — the full escrow rail on a TESTNET chain, for integrators who need to prove the money path. The offer is auto-accepted by the ROO$TER sandbox creator (not a human), you get a real per-offer deposit address within seconds, you send TESTNET USDC, and the rail runs the production code end to end: funded → post (always SIMULATED, it never reaches an audience) → released to the creator, or refunded in full. Requires agentWallet (where a refund lands). Mutually exclusive with testMode."},"detail":"Field `sandbox` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.testMode","tool":"submit_offer","before":{"type":"boolean","default":false,"description":"Integration test: the offer is screened and priced end-to-end but NEVER posts for real and never moves money. It STOPS at pending_human_decision — no human accepts a simulation — so testMode alone can never exercise funding, release or refund. Use sandbox:true for those legs. Test offers also skip the creator's W-9/terms checks, so a green test does NOT prove a real offer would be acceptable — use list_creators for that."},"detail":"Field `testMode` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.agentName","tool":"submit_offer","before":{"type":"string","description":"Display name shown to the human, e.g. 'KubernaAgent'. Should match your registered agent name so your track record attaches to it."},"detail":"Field `agentName` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.agentWallet","tool":"submit_offer","before":{"type":"string","description":"Your paying wallet (0x EVM address, USDC on Base). Escrow funding instructions are returned on acceptance."},"detail":"Field `agentWallet` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.sandboxChain","tool":"submit_offer","before":{"enum":["BASE-SEPOLIA","ETH-SEPOLIA"],"type":"string","default":"BASE-SEPOLIA","description":"Which testnet your sandbox offer settles on. Ignored unless sandbox=true."},"detail":"Field `sandboxChain` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.agentEndpoint","tool":"submit_offer","before":{"type":"string","description":"Public URL for your agent or product, shown on the offer card."},"detail":"Field `agentEndpoint` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.agentOperator","tool":"submit_offer","before":{"type":"string","description":"Company or person behind the agent. Humans accept far more often when this is filled in."},"detail":"Field `agentOperator` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"input_property_removed","path":"inputSchema.properties.sandboxOutcome","tool":"submit_offer","before":{"enum":["deliver","refund"],"type":"string","default":"deliver","description":"Which leg to exercise. 'deliver' = funded → simulated post → USDC released to the creator. 'refund' = the post is forced to fail → 100% of what you sent (offer + fee) is returned to agentWallet with no cut. Ignored unless sandbox=true."},"detail":"Field `sandboxOutcome` was removed from `submit_offer` input; consumers still sending it may be rejected or silently ignored.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.kind","tool":"submit_offer","before":"post","detail":"Enum value `post` removed from `kind` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.kind","tool":"submit_offer","before":"reel","detail":"Enum value `reel` removed from `kind` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.kind","tool":"submit_offer","before":"story","detail":"Enum value `story` removed from `kind` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.kind","tool":"submit_offer","before":"shoutout","detail":"Enum value `shoutout` removed from `kind` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.kind","tool":"submit_offer","before":"video","detail":"Enum value `video` removed from `kind` on `submit_offer`.","severity":"breaking"},{"kind":"default_changed","path":"inputSchema.properties.audience","tool":"submit_offer","before":"targeted","detail":"Default of `audience` on `submit_offer` changed \"targeted\" → unset.","severity":"risky"},{"kind":"enum_value_removed","path":"inputSchema.properties.currency","tool":"submit_offer","before":"USDC","detail":"Enum value `USDC` removed from `currency` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.currency","tool":"submit_offer","before":"USD","detail":"Enum value `USD` removed from `currency` on `submit_offer`.","severity":"breaking"},{"kind":"default_changed","path":"inputSchema.properties.currency","tool":"submit_offer","before":"USDC","detail":"Default of `currency` on `submit_offer` changed \"USDC\" → unset.","severity":"risky"},{"kind":"enum_value_removed","path":"inputSchema.properties.platform","tool":"submit_offer","before":"instagram","detail":"Enum value `instagram` removed from `platform` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.platform","tool":"submit_offer","before":"tiktok","detail":"Enum value `tiktok` removed from `platform` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.platform","tool":"submit_offer","before":"youtube","detail":"Enum value `youtube` removed from `platform` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.platform","tool":"submit_offer","before":"facebook","detail":"Enum value `facebook` removed from `platform` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.platform","tool":"submit_offer","before":"x","detail":"Enum value `x` removed from `platform` on `submit_offer`.","severity":"breaking"},{"kind":"enum_value_removed","path":"inputSchema.properties.platform","tool":"submit_offer","before":"linkedin","detail":"Enum value `linkedin` removed from `platform` on `submit_offer`.","severity":"breaking"},{"kind":"input_type_changed","path":"inputSchema.properties.priceCents","tool":"submit_offer","after":"integer","before":"number","detail":"Type of `priceCents` on `submit_offer` changed number → integer.","severity":"breaking"}],"published_at":"2026-09-07T04:50:14.471Z"}]