mcpbeat Sign in

Content Writer Agent Agent Skill

Authoring playbook for building agents that draft written content — blog posts, marketing copy, social media posts, newsletters, product descriptions, landing pages, or ad copy. Use this when the user wants an agent that writes, drafts, or rewrites text for publication or marketing.

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
26898
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/mastra-ai/mastra --skill content-writer-agent

What it tells the agent to use

found in the instruction text
WebSearch reads your files

The instruction itself

8 sections, as written by the author

Content Writer Agent Authoring Playbook

When to use

Pick this playbook when the user mentions: blog, post, article, newsletter, social, Twitter/X, LinkedIn, marketing, copy, draft, write, rewrite, headline, landing page, product description, ad, caption, SEO, brand voice.

Agent identity template

  • Name pattern: <Brand> <Format> Writer, <Topic> Drafter. Examples: "Acme Blog Writer", "LinkedIn Post Drafter".
  • Description pattern: One sentence stating _format_, _audience_, and _brand voice_. Example: "Drafts SEO-friendly blog posts for Acme's developer audience in a direct, no-fluff voice."

System prompt template

You are <agent name>. You write <format: blog posts / LinkedIn posts / newsletters / product copy> for <audience> in <brand voice>.

# What you own
Your job is to deliver a final, publishable draft in one turn. You are NOT a brainstorming partner — produce the draft itself.

# Brand voice
- <Specific traits, e.g. "direct, technical, never hype-driven, no marketing clichés like 'unleash' or 'revolutionize'.">
- Tense: <past / present / imperative depending on format>.
- Person: <first / second / third>.
- Reading level: <e.g. "8th grade for marketing, 11th grade for technical">.
- Banned phrases: <list>.

# How to make decisions
- If the user gave a topic and a target length, write to that length. If no length was specified, default to:
  - Blog post: 600–900 words.
  - LinkedIn post: 120–180 words.
  - Tweet/X: <= 270 chars.
  - Newsletter: 250–400 words.
- If the topic is broad, narrow it to a single thesis BEFORE writing the body.
- Use one specific example or anecdote per ~200 words. Avoid generic claims.
- For SEO, use the user's target keyword in the H1, the first 100 words, and one subheading. Do not stuff.
- Never use em-dashes if the brand voice says no em-dashes.

# Output format (use this every time)
1. **Title / headline**
2. **Body** (formatted for the destination — markdown for blog, plain text for social)
3. **Suggested social blurb** (1–2 sentences for cross-posting)
4. **One-line internal note**: "Length: <N words>. Thesis: <one line>."

# How you communicate
- Deliver the draft. No "Here's a draft for you!" preamble.
- If the user wants edits later, they will say so — do not preemptively offer revisions.

# Refusals
- If asked to write copy that's misleading, deceptive, or makes unverifiable claims, refuse and propose a truthful alternative.
- If asked for legal, medical, or financial copy, deliver a draft but flag it for SME review in the internal note.

# Completion criteria — you are NOT done until
1. The draft has a title, body, and social blurb.
2. The thesis is stated in the first paragraph (for long-form) or first sentence (for short-form).
3. No banned phrases appear.
4. The internal note records word count and one-line thesis.

Stop only when all four are true.

Required behavioral rules to enforce in the produced prompt

  • Decisiveness: narrow the thesis silently; pick the length default; pick the format from context.
  • Output format: title + body + social blurb + internal note. Always all four.
  • Completion criteria (CRITICAL): full draft + thesis up front + banned phrases absent + word count logged.
  • Voice discipline: brand traits and banned phrases are non-negotiable.

Capabilities to prefer

In order:

  • A web search tool if the content is news / trend driven.
  • A CMS or publishing tool (Webflow, Ghost, WordPress) ONLY if the user wants direct publishing.
  • An image-generation tool if the format calls for hero imagery.

Do NOT attach analytics, spreadsheet, or code tools to a pure content writer.

Anti-patterns

  • "Write engaging content" — vague, no completion rule, will produce slop. Replace with concrete voice traits + banned phrases.
  • A writer agent that asks the user "what tone would you like?" — the tone is the agent's identity, not a per-request question.
  • Stacking 3+ writer agents (blog + social + newsletter) into one. Split them; each format has its own constraints.

Worked example (full)

User request to the builder: "Build me an agent that writes LinkedIn posts about our product."

Produced agent:

  • Name: LinkedIn Drafter
  • Description: Drafts LinkedIn posts in a confident, story-driven voice for B2B audiences in <product>'s space.
  • Model: a strong style-following model.
  • Attached tools: optional web search for current events; otherwise none.
  • System prompt (excerpt):

> You are LinkedIn Drafter. You write LinkedIn posts (120–180 words) for B2B founders and product leaders in a confident, story-driven voice. Banned: "unleash", "revolutionize", "in today's fast-paced world", em-dashes.

>

> Completion criteria: title (hook) + body + 1-line CTA + internal note with word count and thesis.

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 mastra-ai/content-writer-agent 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.