{"result":{"tools":[{"name":"search_campaigns","title":"Search campaigns","description":"Use this when the user wants paid creator campaigns (clipping, UGC, logo or music) that match filters: type, social app, minimum pay per 1K views, niche, clipping platform, Alpha tier, open join, new in the last hours or words in the name. Campaign types: clipping cuts clips from the footage the campaign provides, ugc films your own content about the product, logo puts the brand's logo on your own niche content, music uses the artist's track as the sound. Returns live campaigns from Content Rewards, Promote.fun, Clipster, Clipstake, Vyro and Evangelist, ranked by Alpha Score by default, with pay, budget left, the budget run-out forecast, a page link and a join link for each, and whether ClippingAlpha can cut clips from its footage. With cuttable, only the campaigns ClippingAlpha can cut into clips now are listed, the first one the top campaign for planning or cutting clips. What a post earns depends on its views and the brand approving it. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"query":{"description":"Only a brand, campaign or creator name to look up, for example lovable or MrBeast. Leave it out for what the user does or wants (fashion videos, join without applying, high pay): use type, niche, platforms, min_rate_per_1k_usd and open_join_only for those. If no name matches, the other filters still answer.","type":"string","maxLength":80},"platforms":{"description":"Only campaigns that pay for at least one of these social apps.","maxItems":9,"type":"array","items":{"type":"string","enum":["tiktok","instagram","youtube","x","facebook","twitch","kick","threads","snapchat"]}},"type":{"description":"One campaign type: clipping cuts clips from the footage the campaign provides, ugc films your own content about the product, logo puts the brand's logo on your own niche content, music uses the artist's track as the sound.","type":"string","enum":["clipping","ugc","logo","music"]},"min_rate_per_1k_usd":{"description":"Minimum pay per 1,000 views in USD (CPM campaigns only).","type":"number","minimum":0,"maximum":100},"niche":{"description":"One content niche.","type":"string","enum":["podcast","streams","gaming","sports","film-and-tv","music","brand-ads","ugc-and-apps","behind-the-scenes","gambling","prediction-markets","crypto-trading"]},"board":{"description":"Only campaigns listed on this clipping platform.","type":"string","enum":["content-rewards","promote-fun","clipster","clipstake","vyro","evangelist"]},"agency":{"description":"Only campaigns posted by this clipping agency, by name or profile slug, for example Clip Farm or clip-farm.","type":"string","maxLength":80},"min_tier":{"description":"Lowest Alpha tier to include. alpha is the top 10 percent of the market.","type":"string","enum":["alpha","solid","fair"]},"open_join_only":{"description":"Only campaigns anyone can join now, with no application.","type":"boolean"},"new_within_hours":{"description":"Only campaigns new in this many hours: discovered by ClippingAlpha, on Content Rewards launched there. 24 is New today. A new round of an older campaign is new.","type":"integer","minimum":1,"maximum":720},"sort":{"description":"Order. Default alpha, the Alpha Score.","type":"string","enum":["alpha","newest","rate","budget_left"]},"limit":{"description":"How many to return, default 10.","type":"integer","minimum":1,"maximum":25},"cuttable":{"description":"True to plan or cut clips: then only clipping campaigns whose footage ClippingAlpha has read and can cut into clips are listed, each with its moments. Leave it out to find or compare campaigns.","type":"boolean"},"for_clips":{"description":"The same as cuttable, kept for earlier calls.","type":"boolean"},"for_you":{"description":"Rank for the signed-in user's connected social account: fit, an estimate at their recent views and Alpha Score. Default true when signed in. False for the usual order.","type":"boolean"}}},"annotations":{"title":"Search campaigns","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}],"ui":{"resourceUri":"ui://clippingalpha/cards-v8.html"},"ui/resourceUri":"ui://clippingalpha/cards-v8.html","openai/outputTemplate":"ui://clippingalpha/cards-v8.html","openai/toolInvocation/invoking":"Searching campaigns","openai/toolInvocation/invoked":"Campaigns found","openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"total":{"type":"number"},"membersLocked":{"type":"number"},"cpm":{"type":"object","properties":{"medianUsd":{"type":"number"},"p25Usd":{"type":"number"},"p75Usd":{"type":"number"},"n":{"type":"number"},"basis":{"type":"string","const":"listed"},"url":{"type":"string"}},"required":["medianUsd","p25Usd","p75Usd","n","basis","url"],"additionalProperties":{}},"campaigns":{"type":"array","items":{"type":"object","properties":{"campaignId":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"brandSlug":{"type":"string"},"seriesSlug":{"type":"string"},"board":{"type":"string"},"boardSlug":{"type":"string"},"agency":{"type":["string","null"]},"agencySlug":{"type":["string","null"]},"state":{"type":"string"},"campaignType":{"type":"string","enum":["clipping","ugc","logo","music"]},"payModel":{"type":"string"},"platforms":{"type":"array","items":{"type":"string"}},"ratePer1kUsd":{"type":["number","null"]},"budgetLeftUsd":{"type":["number","null"]},"budgetTotalUsd":{"type":["number","null"]},"alphaScore":{"type":["number","null"]},"tier":{"type":"string","enum":["alpha","solid","fair","low","scoring"]},"drainP50":{"type":["string","null"]},"openJoin":{"type":"boolean"},"exclusive":{"type":"boolean"},"access":{"anyOf":[{"type":"string","enum":["exclusive","apply"]},{"type":"null"}]},"niche":{"type":["string","null"]},"membersOnly":{"type":"boolean"},"ageRestricted":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"election":{"type":"boolean"},"electionLabel":{"type":["string","null"]},"electionNote":{"type":["string","null"]},"audience":{"anyOf":[{"type":"object","properties":{"countries":{"type":"array","items":{"type":"string"}},"minSharePct":{"type":["number","null"]},"language":{"type":["string","null"]}},"required":["countries","minSharePct","language"],"additionalProperties":{}},{"type":"null"}]},"audienceLabel":{"type":["string","null"]},"audienceNote":{"type":["string","null"]},"region":{"type":["string","null"]},"firstSeenAt":{"type":"string"},"launchedAt":{"type":"string"},"newAt":{"type":["string","null"]},"pageUrl":{"type":"string"},"joinUrl":{"type":"string"},"forYou":{"type":"object","properties":{"reason":{"type":"string"},"estimateUsd":{"type":["number","null"]},"application":{"type":"boolean"},"moved":{"anyOf":[{"type":"string","enum":["joined","skipped"]},{"type":"null"}]},"fit":{"type":"boolean"}},"required":["reason","estimateUsd","application","moved","fit"],"additionalProperties":{}},"picture":{"anyOf":[{"type":"object","properties":{"src":{"type":"string"},"src2x":{"type":["string","null"]},"square":{"type":["string","null"]},"alt":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"fit":{"type":"string","enum":["cover","contain"]}},"required":["src","src2x","square","alt","width","height","fit"],"additionalProperties":{}},{"type":"null"}]},"canCut":{"type":"boolean"}},"required":["campaignId","title","brand","brandSlug","seriesSlug","board","boardSlug","state","campaignType","payModel","platforms","ratePer1kUsd","budgetLeftUsd","budgetTotalUsd","alphaScore","tier","drainP50","openJoin","exclusive","access","niche","membersOnly","ageRestricted","labels","election","electionLabel","electionNote","firstSeenAt","launchedAt","newAt","pageUrl","joinUrl","picture"],"additionalProperties":{}}},"forYou":{"type":"object","properties":{"state":{"type":"string","enum":["on","connect","off"]},"title":{"type":"string"},"banner":{"type":"object","properties":{"text":{"type":"string"},"key":{"type":"string"},"platform":{"type":"string"},"url":{"type":"string"},"signedIn":{"type":"boolean"},"say":{"type":"string"}},"required":["text","key","platform","url","signedIn"],"additionalProperties":{}}},"required":["state","title"],"additionalProperties":{}}},"required":["total","membersLocked","campaigns"],"additionalProperties":{}}},{"name":"get_campaign","title":"Get one campaign","description":"Use this when the user asks about one campaign: the Alpha Score and tier, pay per 1K views on every clipping platform that lists it, budget left, how long the budget is forecast to last, the before-you-post checklist, the brief grade and where to join. Takes the campaign as brand/series (for example lovable/clipping) or its clippingalpha.com page URL. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":3,"maxLength":300,"description":"brand/series, for example lovable/clipping, or a clippingalpha.com/campaigns/... URL."}},"required":["campaign"]},"annotations":{"title":"Get one campaign","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"pageUrl":{"type":"string"},"alpha":{"type":"object","properties":{},"additionalProperties":{}},"whereToJoin":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["campaignId","title","brand","pageUrl","alpha","whereToJoin"],"additionalProperties":{}},"locked":{"type":"boolean"},"board":{"type":"string"},"platforms":{"type":"array","items":{"type":"string"}}},"additionalProperties":{}}},{"name":"top_alpha_now","title":"Top campaigns now","description":"Use this when the user asks for the best live paid creator campaigns now, optionally for one social app or one campaign type (clipping, UGC, logo or music). Returns a market line (live campaigns, clipping platforms, new today, budget left and the median pay per 1K views), then the top live campaigns by Alpha Score, which weighs pay per 1K views after fees and payout rules, approval odds and the budget runway against live campaigns of the same type. Campaign types: clipping cuts clips from the footage the campaign provides, ugc films your own content about the product, logo puts the brand's logo on your own niche content, music uses the artist's track as the sound. Campaigns come from Content Rewards, Promote.fun, Clipster, Clipstake, Vyro and Evangelist, each with pay, budget left, a page link, a join link and whether ClippingAlpha can cut clips from its footage (Can cut clips or not). With cuttable, only the campaigns ClippingAlpha can cut into clips now are listed, the first one the top campaign for planning or cutting clips. What a post earns depends on its views and the brand approving it. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"platform":{"description":"Only campaigns that pay for this social app.","type":"string","enum":["tiktok","instagram","youtube","x","facebook","twitch","kick","threads","snapchat"]},"type":{"description":"One campaign type: clipping cuts clips from the footage the campaign provides, ugc films your own content about the product, logo puts the brand's logo on your own niche content, music uses the artist's track as the sound.","type":"string","enum":["clipping","ugc","logo","music"]},"limit":{"description":"How many, default 5.","type":"integer","minimum":1,"maximum":10},"cuttable":{"description":"True to plan or cut clips: then only clipping campaigns whose footage ClippingAlpha has read and can cut into clips are listed, each with its moments. Leave it out to find or compare campaigns.","type":"boolean"},"for_clips":{"description":"The same as cuttable, kept for earlier calls.","type":"boolean"},"for_you":{"description":"Rank for the signed-in user's connected social account: fit, an estimate at their recent views and Alpha Score. Default true when signed in. False for the usual order.","type":"boolean"}}},"annotations":{"title":"Top campaigns now","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}],"ui":{"resourceUri":"ui://clippingalpha/cards-v8.html"},"ui/resourceUri":"ui://clippingalpha/cards-v8.html","openai/outputTemplate":"ui://clippingalpha/cards-v8.html","openai/toolInvocation/invoking":"Ranking campaigns","openai/toolInvocation/invoked":"Top picks ready","openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"market":{"type":"object","properties":{"live":{"type":"number"},"boards":{"type":"number"},"newToday":{"type":"number"},"leftUsd":{"type":["number","null"]},"asOf":{"type":["string","null"]},"cpm":{"type":"object","properties":{"medianUsd":{"type":"number"},"p25Usd":{"type":"number"},"p75Usd":{"type":"number"},"n":{"type":"number"},"basis":{"type":"string","const":"listed"},"url":{"type":"string"}},"required":["medianUsd","p25Usd","p75Usd","n","basis","url"],"additionalProperties":{}}},"required":["live","boards","newToday","leftUsd","asOf"],"additionalProperties":{}},"campaigns":{"type":"array","items":{"type":"object","properties":{"campaignId":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"brandSlug":{"type":"string"},"seriesSlug":{"type":"string"},"board":{"type":"string"},"boardSlug":{"type":"string"},"agency":{"type":["string","null"]},"agencySlug":{"type":["string","null"]},"state":{"type":"string"},"campaignType":{"type":"string","enum":["clipping","ugc","logo","music"]},"payModel":{"type":"string"},"platforms":{"type":"array","items":{"type":"string"}},"ratePer1kUsd":{"type":["number","null"]},"budgetLeftUsd":{"type":["number","null"]},"budgetTotalUsd":{"type":["number","null"]},"alphaScore":{"type":["number","null"]},"tier":{"type":"string","enum":["alpha","solid","fair","low","scoring"]},"drainP50":{"type":["string","null"]},"openJoin":{"type":"boolean"},"exclusive":{"type":"boolean"},"access":{"anyOf":[{"type":"string","enum":["exclusive","apply"]},{"type":"null"}]},"niche":{"type":["string","null"]},"membersOnly":{"type":"boolean"},"ageRestricted":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"election":{"type":"boolean"},"electionLabel":{"type":["string","null"]},"electionNote":{"type":["string","null"]},"audience":{"anyOf":[{"type":"object","properties":{"countries":{"type":"array","items":{"type":"string"}},"minSharePct":{"type":["number","null"]},"language":{"type":["string","null"]}},"required":["countries","minSharePct","language"],"additionalProperties":{}},{"type":"null"}]},"audienceLabel":{"type":["string","null"]},"audienceNote":{"type":["string","null"]},"region":{"type":["string","null"]},"firstSeenAt":{"type":"string"},"launchedAt":{"type":"string"},"newAt":{"type":["string","null"]},"pageUrl":{"type":"string"},"joinUrl":{"type":"string"},"forYou":{"type":"object","properties":{"reason":{"type":"string"},"estimateUsd":{"type":["number","null"]},"application":{"type":"boolean"},"moved":{"anyOf":[{"type":"string","enum":["joined","skipped"]},{"type":"null"}]},"fit":{"type":"boolean"}},"required":["reason","estimateUsd","application","moved","fit"],"additionalProperties":{}},"picture":{"anyOf":[{"type":"object","properties":{"src":{"type":"string"},"src2x":{"type":["string","null"]},"square":{"type":["string","null"]},"alt":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"fit":{"type":"string","enum":["cover","contain"]}},"required":["src","src2x","square","alt","width","height","fit"],"additionalProperties":{}},{"type":"null"}]},"canCut":{"type":"boolean"}},"required":["campaignId","title","brand","brandSlug","seriesSlug","board","boardSlug","state","campaignType","payModel","platforms","ratePer1kUsd","budgetLeftUsd","budgetTotalUsd","alphaScore","tier","drainP50","openJoin","exclusive","access","niche","membersOnly","ageRestricted","labels","election","electionLabel","electionNote","firstSeenAt","launchedAt","newAt","pageUrl","joinUrl","picture"],"additionalProperties":{}}},"forYou":{"type":"object","properties":{"state":{"type":"string","enum":["on","connect","off"]},"title":{"type":"string"},"banner":{"type":"object","properties":{"text":{"type":"string"},"key":{"type":"string"},"platform":{"type":"string"},"url":{"type":"string"},"signedIn":{"type":"boolean"},"say":{"type":"string"}},"required":["text","key","platform","url","signedIn"],"additionalProperties":{}}},"required":["state","title"],"additionalProperties":{}}},"required":["market","campaigns"],"additionalProperties":{}}},{"name":"board_summary","title":"Clipping platform summary","description":"Use this when the user compares the clipping platforms that list paid creator campaigns or asks how one pays: live campaigns, median pay per 1K views, budget left, new this week, platform fee, payout window and payout track record for each clipping platform ClippingAlpha tracks. One clipping platform, or every one when none is given. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"board":{"description":"One clipping platform, or leave out for all.","type":"string","enum":["content-rewards","promote-fun","clipster","clipstake","vyro","evangelist"]}}},"annotations":{"title":"Clipping platform summary","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boards":{"type":"array","items":{"type":"object","properties":{"board":{"type":"string"},"slug":{"type":"string"},"liveCampaigns":{"type":"number"},"pageUrl":{"type":"string"}},"required":["board","slug","liveCampaigns","pageUrl"],"additionalProperties":{}}}},"required":["boards"],"additionalProperties":{}}},{"name":"get_brief","title":"Get the brief","description":"Use this when the user asks what a brand wants from a clip or what the rules are: short items in our words for format and length, must include (tags, disclosure, logo, sound, call to action), what to avoid, footage, social apps, language, audience countries, account rules and the deadline. Also the Brief Quality grade (A to F) and its red flag tags, how to join (open or application, minimum views, cap, platform fee, payout window), the before-you-post checklist and the link to the original brief. Also every rule grouped as the campaign page shows it: what to make, the full DO and DON'T lists, the caption (mentions and hashtags per app, the exact text, keywords, the bio link, the pinned comment), the FTC disclosure, brand safety, the audience (who, where from, how it is checked), page criteria (new or established pages, dedicated page, banned niches), posting rules, the creator profile, other requirements, the thresholds and caps (min views, min engagement, followers, max a creator, posts an account), each with its source (Platform, Brief, or Seen on slide 3), and the materials: the brief documents by name, the sound with its link and the example post URLs. Signed in, the brief documents include the files the clipping platform gives the clippers who join. Never a transcript or a media file. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its numeric campaignId from another tool."}},"required":["campaign"]},"annotations":{"title":"Get the brief","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"ref":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"pageUrl":{"type":"string"},"joinUrl":{"type":["string","null"]}},"required":["campaignId","ref","title","brand","pageUrl","joinUrl"],"additionalProperties":{}},"wants":{"type":"object","properties":{},"additionalProperties":{}},"checklist":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"rulesHidden":{"type":"boolean"},"quality":{"type":"object","properties":{"grade":{"type":["string","null"]},"flags":{"type":"array","items":{"type":"string"}}},"required":["grade","flags"],"additionalProperties":{}},"join":{"type":"object","properties":{},"additionalProperties":{}},"briefUrl":{"type":["string","null"]},"briefDocs":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"rules":{"type":"object","properties":{"groups":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"thresholds":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"materials":{"type":"object","properties":{},"additionalProperties":{}}},"required":["groups","thresholds","materials"],"additionalProperties":{}}},"required":["campaign","wants","checklist","rulesHidden","quality","join","briefUrl","briefDocs","rules"],"additionalProperties":{}}},{"name":"get_moments","title":"Get the moments","description":"Use this when the user asks which moments to clip or what a campaign's videos are: the analyzed source videos of a campaign and the moments worth clipping in each. Per source the video details we store: title, the channel it came from, publish date, length, view count, language, speaker count, chapters with their times, format (shape and on-screen text lines), readiness (how clip-ready it is), Clip Potential (0 to 100) and a short summary in our own words. A brand file is named by its number, never by its file name, and has no link here. Per moment the start and end, what happens there in our own words, its score, whether it opens on a spoken line, its 9:16 fit and a Watch link that opens the original video at that second. Every moment of the Moment Map, signed in or not, with brand risk moments flagged. Signed in, the videos the clipping platform gives the clippers who join carry their details and Watch links too. Never a transcript or a transcript line. Signed in, a separate ClippingAlpha tool cuts a moment of any video or brand file listed here into a vertical MP4 with captions. Read only, this tool cuts nothing.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its numeric campaignId from another tool."},"source_id":{"description":"Only this source, by the sourceId of an earlier answer.","type":"string","pattern":"^\\d{1,18}$"}},"required":["campaign"]},"annotations":{"title":"Get the moments","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"ref":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"pageUrl":{"type":"string"},"joinUrl":{"type":["string","null"]}},"required":["campaignId","ref","title","brand","pageUrl","joinUrl"],"additionalProperties":{}},"full":{"type":"boolean"},"sources":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"unavailable":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"momentMapUrl":{"type":"string"}},"required":["campaign","full","sources","unavailable","momentMapUrl"],"additionalProperties":{}}},{"name":"get_assets","title":"Get source links","description":"Use this when the user asks where to get a campaign's footage or how to download its assets: every source link we found in the brief. Public videos and channels (YouTube, Twitch, Kick, TikTok, Instagram, X and more) with platform, title, length, the video details we store (channel, publish date, views, language, speakers, chapters, format and a short summary in our own words) and a link to the video at each top moment. The brand asset links (Google Drive, Dropbox, Frame.io, WeTransfer, OneDrive, Box, Mega) the campaign page shows, named by service. Signed in, every brand link named by its file: also the ones behind a sign-in, the Evangelist library, and the footage the clipping platform gives the clippers who join. Download instructions and published footage passwords belong to the brief and creative plan. A watch link alone does not establish a downloadable file. Also exampleClips, the clipping platform's top clips: other clippers' approved posts (app, post link, handle, the views the platform reports, rank), most viewed first, examples of what gets approved and never footage to cut. Links only here, never a transcript. Signed in, a separate ClippingAlpha tool cuts the videos and brand files listed here into vertical MP4s. Read only, this tool opens no link and cuts nothing.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its numeric campaignId from another tool."}},"required":["campaign"]},"annotations":{"title":"Get source links","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"ref":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"pageUrl":{"type":"string"},"joinUrl":{"type":["string","null"]}},"required":["campaignId","ref","title","brand","pageUrl","joinUrl"],"additionalProperties":{}},"videos":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"brandAssets":{"anyOf":[{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},{"type":"null"}]},"brandAssetCount":{"type":"number"},"library":{"anyOf":[{"type":"object","properties":{"total":{"type":"number"},"analysed":{"type":"number"}},"required":["total","analysed"],"additionalProperties":false},{"type":"null"}]},"exampleClips":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"memberFootage":{"type":"number"}},"required":["campaign","videos","brandAssets","brandAssetCount","library","exampleClips","memberFootage"],"additionalProperties":{}}},{"name":"plan_clips","title":"Plan the clips","description":"Use this when the user asks what to make for a campaign, how to start, or what a clip needs: ClippingAlpha's creative plan for one campaign. What to make (how many clips the material supports, the length, vertical or not, the social apps and how that fits TikTok, Reels and Shorts), what to cut it from (ready clips to post as is, or no footage, make your own content), the clips best first grouped by source video (its title, app, length and a summary in our words, then per clip the cut range, what happens there, why it should work from the moment score, a spoken opener and the 9:16 fit, numbered steps to follow and a Watch link to the original public video at that second, a brand file by its number with no link), the brand's short ready clips one card each with every analysed clip counted (post as is or reframe to 9:16, why it works or not, the steps), what to post instead for a logo or music campaign (the niche, where the logo goes, the sound, lyrics on screen, the effort), what every post must include and avoid (tags, mentions, #ad, logo or end card, call to action, banned content) with the brief's own words for each rule, and how to get the footage in the brief's words. Each clip carries its hook idea, labelled as a suggestion, and the hook ideas no clip carries follow. Signed out, the best 3 clips a source. Signed in, a handful of clips a source, the footage the clipping platform gives the clippers who join included, and the footage password when the brand published one for clippers. Each clip also carries the ffmpeg command that cuts it, 9:16 at 1080 by 1920, from a file the clipper downloaded themselves. Signed in, a separate ClippingAlpha tool cuts these clips by number into vertical MP4s with captions and download links. For planning or cutting clips, the top clipping campaign is the first of the top campaigns listed with cuttable true, the ones ClippingAlpha can cut. On a campaign it cannot cut, the plan says so and names the top one it can cut. Never a transcript line. Read only, this tool cuts nothing.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its numeric campaignId from another tool."},"app":{"description":"Set only by the ClippingAlpha app in the chat, to count its steps. Leave it out.","type":"string","enum":["make_clips","plan_video","cut","poll","download","submit"]}},"required":["campaign"]},"annotations":{"title":"Plan the clips","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}],"openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"ref":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"pageUrl":{"type":"string"},"joinUrl":{"type":["string","null"]}},"required":["campaignId","ref","title","brand","pageUrl","joinUrl"],"additionalProperties":{}},"full":{"type":"boolean"},"plan":{"anyOf":[{"type":"object","properties":{"live":{"type":"boolean"},"access":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"make":{"type":"object","properties":{},"additionalProperties":{}},"from":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"rules":{"type":"object","properties":{"include":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"avoid":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["include","avoid"],"additionalProperties":{}},"footage":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"hooks":{"anyOf":[{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},{"type":"null"}]},"passwords":{"anyOf":[{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},{"type":"null"}]},"full":{"type":"boolean"},"computedAt":{"type":"string"}},"required":["live","access","make","from","rules","footage","hooks","passwords","full","computedAt"],"additionalProperties":{}},{"type":"null"}]},"guide":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["cut","ready","post","none"]},"full":{"type":"boolean"},"groups":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"ready":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"readyFirst":{"type":"boolean"},"post":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"moreHooks":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"caption":{"type":["string","null"]}},"required":["kind","full","groups","ready","readyFirst","post","moreHooks","caption"],"additionalProperties":{}},{"type":"null"}]},"exampleClips":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["campaign","full","plan","guide","exampleClips"],"additionalProperties":{}}},{"name":"get_campaign_analytics","title":"Get campaign analytics","description":"Use this when the user asks why a campaign scores as it does or what it really pays: ClippingAlpha's analytics for one campaign. The Alpha Score and tier, the four factor verdicts (Pay, Budget, Payout rules, Approval, plus payout record or content when they matter) with the adjustments that moved the score, what one clip pays at 10K, 50K and 100K views after caps, minimums and platform fees, the budget runway (dollars left and the run-out forecast when it falls within 90 days) and how it compares with similar live campaigns. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its numeric campaignId from another tool."}},"required":["campaign"]},"annotations":{"title":"Get campaign analytics","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"ref":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"pageUrl":{"type":"string"},"joinUrl":{"type":["string","null"]}},"required":["campaignId","ref","title","brand","pageUrl","joinUrl"],"additionalProperties":{}},"alpha":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"pay":{"type":"object","properties":{},"additionalProperties":{}},"runway":{"type":"object","properties":{},"additionalProperties":{}},"market":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"asOf":{"type":["string","null"]}},"required":["campaign","alpha","pay","runway","market","asOf"],"additionalProperties":{}}},{"name":"compare_campaigns","title":"Compare campaigns","description":"Use this when the user weighs two to five campaigns against each other: side by side Alpha Score, the four factor verdicts, pay per clip at 10K, 50K and 100K views, budget left and the run-out forecast, ranked in the order to clip them, with a one line recommendation drawn from the verdicts. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaigns":{"minItems":2,"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its numeric campaignId from another tool."},"description":"2 to 5 campaigns, each as brand/series, a page URL or a campaignId."}},"required":["campaigns"]},"annotations":{"title":"Compare campaigns","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"recommendation":{"type":"string"},"order":{"type":"array","items":{"type":"string"}},"campaigns":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["recommendation","order","campaigns"],"additionalProperties":{}}},{"name":"show_campaign","title":"Campaign panel","description":"Use this when the user wants to see or open one paid creator campaign (clipping, UGC, logo or music). Shows it as a panel with the Alpha Score, pay per 1K views, what one clip pays at 10K, 50K and 100K views, the budget left and how long it lasts, what the brand wants, the best moments to clip with links to the source at each second, the source videos and where to join. Takes the campaign as brand/series, its page URL or the campaignId of an earlier answer. Without a campaign it shows the top picks to choose from. What a post earns depends on its views and the brand approving it. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"description":"The campaign as brand/series (for example lovable/clipping), its clippingalpha.com page URL, or its campaignId. Leave out to show the top picks to choose from.","type":"string","minLength":1,"maxLength":300}}},"annotations":{"title":"Campaign panel","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"icons":[{"src":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjMzIj48cmVjdCB4PSIyLjY3IiB5PSIzLjY3IiB3aWR0aD0iMTQuNjciIGhlaWdodD0iMTIuNjciLz48cGF0aCBkPSJNMTIgMy42N3YxMi42N00xMy42NyA3aDJNMTMuNjcgOS4zM2gyIi8+PC9zdmc+","mimeType":"image/svg+xml","sizes":["any"]}],"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}],"ui":{"resourceUri":"ui://clippingalpha/campaign-v8.html"},"ui/resourceUri":"ui://clippingalpha/campaign-v8.html","openai/outputTemplate":"ui://clippingalpha/campaign-v8.html","openai/toolInvocation/invoking":"Opening the campaign","openai/toolInvocation/invoked":"Campaign ready","openai/widgetAccessible":true,"openai/ui":{"entrypoints":[{"type":"thread"}]}},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"view":{"type":"string","enum":["campaign","pick"]},"campaign":{"type":"object","properties":{"campaignId":{"type":"string"},"ref":{"type":"string"},"title":{"type":"string"},"pageUrl":{"type":"string"},"joinUrl":{"type":["string","null"]}},"required":["campaignId","ref","title","pageUrl","joinUrl"],"additionalProperties":{}},"alpha":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"pay":{"type":"object","properties":{},"additionalProperties":{}},"runway":{"type":"object","properties":{},"additionalProperties":{}},"brief":{"type":"object","properties":{},"additionalProperties":{}},"moments":{"type":"object","properties":{},"additionalProperties":{}},"sources":{"type":"object","properties":{},"additionalProperties":{}},"whereToJoin":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"market":{"type":"object","properties":{"live":{"type":"number"},"boards":{"type":"number"},"newToday":{"type":"number"},"leftUsd":{"type":["number","null"]},"asOf":{"type":["string","null"]},"cpm":{"type":"object","properties":{"medianUsd":{"type":"number"},"p25Usd":{"type":"number"},"p75Usd":{"type":"number"},"n":{"type":"number"},"basis":{"type":"string","const":"listed"},"url":{"type":"string"}},"required":["medianUsd","p25Usd","p75Usd","n","basis","url"],"additionalProperties":{}}},"required":["live","boards","newToday","leftUsd","asOf"],"additionalProperties":{}},"campaigns":{"type":"array","items":{"type":"object","properties":{"campaignId":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"brandSlug":{"type":"string"},"seriesSlug":{"type":"string"},"board":{"type":"string"},"boardSlug":{"type":"string"},"agency":{"type":["string","null"]},"agencySlug":{"type":["string","null"]},"state":{"type":"string"},"campaignType":{"type":"string","enum":["clipping","ugc","logo","music"]},"payModel":{"type":"string"},"platforms":{"type":"array","items":{"type":"string"}},"ratePer1kUsd":{"type":["number","null"]},"budgetLeftUsd":{"type":["number","null"]},"budgetTotalUsd":{"type":["number","null"]},"alphaScore":{"type":["number","null"]},"tier":{"type":"string","enum":["alpha","solid","fair","low","scoring"]},"drainP50":{"type":["string","null"]},"openJoin":{"type":"boolean"},"exclusive":{"type":"boolean"},"access":{"anyOf":[{"type":"string","enum":["exclusive","apply"]},{"type":"null"}]},"niche":{"type":["string","null"]},"membersOnly":{"type":"boolean"},"ageRestricted":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"election":{"type":"boolean"},"electionLabel":{"type":["string","null"]},"electionNote":{"type":["string","null"]},"audience":{"anyOf":[{"type":"object","properties":{"countries":{"type":"array","items":{"type":"string"}},"minSharePct":{"type":["number","null"]},"language":{"type":["string","null"]}},"required":["countries","minSharePct","language"],"additionalProperties":{}},{"type":"null"}]},"audienceLabel":{"type":["string","null"]},"audienceNote":{"type":["string","null"]},"region":{"type":["string","null"]},"firstSeenAt":{"type":"string"},"launchedAt":{"type":"string"},"newAt":{"type":["string","null"]},"pageUrl":{"type":"string"},"joinUrl":{"type":"string"},"forYou":{"type":"object","properties":{"reason":{"type":"string"},"estimateUsd":{"type":["number","null"]},"application":{"type":"boolean"},"moved":{"anyOf":[{"type":"string","enum":["joined","skipped"]},{"type":"null"}]},"fit":{"type":"boolean"}},"required":["reason","estimateUsd","application","moved","fit"],"additionalProperties":{}},"picture":{"anyOf":[{"type":"object","properties":{"src":{"type":"string"},"src2x":{"type":["string","null"]},"square":{"type":["string","null"]},"alt":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"fit":{"type":"string","enum":["cover","contain"]}},"required":["src","src2x","square","alt","width","height","fit"],"additionalProperties":{}},{"type":"null"}]},"canCut":{"type":"boolean"}},"required":["campaignId","title","brand","brandSlug","seriesSlug","board","boardSlug","state","campaignType","payModel","platforms","ratePer1kUsd","budgetLeftUsd","budgetTotalUsd","alphaScore","tier","drainP50","openJoin","exclusive","access","niche","membersOnly","ageRestricted","labels","election","electionLabel","electionNote","firstSeenAt","launchedAt","newAt","pageUrl","joinUrl","picture"],"additionalProperties":{}}},"signedIn":{"type":"boolean"},"asOf":{"type":["string","null"]}},"required":["view","signedIn"],"additionalProperties":{}}},{"name":"browse_campaigns","title":"Campaign browser","description":"The campaign browser panel's data: the live paid clipping, UGC, logo or music campaigns ClippingAlpha tracks, ranked by the Alpha Score, a Top picks row, platform and campaign type filters, and for a signed-in creator their saved campaigns. What a post earns depends on its views and the brand approving it. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"platform":{"description":"Only campaigns that pay for this platform.","type":"string","enum":["tiktok","instagram","youtube","x","facebook","twitch","kick","threads","snapchat"]},"type":{"description":"clipping cuts clips from the footage the campaign provides, ugc films your own content about the product, logo puts the brand's logo on your own niche content, music uses the artist's track as the sound.","type":"string","enum":["clipping","ugc","logo","music"]},"saved_only":{"description":"Only the signed-in clipper's saved campaigns.","type":"boolean"}}},"annotations":{"title":"Campaign browser","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"icons":[{"src":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTIgMmgxMmw0IDR2MTJIMnogTTUgNXYxMGgzdi0zaDN2M2gzVjV6IE04IDhoM3YySDh6Ii8+PC9zdmc+","mimeType":"image/svg+xml","sizes":["any"]}],"_meta":{"securitySchemes":[{"type":"noauth"},{"type":"oauth2","scopes":["clipper"]}],"ui":{"resourceUri":"ui://clippingalpha/browser-v8.html","visibility":["app"]},"ui/resourceUri":"ui://clippingalpha/browser-v8.html","openai/outputTemplate":"ui://clippingalpha/browser-v8.html","openai/toolInvocation/invoking":"Loading campaigns","openai/toolInvocation/invoked":"Campaigns ready","openai/widgetAccessible":true,"openai/visibility":"private","openai/ui":{"entrypoints":[{"type":"global"}]}},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"market":{"type":"object","properties":{"live":{"type":"number"},"boards":{"type":"number"},"newToday":{"type":"number"},"leftUsd":{"type":["number","null"]},"asOf":{"type":["string","null"]},"cpm":{"type":"object","properties":{"medianUsd":{"type":"number"},"p25Usd":{"type":"number"},"p75Usd":{"type":"number"},"n":{"type":"number"},"basis":{"type":"string","const":"listed"},"url":{"type":"string"}},"required":["medianUsd","p25Usd","p75Usd","n","basis","url"],"additionalProperties":{}}},"required":["live","boards","newToday","leftUsd","asOf"],"additionalProperties":{}},"filters":{"type":"object","properties":{"platform":{"type":["string","null"]},"type":{"anyOf":[{"type":"string","enum":["clipping","ugc","logo","music"]},{"type":"null"}]},"savedOnly":{"type":"boolean"}},"required":["platform","type","savedOnly"],"additionalProperties":{}},"topPicks":{"type":"array","items":{"type":"object","properties":{"campaignId":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"brandSlug":{"type":"string"},"seriesSlug":{"type":"string"},"board":{"type":"string"},"boardSlug":{"type":"string"},"agency":{"type":["string","null"]},"agencySlug":{"type":["string","null"]},"state":{"type":"string"},"campaignType":{"type":"string","enum":["clipping","ugc","logo","music"]},"payModel":{"type":"string"},"platforms":{"type":"array","items":{"type":"string"}},"ratePer1kUsd":{"type":["number","null"]},"budgetLeftUsd":{"type":["number","null"]},"budgetTotalUsd":{"type":["number","null"]},"alphaScore":{"type":["number","null"]},"tier":{"type":"string","enum":["alpha","solid","fair","low","scoring"]},"drainP50":{"type":["string","null"]},"openJoin":{"type":"boolean"},"exclusive":{"type":"boolean"},"access":{"anyOf":[{"type":"string","enum":["exclusive","apply"]},{"type":"null"}]},"niche":{"type":["string","null"]},"membersOnly":{"type":"boolean"},"ageRestricted":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"election":{"type":"boolean"},"electionLabel":{"type":["string","null"]},"electionNote":{"type":["string","null"]},"audience":{"anyOf":[{"type":"object","properties":{"countries":{"type":"array","items":{"type":"string"}},"minSharePct":{"type":["number","null"]},"language":{"type":["string","null"]}},"required":["countries","minSharePct","language"],"additionalProperties":{}},{"type":"null"}]},"audienceLabel":{"type":["string","null"]},"audienceNote":{"type":["string","null"]},"region":{"type":["string","null"]},"firstSeenAt":{"type":"string"},"launchedAt":{"type":"string"},"newAt":{"type":["string","null"]},"pageUrl":{"type":"string"},"joinUrl":{"type":"string"},"forYou":{"type":"object","properties":{"reason":{"type":"string"},"estimateUsd":{"type":["number","null"]},"application":{"type":"boolean"},"moved":{"anyOf":[{"type":"string","enum":["joined","skipped"]},{"type":"null"}]},"fit":{"type":"boolean"}},"required":["reason","estimateUsd","application","moved","fit"],"additionalProperties":{}},"picture":{"anyOf":[{"type":"object","properties":{"src":{"type":"string"},"src2x":{"type":["string","null"]},"square":{"type":["string","null"]},"alt":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"fit":{"type":"string","enum":["cover","contain"]}},"required":["src","src2x","square","alt","width","height","fit"],"additionalProperties":{}},{"type":"null"}]},"canCut":{"type":"boolean"}},"required":["campaignId","title","brand","brandSlug","seriesSlug","board","boardSlug","state","campaignType","payModel","platforms","ratePer1kUsd","budgetLeftUsd","budgetTotalUsd","alphaScore","tier","drainP50","openJoin","exclusive","access","niche","membersOnly","ageRestricted","labels","election","electionLabel","electionNote","firstSeenAt","launchedAt","newAt","pageUrl","joinUrl","picture"],"additionalProperties":{}}},"campaigns":{"type":"array","items":{"type":"object","properties":{"campaignId":{"type":"string"},"title":{"type":"string"},"brand":{"type":"string"},"brandSlug":{"type":"string"},"seriesSlug":{"type":"string"},"board":{"type":"string"},"boardSlug":{"type":"string"},"agency":{"type":["string","null"]},"agencySlug":{"type":["string","null"]},"state":{"type":"string"},"campaignType":{"type":"string","enum":["clipping","ugc","logo","music"]},"payModel":{"type":"string"},"platforms":{"type":"array","items":{"type":"string"}},"ratePer1kUsd":{"type":["number","null"]},"budgetLeftUsd":{"type":["number","null"]},"budgetTotalUsd":{"type":["number","null"]},"alphaScore":{"type":["number","null"]},"tier":{"type":"string","enum":["alpha","solid","fair","low","scoring"]},"drainP50":{"type":["string","null"]},"openJoin":{"type":"boolean"},"exclusive":{"type":"boolean"},"access":{"anyOf":[{"type":"string","enum":["exclusive","apply"]},{"type":"null"}]},"niche":{"type":["string","null"]},"membersOnly":{"type":"boolean"},"ageRestricted":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"election":{"type":"boolean"},"electionLabel":{"type":["string","null"]},"electionNote":{"type":["string","null"]},"audience":{"anyOf":[{"type":"object","properties":{"countries":{"type":"array","items":{"type":"string"}},"minSharePct":{"type":["number","null"]},"language":{"type":["string","null"]}},"required":["countries","minSharePct","language"],"additionalProperties":{}},{"type":"null"}]},"audienceLabel":{"type":["string","null"]},"audienceNote":{"type":["string","null"]},"region":{"type":["string","null"]},"firstSeenAt":{"type":"string"},"launchedAt":{"type":"string"},"newAt":{"type":["string","null"]},"pageUrl":{"type":"string"},"joinUrl":{"type":"string"},"forYou":{"type":"object","properties":{"reason":{"type":"string"},"estimateUsd":{"type":["number","null"]},"application":{"type":"boolean"},"moved":{"anyOf":[{"type":"string","enum":["joined","skipped"]},{"type":"null"}]},"fit":{"type":"boolean"}},"required":["reason","estimateUsd","application","moved","fit"],"additionalProperties":{}},"picture":{"anyOf":[{"type":"object","properties":{"src":{"type":"string"},"src2x":{"type":["string","null"]},"square":{"type":["string","null"]},"alt":{"type":"string"},"width":{"type":"number"},"height":{"type":"number"},"fit":{"type":"string","enum":["cover","contain"]}},"required":["src","src2x","square","alt","width","height","fit"],"additionalProperties":{}},{"type":"null"}]},"canCut":{"type":"boolean"}},"required":["campaignId","title","brand","brandSlug","seriesSlug","board","boardSlug","state","campaignType","payModel","platforms","ratePer1kUsd","budgetLeftUsd","budgetTotalUsd","alphaScore","tier","drainP50","openJoin","exclusive","access","niche","membersOnly","ageRestricted","labels","election","electionLabel","electionNote","firstSeenAt","launchedAt","newAt","pageUrl","joinUrl","picture"],"additionalProperties":{}}},"total":{"type":"number"},"membersLocked":{"type":"number"},"signedIn":{"type":"boolean"},"saved":{"type":"array","items":{"type":"string"}}},"required":["market","filters","topPicks","campaigns","total","membersLocked","signedIn","saved"],"additionalProperties":{}}},{"name":"my_saved_campaigns","title":"My saved campaigns","description":"Use this when the signed-in clipper asks what they saved: the campaigns and brands they saved on ClippingAlpha, with whether each is live. Saved series get alerts for new rounds, rate rises, top-ups and rule changes. Needs the clipper's ClippingAlpha sign-in. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"annotations":{"title":"My saved campaigns","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"saved":{"type":"array","items":{"type":"object","properties":{"seriesId":{"type":["string","null"]},"brand":{"type":["string","null"]},"brandSlug":{"type":["string","null"]},"seriesSlug":{"type":["string","null"]},"state":{"type":["string","null"]},"savedAt":{"type":"string"},"pageUrl":{"type":"string"}},"required":["seriesId","brand","brandSlug","seriesSlug","state","savedAt","pageUrl"],"additionalProperties":{}}}},"required":["saved"],"additionalProperties":{}}},{"name":"save_campaign","title":"Save a campaign","description":"Use this when the signed-in clipper asks to save a campaign, or to unsave it with saved false. A saved campaign gets alerts for its next rounds, rate rises, top-ups and budget run-out. Takes the campaign as brand/series or its page URL. Needs the clipper's ClippingAlpha sign-in. Changes only their own saves.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":3,"maxLength":300,"description":"brand/series, for example lovable/clipping, or its page URL."},"saved":{"description":"true to save (the default), false to remove.","type":"boolean"}},"required":["campaign"]},"annotations":{"title":"Save a campaign","readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"saved":{"type":"boolean"},"campaign":{"type":"string"},"pageUrl":{"type":"string"}},"required":["saved","campaign","pageUrl"],"additionalProperties":{}}},{"name":"my_alert_rules","title":"My alert rules","description":"Use this when the signed-in clipper asks about their alerts: their Personalised alert (on or off, as they launch or a daily digest) and their custom alert rules (minimum pay, social apps, niches, clipping platforms, tier, open join), the alert settings (daily cap, quiet hours, pause) and which channels get alerts. Needs the clipper's ClippingAlpha sign-in. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"annotations":{"title":"My alert rules","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"rules":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"channels":{"type":"array","items":{"type":"string"}},"settings":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]}},"required":["rules","channels","settings"],"additionalProperties":{}}},{"name":"set_alert_rule","title":"Set an alert rule","description":"Add an alert rule for the signed-in clipper, or change one with rule_id. For example, 'tell me about YouTube campaigns on Clipster over $2 per 1K' is platforms youtube, boards clipster, min_rate_per_1k_usd 2. A rule matches new campaigns by minimum pay per 1K views (in $0.50 steps), social apps, niches, clipping platforms, pay type, lowest Alpha tier and open join. mode personalised instead turns on (or with active false, off) the one Personalised alert: new campaigns at the top of the clipper's For you list, fitting their connected account, with cadence instant or daily. Alerts arrive on the clipper's channels within their daily cap and quiet hours. Needs the clipper's ClippingAlpha sign-in. Changes only their own rules.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"rule_id":{"description":"Change this rule. Leave out to add a new one.","type":"string","pattern":"^\\d{1,18}$"},"min_rate_per_1k_usd":{"description":"Minimum pay per 1,000 views in USD, rounded down to $0.50 steps. 0 for any.","type":"number","minimum":0,"maximum":100},"platforms":{"description":"Social apps the clipper posts on. Empty for every app.","maxItems":9,"type":"array","items":{"type":"string","enum":["tiktok","instagram","youtube","x","facebook","twitch","kick","threads","snapchat"]}},"niches":{"description":"Content niches. Empty for every niche.","maxItems":12,"type":"array","items":{"type":"string","enum":["podcast","streams","gaming","sports","film-and-tv","music","brand-ads","ugc-and-apps","behind-the-scenes","gambling","prediction-markets","crypto-trading"]}},"boards":{"description":"Clipping platforms. Empty for every clipping platform.","maxItems":6,"type":"array","items":{"type":"string","enum":["content-rewards","promote-fun","clipster","clipstake","vyro","evangelist"]}},"min_tier":{"description":"Lowest Alpha tier to alert on.","type":"string","enum":["alpha","solid","fair"]},"pay_type":{"description":"per_view pays per 1K views (the default), per_post pays a flat amount a post, any takes both.","type":"string","enum":["per_view","per_post","any"]},"open_join_only":{"description":"Only campaigns anyone can join with no application.","type":"boolean"},"active":{"description":"false pauses the rule.","type":"boolean"},"mode":{"description":"custom (the default) sets a rule by the filters above. personalised sets the one Personalised alert, which fits the clipper's connected account, and ignores the filters.","type":"string","enum":["custom","personalised"]},"cadence":{"description":"Personalised only: instant as campaigns launch (the default), or daily for one digest at 09:00 in the clipper's time zone.","type":"string","enum":["instant","daily"]}}},"annotations":{"title":"Set an alert rule","readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"rule":{"type":"object","properties":{"ruleId":{"type":"string"},"active":{"type":"boolean"}},"required":["ruleId","active"],"additionalProperties":{}}},"required":["rule"],"additionalProperties":{}}},{"name":"delete_alert_rule","title":"Delete an alert rule","description":"Use this when the signed-in clipper asks to remove an alert rule: deletes one of their rules by its rule id. It cannot be undone. Needs the clipper's ClippingAlpha sign-in.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"rule_id":{"type":"string","pattern":"^\\d{1,18}$","description":"The rule to delete."}},"required":["rule_id"]},"annotations":{"title":"Delete an alert rule","readOnlyHint":false,"destructiveHint":true,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"deleted":{"type":"boolean"}},"required":["deleted"],"additionalProperties":{}}},{"name":"my_referral","title":"My referral","description":"Use this when the signed-in clipper asks about their referral link, invites, friends or referral badges: their link (clippingalpha.com/r/ and their handle), how many friends counted, the next badge and how many more friends reach it, the ladder (Insider, Heavyweight, Top Dog, Boss, Mogul, Kingmaker) with what each gives, and each invited friend by first name or handle with their step. A friend counts once they connect a social account and are active in their first day. Rewards are badges and in-product perks, never cash. Needs the clipper's ClippingAlpha sign-in. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"annotations":{"title":"My referral","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/toolInvocation/invoking":"Checking your referrals","openai/toolInvocation/invoked":"Referrals checked"},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"link":{"anyOf":[{"type":"object","properties":{"url":{"type":"string"},"handle":{"type":"string"}},"required":["url","handle"],"additionalProperties":{}},{"type":"null"}]},"profileUrl":{"type":"string"},"counted":{"type":"number"},"next":{"anyOf":[{"type":"object","properties":{"badge":{"type":"string"},"friendsLeft":{"type":"number"}},"required":["badge","friendsLeft"],"additionalProperties":{}},{"type":"null"}]},"verified":{"type":"boolean"},"friendReward":{"type":"object","properties":{"clips":{"type":"number"},"when":{"type":"string"}},"required":["clips","when"],"additionalProperties":{}},"ladder":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"friends":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"rewardsAre":{"type":"string"}},"required":["link","profileUrl","counted","next","verified","friendReward","ladder","friends","rewardsAre"],"additionalProperties":{}}},{"name":"cut_clips","title":"Cut clips","description":"Use this when the signed-in clipper asks to cut, make or download clips, for example \"cut clips 1 to 3\" after the creative plan numbered them. ClippingAlpha's server cuts each clip from the campaign's source video into a vertical 1080 by 1920 MP4 with captions burned in, the brief's #ad on screen when it asks for one, and loudness levelled. For planning or cutting clips, the top clipping campaign is the first of the top campaigns listed with cuttable true, the ones ClippingAlpha can cut. Takes the clip numbers of the campaign's creative plan, brand clips and mixes included, or a source_id with a start and end in seconds. A mix is one 20 to 45 second edit from 2 to 4 segments across the campaign's videos, the hook first, each segment trimmed on sentence edges and joined with short crossfades, one caption style and the loudness levelled over the whole edit. A mix comes by its number in the creative plan, or as an edit of 2 to 4 segments, and counts as one clip. It cuts the footage the campaign gives its clippers, as the signed-in answers list it: the YouTube, Twitch, Kick, TikTok, Instagram and X videos it links and its brand files (Google Drive, Dropbox, Frame.io, WeTransfer, OneDrive, Egnyte, the Evangelist media library), the footage its clipping platform gives the clippers who join included. Never an upload or a video ClippingAlpha has not read: a campaign it cannot cut is refused with the top campaign it can cut instead. Up to 5 clips a call and 10 a day, within a daily clip limit per clipper and a daily total for all clipping. A refused call says when the limit resets and uses none of it. Answers at once with the clip ids. The download links follow when the clips are ready, usually within a minute or two. Each link works for 24 hours. Needs the clipper's ClippingAlpha sign-in. Nothing is posted anywhere. The clipper asks for the cut for their own work on the campaign and is responsible for using it within the campaign's, the brand's and the platforms' rules (clippingalpha.com/terms#terms-clips).","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"campaign":{"type":"string","minLength":1,"maxLength":300,"description":"The campaign as brand/series, its page URL or its campaignId."},"clips":{"description":"The clip numbers of the campaign's creative plan, for example [1, 2, 3].","maxItems":5,"type":"array","items":{"type":"integer","minimum":1,"maximum":200}},"ranges":{"description":"Or exact ranges of the campaign's videos or brand files.","maxItems":5,"type":"array","items":{"type":"object","properties":{"source_id":{"type":"string","pattern":"^\\d{1,18}$","description":"The sourceId of one of the campaign's videos or brand files, as an earlier signed-in answer gave it."},"start_sec":{"type":"number","minimum":0,"maximum":100000,"description":"Where the clip starts, in seconds of the source."},"end_sec":{"type":"number","minimum":0,"maximum":100000,"description":"Where it ends, 3 seconds to 3 minutes after the start."}},"required":["source_id","start_sec","end_sec"]}},"edit":{"description":"Or one mix of your own: 2 to 4 segments of the campaign's videos, cut into one vertical edit.","type":"object","properties":{"segments":{"minItems":2,"maxItems":4,"type":"array","items":{"type":"object","properties":{"source_id":{"type":"string","pattern":"^\\d{1,18}$","description":"The sourceId of one of the campaign's videos or brand files."},"start_sec":{"type":"number","minimum":0,"maximum":100000,"description":"Where this segment starts, in seconds of that video."},"end_sec":{"type":"number","minimum":0,"maximum":100000,"description":"Where it ends, at least 3 seconds later."}},"required":["source_id","start_sec","end_sec"]},"description":"2 to 4 segments in the order they play, the hook first, 20 to 45 seconds in all."}},"required":["segments"]},"app":{"description":"Set only by the ClippingAlpha app in the chat, to count its steps. Leave it out.","type":"string","enum":["make_clips","plan_video","cut","poll","download","submit"]}},"required":["campaign"]},"annotations":{"title":"Cut clips","readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/toolInvocation/invoking":"Queueing your clips","openai/toolInvocation/invoked":"Clips queued","openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"campaign":{"type":"string"},"clipIds":{"type":"array","items":{"type":"string"}},"clips":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"open":{"type":"number"}},"required":["campaign","clipIds","clips","open"],"additionalProperties":{}}},{"name":"my_clips","title":"My clips","description":"Use this when the signed-in clipper asks whether their clips are ready or wants the download links: the clips ClippingAlpha cut for them, by clip id or the last 24 hours. Per clip its state (queued, cutting, ready, not cut with the reason, or expired), its range, size, length, whether captions are on, and once ready a private HTTPS download link to the MP4 that works for 24 hours. Also the clipper's daily clip limit, what is left and when it resets. Needs the clipper's ClippingAlpha sign-in. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"clip_ids":{"description":"The clip ids of an earlier answer. Leave out for the last 24 hours.","maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,18}$"}},"app":{"description":"Set only by the ClippingAlpha app in the chat, to count its steps. Leave it out.","type":"string","enum":["make_clips","plan_video","cut","poll","download","submit"]}}},"annotations":{"title":"My clips","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/toolInvocation/invoking":"Checking your clips","openai/toolInvocation/invoked":"Clips checked","openai/widgetAccessible":true},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"clips":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"open":{"type":"number"}},"required":["clips","open"],"additionalProperties":{}}},{"name":"connect_account","title":"Connect a social account","description":"Use this when the signed-in clipper asks to connect their TikTok, Instagram, YouTube or X account, for example \"connect my TikTok @rin.clips\", so For you ranks campaigns for it. Returns a short bio code like alpha-7KQM and the steps: put the code in the account's bio, then say done, and check_account finds it. The code is good for 24 hours. The same account again returns the same code while it is good, an expired one a fresh code. Up to 10 accounts per ClippingAlpha account. Needs the clipper's ClippingAlpha sign-in. Nothing is posted anywhere and nothing changes on the social account.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"platform":{"type":"string","enum":["tiktok","instagram","youtube","x"],"description":"The social app: tiktok, instagram, youtube or x."},"handle":{"type":"string","minLength":1,"maxLength":200,"description":"The account's handle, as @name, name or its profile link."}},"required":["platform","handle"]},"annotations":{"title":"Connect a social account","readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/toolInvocation/invoking":"Getting your code","openai/toolInvocation/invoked":"Code ready"},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string"},"handle":{"type":"string"},"profileUrl":{"type":"string"},"state":{"type":"string"},"stateText":{"type":"string"},"code":{"type":["string","null"]},"codeExpiresAt":{"type":["string","null"]},"followers":{"type":["number","null"]},"reason":{"type":["string","null"]},"reasonText":{"type":["string","null"]}},"required":["id","platform","handle","profileUrl","state","stateText","code","codeExpiresAt","followers","reason","reasonText"],"additionalProperties":{}},"next":{"type":"string","enum":["add_code","ask_again","connected"]}},"required":["account","next"],"additionalProperties":{}}},{"name":"check_account","title":"Check a connected account","description":"Use this when the signed-in clipper says they put the bio code from connect_account in their bio (\"done\"), or asks whether their account is connected. ClippingAlpha reads the account's public profile once for the code. The read takes a moment, so the first answer is Checking: call it again in about 30 seconds for the result. Connected, it answers the account with its followers and For you ranks campaigns for it. Not connected, it answers why (code not in bio, account private, not found) and what to do. After a failed check, call it with recheck true once the clipper says they fixed it. Takes the handle or its id, or nothing for the account checked last or the one account waiting. Checks are limited per day. Needs the clipper's ClippingAlpha sign-in.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"handle":{"description":"The account's handle, as @name, name or its profile link.","type":"string","minLength":1,"maxLength":200},"platform":{"type":"string","enum":["tiktok","instagram","youtube","x"],"description":"The social app: tiktok, instagram, youtube or x."},"id":{"description":"The account id of an earlier answer.","type":"string","pattern":"^\\d{1,18}$"},"recheck":{"description":"True to read the profile again after a failed check, once the clipper says they fixed it.","type":"boolean"}}},"annotations":{"title":"Check a connected account","readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}],"openai/toolInvocation/invoking":"Checking your account","openai/toolInvocation/invoked":"Account checked"},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"account":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string"},"handle":{"type":"string"},"profileUrl":{"type":"string"},"state":{"type":"string"},"stateText":{"type":"string"},"code":{"type":["string","null"]},"codeExpiresAt":{"type":["string","null"]},"followers":{"type":["number","null"]},"reason":{"type":["string","null"]},"reasonText":{"type":["string","null"]}},"required":["id","platform","handle","profileUrl","state","stateText","code","codeExpiresAt","followers","reason","reasonText"],"additionalProperties":{}},"next":{"type":"string","enum":["ask_again","connected","fix"]}},"required":["account","next"],"additionalProperties":{}}},{"name":"my_accounts","title":"My connected accounts","description":"Use this when the signed-in clipper asks which social accounts they connected: every TikTok, Instagram, YouTube and X account on their ClippingAlpha account with its state (connected, checking, waiting for its bio code, code expired, not connected with the reason) and, while it waits, its bio code. Needs the clipper's ClippingAlpha sign-in. Read only.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"annotations":{"title":"My connected accounts","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"_meta":{"securitySchemes":[{"type":"oauth2","scopes":["clipper"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"accounts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"platform":{"type":"string"},"handle":{"type":"string"},"profileUrl":{"type":"string"},"state":{"type":"string"},"stateText":{"type":"string"},"code":{"type":["string","null"]},"codeExpiresAt":{"type":["string","null"]},"followers":{"type":["number","null"]},"reason":{"type":["string","null"]},"reasonText":{"type":["string","null"]}},"required":["id","platform","handle","profileUrl","state","stateText","code","codeExpiresAt","followers","reason","reasonText"],"additionalProperties":{}}},"max":{"type":"number"}},"required":["accounts","max"],"additionalProperties":{}}}]},"jsonrpc":"2.0","id":2}