Reddit Ads skill

Audit, diagnose, and safely operate connected Reddit Ads accounts through the NotFair MCP.

by nowork-studio·MIT license·★ 3,853 Stars on the repo·GitHub ↗

Use now

Files of Reddit Ads

nowork-studio/main1 file shown
SKILL.md
Show the full text44 lines

Reddit Ads

Read ../shared/operating-contract.md and ../shared/measurement-framework.md before acting. Use the live account data from the connected platform as the source of truth.

Establish the live scope

  1. Follow ../../docs/mcp-connection.md. Resolve ~~reddit-ads to the live connection. Use its current instructions and capability descriptions to choose tools, and verify the requested platform and account from live data. Do not infer access from another connected platform.
  2. Confirm the selected account with a harmless account/setup read. If the connector is missing or unauthorized, direct the user to connect or re-authorize Reddit Ads and stop before claiming live access. Select only connected accounts.
  3. Record the account currency, timezone, objective, conversion definition, attribution basis, and requested date window. Treat tracking gaps as limitations, not zero performance.

The connector exposes campaign, ad-group, and ad CRUD, reporting, audiences, funding instruments, pixels, profiles, and a read-only code-mode surface for batched account-scoped reads. Discover the exact schemas before calling tools; do not treat any skill-level list as the only allowed surface. Older clients may still reach a dedicated /api/mcp/reddit_ads route; do not add that as a second plugin MCP server.

Diagnose with one broad read

Pull the campaigns, ad groups, ads, funding instruments, and performance relevant to the question. Choose available read capabilities and batch related data when useful.

Interpret the platform correctly:

  • Hierarchy is ad account → funding instruments / campaigns → ad groups → ads. Pixels, profiles, and saved/custom audiences sit on the account.
  • Money fields such as goal_value, bid_value, and spend_cap are integer microcurrency (1 USD = 1,000,000). Reporting conversion total value fields use hundredths instead. Do not apply one universal money conversion.
  • Read configured_status and effective_status separately.
  • Account-scoped tools enforce selected-account ownership for entity IDs. Shared audience, profile, or catalog references require discovery in that selected account.
  • Reporting may lag about 6 hours, and historical conversion totals can change. Compare complete equivalent periods and name spend, impressions, CTR, conversions, CPA, or ROAS only when the returned fields support them.

Lead with the business decision: strongest contributor, largest material risk, likely cause supported by data, and the smallest useful next action. Separate measured facts from inference.

Execute approved changes safely

Use a supported write capability and respect its current contract. Show the exact account, entity, current value, proposed value, spend exposure, risk, and rollback before acting. Preview changes with dry-run when available, obtain approval, apply once, then read back.

  • Dry-run is local schema and ownership validation, not provider validation.
  • Writes are not automatically retried. HTTP 401 means reconnect; 403 means permissions or scopes; 429 means wait.
  • Prefer pause/enable over deletion.
  • Create campaigns, ad groups, and ads with configured_status=PAUSED unless activation is explicitly requested.
  • After an approved mutation, use the returned evidence or a fresh read to confirm the resulting state. Report partial failures plainly.

Finish with the confirmed action, observation window, success metric, and rollback trigger. A proposal remains ready_for_review; call it published only after the live connector confirms it.

