Agentic AI Marketing

Blowhorn for Claude Code

Claude Code already lives in your terminal. Give it the Blowhorn CLI and a skill, and it runs your launch while you review the diff.

Download for Mac Read the docs

How it works

  1. 1

    Install Blowhorn

    Blowhorn for Mac and the Blowhorn Chrome extension. Your posts go out from your own signed-in Chrome.

  2. 2

    Teach it once with a skill

    Skills, CLAUDE.md and a Bash allowlist. A few lines and Claude Code knows the commands.

  3. 3

    Say what you want

    Claude Code turns it into blowhorn commands. You approve what publishes.

Teach it once with a skill

Claude Code loads project skills from .claude/skills/. Add one that lists the blowhorn commands, says reads take --json and writes pass the row fingerprint back. Allow read-only commands in .claude/settings.json and leave publishing on ask.

.claude/skills/blowhorn/SKILL.md
---
name: blowhorn
description: Schedule, queue and amplify social posts with the blowhorn CLI
---

Read before you write:
- blowhorn schedule list --json
- blowhorn content list --pending --json
- blowhorn schedule status --json

Write with the fingerprint you just read:
- blowhorn content upsert --payload '<json>' --row N --expected-fingerprint <fp> --json

Preview anything that publishes with --dry-run first.
If anything looks wrong: blowhorn schedule pause --all --reason "<why>"
.claude/settings.json
{
  "permissions": {
    "allow": [
      "Bash(blowhorn schedule list:*)",
      "Bash(blowhorn schedule status:*)",
      "Bash(blowhorn content list:*)",
      "Bash(blowhorn analytics:*)"
    ]
  }
}

Try saying

  • You say: "Read my pending content queue and tell me which rows are owed to which profiles before Tuesday."

  • You say: "Add a LinkedIn row for profile lee: announce the v2.4 release, approved, promote on 2026-11-10 09:00:00. Show me the payload first."

  • You say: "Our post just went live at this URL. Dry-run an amplify from every profile on this Mac, then wait for my go."

  • You say: "Something is off with LinkedIn. Pause the whole fleet and tell me the reason you recorded."

What Claude Code runs

terminal
blowhorn content list --pending --json
blowhorn content upsert --payload '{"Platform":"linkedin","Profile":"lee","Message Text":"v2.4 is out","Approved?":"yes","Promote On":"2026-11-10 09:00:00"}' --json
blowhorn post --platform linkedin --profile all --amplify "<post-url>" --dry-run
blowhorn schedule pause --all --reason "LinkedIn challenge"

Where it pays off

Release day from the PR

Have Claude Code turn the changelog it just wrote into one queue row per platform, ready for approval.

Headless runs

claude -p runs a prompt from a script, so a morning check of what's due lands in your terminal.

The weekly read-out

Let it pull blowhorn analytics history --json and write Friday's summary for you.

Questions

Does Blowhorn ship an MCP server for Claude Code?

Not today. Claude Code drives the CLI through its Bash tool and every command speaks --json, so a skill and an allowlist are the whole setup.

Can it publish without asking me?

Only if you allow it. Keep blowhorn post and schedule trigger-now off the allowlist and Claude Code asks every time.

Does my agent see my social passwords?

No. Blowhorn posts through your own signed-in Chrome; the agent only runs commands and reads their output. Review what you allow it to run, as with any tool that acts on your accounts.

One message out, many ears in

Get Blowhorn for Mac, then let Claude Code do the talking.

Download for Mac

More agents