mcpbeat Sign in

Campaign Deck Builder Agent Skill

Use this skill whenever the user wants to create a marketing-campaign presentation, pitch deck, or launch deck for a brand. Ask the campaign questions, then run the bundled script to fill the template into a finished .pptx.

12k tokens
context cost
the whole folder, loaded on every use
6
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
61 d ago
last touched
this folder, not the whole repository

Install

one command, takes just this skill from the repository
npx skills add https://github.com/microsoft/cat-agent-skills --skill campaign-deck-builder

What comes with it

43 381 bytes besides the instruction
assets/answers.example.json
assets/campaign-template.pptx
metadata.json
references/design-notes.md
scripts/build_campaign.py

The instruction itself

5 sections, as written by the author

Turn a short interview into a charming, vibrant, highly visual **3-slide

new-marketing-campaign deck** by filling a bundled PowerPoint template with a

bundled Python script.

Step 1 — Interview the user

Ask for these (accept short answers; anything they skip gets a tasteful

default). Ask them in a single, friendly batch:

  • Brand name
  • Campaign name (the headline of the launch)
  • Tagline — one line that makes people lean in
  • Target audience — who it's for
  • The big idea — the single concept the campaign turns on (one sentence)
  • Three key messages / benefits (exactly three)
  • Channels / activation — where it runs (e.g. TikTok, out-of-home, retail)
  • Call to action — the ask
  • Closing line — the sign-off

10. Brand accent color (optional, #RRGGBB) — themes the whole deck

Step 2 — Write the answers file

Save the answers as JSON. All keys are optional; messages is a list of three.

{
  "brand_name": "Vela",
  "campaign_name": "Taste the Quiet",
  "tagline": "Botanical sparkling water for your loudest days.",
  "audience": "calm-seeking millennials",
  "big_idea": "A moment of quiet in every can.",
  "messages": ["Zero sugar, all serenity", "Adaptogens that work", "Guilt-free fizz"],
  "channels": "TikTok  ·  Out-of-home  ·  Sampling",
  "cta": "Pop the quiet.",
  "closing": "Vela — find your fizz.",
  "accent_hex": "#00A6A6"
}

See assets/answers.example.json for a complete example.

Step 3 — Build the deck

Run the bundled script to produce the finished presentation:

python scripts/build_campaign.py answers.json campaign-deck.pptx

It fills assets/campaign-template.pptx — replacing every {{PLACEHOLDER}}

while preserving the design, rendering the three key messages as visual cards,

and recoloring the deck to the brand accent color when one is given. Missing

answers fall back to sensible defaults, so it always produces a complete

3-slide deck. Hand the resulting campaign-deck.pptx back to the user.

Bundled files

The attached .zip includes:

  • scripts/build_campaign.py — fills the template from a JSON answers file.

Run it as python scripts/build_campaign.py <answers.json> [output.pptx].

  • assets/campaign-template.pptx — the 3-slide, highly visual template with

{{PLACEHOLDER}} tokens.

  • assets/answers.example.json — a complete sample brand you can copy and edit.
  • references/design-notes.md — the slide/placeholder map and theming notes.

Requires python-pptx (pip install python-pptx).

Tone

Bold, upbeat, and brand-forward. The deck should feel like a launch, not a memo.

Keep copy punchy — headlines over paragraphs.

Other skills for the same job

different authors, same section of the catalogue
Internal Comms
by anthropics
vendor ×13

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

6k tokens
Competitive Ads Extractor
by frostant
×10

Extracts and analyzes competitors' ads from ad libraries (Facebook, LinkedIn, etc.) to understand what messaging, problems, and creative approaches are working. Helps inspire and improve your own ad campaigns.

2k tokens
Lead Research Assistant
by frostant
×8

Identifies high-quality leads for your product or service by analyzing your business, searching for target companies, and providing actionable contact strategies. Perfect for sales, business development, and marketing professionals.

2k tokens
Developer Growth Analysis
by frostant
×6

Analyzes your recent Claude Code chat history to identify coding patterns, development gaps, and areas for improvement, curates relevant learning resources from HackerNews, and automatically sends a personalized growth report to your Slack DMs.

4k tokens
App Store Optimization
by alirezarezvani
×3

Complete App Store Optimization (ASO) toolkit for researching, optimizing, and tracking mobile app performance on Apple App Store and Google Play Store

55k tokens scripts
Deeptools
by christophacham
×3

NGS analysis toolkit. BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps/profiles (TSS, peaks), for ChIP-seq, RNA-seq, ATAC-seq visualization.

21k tokens scripts
Pymatgen
by christophacham
×3

Materials science toolkit. Crystal structures (CIF, POSCAR), phase diagrams, band structure, DOS, Materials Project integration, format conversion, for computational materials science.

26k tokens scripts
Enhance Prompt
by google-labs-code
vendor ×2

Transforms vague UI ideas into polished, Stitch-optimized prompts. Enhances specificity, adds UI/UX keywords, injects design system context, and structures output for better generation results.

3k tokens

How to use it

Copy the folder

Take microsoft/campaign-deck-builder from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip. Without those the skill loads but fails at the first command.