1---
2name: paid-ads-reddit
3description: Audit, diagnose, and safely operate connected Reddit Ads accounts through the NotFair MCP. Use for Reddit advertising, Reddit Ads performance, campaign or ad-group analysis, spend, conversions, targeting, audiences, pixels, budgets, bids, creative, campaign setup, or approved Reddit Ads changes.
4argument-hint: "<account, campaign, date range, or Reddit Ads goal>"
5---
6 
7# Reddit Ads
8 
9Read `../shared/operating-contract.md` and `../shared/measurement-framework.md` before acting. Use the live account data from the connected platform as the source of truth.
10 
11## Establish the live scope
12 
131. Follow [`../../docs/mcp-connection.md`](../../docs/mcp-connection.md). Resolve `~~reddit-ads` to the live connection. Use its current instructions and capability descriptions to choose tools, and verify the requested platform and account from live data. Do not infer access from another connected platform.
142. Confirm the selected account with a harmless account/setup read. If the connector is missing or unauthorized, direct the user to connect or re-authorize Reddit Ads and stop before claiming live access. Select only connected accounts.
153. Record the account currency, timezone, objective, conversion definition, attribution basis, and requested date window. Treat tracking gaps as limitations, not zero performance.
16 
17The connector exposes campaign, ad-group, and ad CRUD, reporting, audiences, funding instruments, pixels, profiles, and a read-only code-mode surface for batched account-scoped reads. Discover the exact schemas before calling tools; do not treat any skill-level list as the only allowed surface. Older clients may still reach a dedicated `/api/mcp/reddit_ads` route; do not add that as a second plugin MCP server.
18 
19## Diagnose with one broad read
20 
21Pull the campaigns, ad groups, ads, funding instruments, and performance relevant to the question. Choose available read capabilities and batch related data when useful.
22 
23Interpret the platform correctly:
24 
25- Hierarchy is ad account → funding instruments / campaigns → ad groups → ads. Pixels, profiles, and saved/custom audiences sit on the account.
26- Money fields such as `goal_value`, `bid_value`, and `spend_cap` are integer microcurrency (1 USD = 1,000,000). Reporting conversion *total value* fields use hundredths instead. Do not apply one universal money conversion.
27- Read `configured_status` and `effective_status` separately.
28- Account-scoped tools enforce selected-account ownership for entity IDs. Shared audience, profile, or catalog references require discovery in that selected account.
29- Reporting may lag about 6 hours, and historical conversion totals can change. Compare complete equivalent periods and name spend, impressions, CTR, conversions, CPA, or ROAS only when the returned fields support them.
30 
31Lead with the business decision: strongest contributor, largest material risk, likely cause supported by data, and the smallest useful next action. Separate measured facts from inference.
32 
33## Execute approved changes safely
34 
35Use a supported write capability and respect its current contract. Show the exact account, entity, current value, proposed value, spend exposure, risk, and rollback before acting. Preview changes with dry-run when available, obtain approval, apply once, then read back.
36 
37- Dry-run is local schema and ownership validation, not provider validation.
38- Writes are not automatically retried. HTTP 401 means reconnect; 403 means permissions or scopes; 429 means wait.
39- Prefer pause/enable over deletion.
40- Create campaigns, ad groups, and ads with `configured_status=PAUSED` unless activation is explicitly requested.
41- After an approved mutation, use the returned evidence or a fresh read to confirm the resulting state. Report partial failures plainly.
42 
43Finish with the confirmed action, observation window, success metric, and rollback trigger. A proposal remains `ready_for_review`; call it `published` only after the live connector confirms it.
44 

Discussion

Alternatives

Ad creativeWhen the user wants to generate, iterate, or scale ad creative — headlines, descriptions, primary text, or full ad variations — for any paid advertising platform. Also use when the user mentions 'ad copy variations,' 'ad creative,' 'generate headlines,' 'RSA headlines,' 'bulk ad copy,' 'ad iterations,' 'creative testing,' 'write me some ads,' 'Facebook ad copy,' 'Google ad headlines,' 'LinkedIn ad text,' 'static ads,' 'ad templates,' 'iMessage ad,' 'chat reveal ad,' 'ChatGPT ad,' 'Apple Notes ad,' 'AirDrop ad,' 'creative strategy,' 'creative roadmap,' 'creative retro,' 'hook writing,' 'creative review page,' 'present ad creative for approval,' 'motion video ad,' 'faceless video ad,' 'UGC ad,' 'greenscreen ad,' 'TikTok/Reels ad format,' 'which ad format to make,' 'Meta ad format tier list,' or 'creative format taxonomy.' Use this whenever someone needs to produce ad copy at scale or iterate on existing ads. For campaign strategy and targeting, see ads. For landing page copy, see copywriting.Marketing · MITAmazon Ads AuditYou share your Amazon advertising numbers and goals; you get back a plain-language review of what's draining your budget and what to change first.Business & ops · MITApple Ads AuditPaste what you're spending on Apple Search Ads and your recent numbers; get back a plain review of what's wasting money and what to fix first.Business & ops · MITAmazon Ads PlanningPlan and review Amazon Ads with margin-aware ACoS, product, and search-term guardrails. Use for Amazon advertising, Sponsored Products, Sponsored Brands, Sponsored Display, ASIN targeting, Amazon ACoS, or Amazon Ads performance exports. · MIT