ad-copy-writer
Generate ad copy variations for Google, Microsoft, Meta, LinkedIn, TikTok, Reddit, Snapchat…
Turn customer language into 8–12 genuinely different ad concepts (not 50 versions of one headline), generate the images with your real brand assets, and upload them to Meta, LinkedIn or TikTok in a PAUSED state, named with campaign ID, angle and format
$ npx -y skills add cognyai/claude-code-marketing-skills --skill creative-engine --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/creative-engineContext preview
The summary Claude sees to decide when to auto-load this skill.
Turn customer language into 8–12 genuinely different ad concepts (not 50 versions of one headline), generate the images with your real brand assets, and upload them to Meta, LinkedIn or TikTok in a PAUSED state, named with campaign ID, angle and format
name: creative-engine description: Turn customer language into 8–12 genuinely different ad concepts (not 50 versions of one headline), generate the images with your real brand assets, and upload them to Meta, LinkedIn or TikTok in a PAUSED state, named with campaign ID, angle and format version: "1.1.3" author: Cogny AI requires: cogny-mcp platforms: [cogny-image-gen, meta-ads, linkedin-ads, tiktok-ads, reddit-ads, x-ads, snapchat-ads] user-invocable: true argument-hint: "<campaign-ID> [--platform meta|linkedin|tiktok|reddit|x|snapchat] [--concepts 8] [--no-upload]" allowed-tools: - Read - Write - mcp__cogny__list_integrations - mcp__cogny__refresh_mcp_discovery - mcp__cogny__read_context_node - mcp__cogny__write_context_node - mcp__cogny__create_ticket - mcp__cogny__create_finding - mcp__cogny__mcp__cogny-image-gen__tool_list_brand_assets - mcp__cogny__mcp__cogny-image-gen__tool_list_uploads - mcp__cogny__mcp__cogny-image-gen__tool_analyze_media - mcp__cogny__mcp__Meta_Ads__tool_list_ad_accounts - mcp__cogny__mcp__Meta_Ads__tool_get_facebook_pages - mcp__cogny__mcp__Meta_Ads__tool_get_campaigns - mcp__cogny__mcp__Meta_Ads__tool_get_ad_sets - mcp__cogny__mcp__Meta_Ads__tool_get_ads - mcp__cogny__mcp__Meta_Ads__tool_get_insights - mcp__cogny__mcp__Meta_Ads__tool_get_ad_preview - mcp__cogny__mcp__LinkedIn_Ads__tool_list_ad_accounts - mcp__cogny__mcp__LinkedIn_Ads__tool_get_campaigns - mcp__cogny__mcp__LinkedIn_Ads__tool_get_creatives - mcp__cogny__mcp__LinkedIn_Organic__tool_list_organizations - mcp__cogny__mcp__TikTok_Ads__tool_list_advertisers - mcp__cogny__mcp__TikTok_Ads__tool_get_ad_groups - mcp__cogny__mcp__Reddit_Ads__tool_list_ad_accounts - mcp__cogny__mcp__Reddit_Ads__tool_get_campaigns - mcp__cogny__mcp__Reddit_Ads__tool_get_ad_groups - mcp__cogny__mcp__Reddit_Ads__tool_get_ads - mcp__cogny__mcp__Reddit_Ads__tool_list_promotable_posts - mcp__cogny__mcp__X_Ads__tool_list_ad_accounts - mcp__cogny__mcp__X_Ads__tool_get_campaigns - mcp__cogny__mcp__X_Ads__tool_get_line_items - mcp__cogny__mcp__X_Ads__tool_get_cards - mcp__cogny__mcp__Snapchat_Ads__tool_list_organizations - mcp__cogny__mcp__Snapchat_Ads__tool_list_ad_accounts - mcp__cogny__mcp__Snapchat_Ads__tool_get_ad_squads - mcp__cogny__mcp__Snapchat_Ads__tool_get_creatives - mcp__cogny__mcp__HubSpot__search_crm_objects - mcp__cogny__mcp__Pipedrive__list_activities - mcp__cogny__mcp__Upsales__list_activities - mcp__cogny__mcp__Upsales__list_appointments - mcp__cogny__mcp__Discord__list_guilds - mcp__cogny__mcp__Discord__list_guild_channels - mcp__cogny__mcp__Discord__get_channel_messages - mcp__cogny__mcp__X_Organic__tool_get_mentions # No integration write tools are pre-approved (generate_image, create_*, upload_*): they prompt the user.
Creative is the new targeting. Meta's ad system (Andromeda) reads the ad itself to decide who sees it, and it groups ads that look alike, so fifty versions of the same headline get roughly the reach of one ad. Winners also burn out in two to three weeks. The job is a steady stream of **genuinely different reasons to buy**, each built from what customers said.
**Requires:** Cogny with Meta Ads (or LinkedIn, TikTok, Reddit, X or Snapchat Ads). Use `--no-upload` to get the concepts and images without touching an ad account.
**Plan matters:** image generation (`cogny-image-gen`, Nano Banana / GPT Image) is **Cloud-only**. On **Solo** the skill writes the concepts plus a ready-to-paste image prompt and shot brief per concept (aspect ratios, negative prompt, reference assets to use) instead of images, and uploads only if the user supplies image URLs.
The campaign must exist (`/campaign-ledger new`). Without an ID, stop and ask for one. If the brain is missing, the concepts can still be drafted with `--no-upload`: take the customer language from whichever sources are connected: the CRM's recent call and meeting notes (HubSpot `search_crm_objects` on `calls` / `meetings`, Pipedrive `list_activities`, Upsales `list_activities` / `list_appointments`), Discord `#support` via `get_channel_messages` (`limit: 50`; private channels only as anonymised themes, per routing §5) and X mentions (`X_Organic` `tool_get_mentions`). Label the pack "no brain: provisional", and list **every product claim as "needs confirmation"**, since there's no `offers` node to check them against.
**Health check:** `list_integrations` misses revoked tokens, so treat the first cheap read per integration (`list_ad_accounts`, `list_guilds`, …) as the check. 401, Forbidden or a scope error = 🔴 "reconnect <integration>": name it, don't retry. A missing tool: `refresh_mcp_discovery` once; new tools need a client reconnect, so use the fallback above and mark the source ⚠.
If no `mcp__cogny__*` tools exist (no `list_integrations`, no `cogny_status`), print this:
Creative Engine needs your marketing data through Cogny's MCP gateway.
1. Sign up at https://cogny.com and connect Meta Ads (or LinkedIn, TikTok, Reddit, X or Snapchat Ads); image generation needs the Cloud plan.
2. Add Cogny to .mcp.json in your project:
{"mcpServers": {"cogny": {"type": "http", "url": "https://app.cogny.com/mcp"}}}
3. Restart Claude Code; it opens a browser for the OAuth login on first use.
Without Cogny you can still: draft concepts with --no-upload (no images, no ad creation).In that case take the campaign ID the user gives (no ledger check), use customer language they paste or `./brain/evidence/customer-language/latest.md` from `/customer-language` local mode, run steps 1–2 only, label the pack "no Cogny: provisional" with every product claim marked "needs confirmation", and print it (or Write it to `./b
AI marketing skills for Claude Code, Cursor, Windsurf, and other AI coding tools. Audit SEO, analyze ads, research competitors, qualify leads — all from your terminal. Free skills need no account. Premium skills connect your real data for $9/mo.
Repo: cognyai/claude-code-marketing-skills
Generate ad copy variations for Google, Microsoft, Meta, LinkedIn, TikTok, Reddit, Snapchat…
Enforce a pre-declared evidence bar on every ad — after it spends enough, pause it if it…
Build a portable brand-kit.json for the user's product — colors, typography, voice — that…
Find accounts where something just happened that creates demand — funding, hiring, new…
Give every campaign an ID and carry it everywhere — allocate IDs, audit ad/email/UTM naming…
Re-read every lost deal in your CRM (HubSpot, Pipedrive or Upsales; Salesforce via the CRM…