Skip to main content
Glama
marketing-scope-mcp

marketing-scope-mcp

marketing-scope-mcp

Campaign pre-flight for AI agents. Plan the campaign, score the offers explainably, build a registry-backed plan, then verify every tactic cites a scored offer and names a success metric — before any money is spent.

The sibling of research-scope-mcp (sources → citations) applied to marketing: tactics → scored offers.

The discipline

plan_campaign  →  score_offer  →  build_plan  →  check_plan
   (strategy)      (0–100)         (shell)        (gate)
  1. plan_campaign(objective) — decompose a marketing goal into offer targets, channel targets, anti-targets (budget black holes), and kill criteria. Kill criteria are hard stops, not suggestions.

  2. score_offer(offer) — one offer statement graded on an explainable 0–100 scale: clarity 20 / audience specificity 24 / differentiation 20 / proof & risk reversal 20 / call to action 16. Grades: A ≥ 80, B ≥ 65, C ≥ 45, D < 45. Every dimension returns with its evidence, so the number is auditable, not a vibe.

  3. build_plan(goal, offers[]) — writes a campaign-plan shell (strategy, channel briefs, numbered offer registry, scoring appendix) and rejects any offer that was never scored, naming them.

  4. check_plan(plan_id | plan_path) — every tactic must cite a registry offer ([O1]-style) and name a success metric. Violations come back as an error list — never a silent pass.

Related MCP server: PrePilot MCP Server

Install

Node ≥ 20.

npm install -g marketing-scope-mcp
# or run from source:
git clone https://github.com/AxelVerneBooks/marketing-scope-mcp
cd marketing-scope-mcp && npm install && npm run build

Claude Code

claude mcp add marketing-scope -- node /path/to/dist/index.js

Cursor (.cursor/mcp.json)

{ "mcpServers": { "marketing-scope": { "command": "node", "args": ["/path/to/dist/index.js"] } } }

Streamable HTTP

node dist/index.js --http --port 3002        # serves MCP at http://127.0.0.1:3002/mcp

Docker

docker build -t marketing-scope-mcp -f docker/Dockerfile .
docker run -d --name marketing-scope -p 3002:3002 marketing-scope-mcp
# MCP at http://127.0.0.1:3002/mcp; plans persist in the /app/data volume

Data dir (plans on disk) defaults to ./data; override with MARKETING_SCOPE_DATA_DIR.

Example session

> plan_campaign(objective: "sell 30 copies of the build manual in 30 days")
  → offer targets, channel targets, kill criteria incl.
    "Every scored offer below 45/100 → STOP; rework before spending"

> score_offer(offer: "...12 print-ready farm ledgers only $19, includes
   wall chart — unlike generic ledgers it strips to 40 records a season.
   Start today.")
  → 88/100 (A), breakdown with per-dimension evidence

> build_plan(goal: ..., offers: [that exact text])   # unscored → hard error
> check_plan(...)   # orphan tactics → error list; metric-less → flagged

License

MIT — see LICENSE.


Prefer it prebuilt? Campaign Pre-Flight Starter Kit — the built server plus one worked campaign run and the 4-step setup, $9, MIT, free lifetime updates. The one-page scoring rubric it enforces is free, no email wall. (Disclosure: I built and sell both; these are my links.)

Available Tools

4 tools
build_planBuild campaign-plan shellA

Build a campaign-plan shell from already-scored offers: strategy stubs, channel briefs, numbered offer registry, scoring appendix. Writes a markdown file under data/campaigns/ and returns the plan id plus the shell text. Do NOT call it before each offer has a score_offer — unscored offer texts are rejected with an error naming them. Sibling distinction: this creates the shell; check_plan later validates everything written against it.

Inputs: goal (required), offers (required).

check_planCheck plan tactic coverageA
Read-onlyIdempotent

Verify every substantive campaign tactic (a) cites at least one scored offer from the registry and (b) names a success metric. Violations are returned as an error list — never a silent pass. Read-only tool: inspects the registry and the plan file but writes nothing. Use it after every build_plan and again after any manual edit; do NOT use it on arbitrary markdown that never went through build_plan without first scoring its offers. Sibling distinction: build_plan creates the registry-backed shell; check_plan validates whatever is on disk against that registry.

Inputs: plan_id, plan_path.

plan_campaignPlan a campaignA
Read-onlyIdempotent

Turn a campaign objective into a pre-spend plan: offer targets, channel targets, anti-targets (budget black holes), and kill criteria. Purpose: decompose a marketing goal into scoreable tactics BEFORE any spend. Use this before score_offer on any new product/launch; re-plan only when kill criteria trigger. Sibling distinction: score_offer grades ONE offer statement; this plans the whole campaign strategy.

Inputs: objective (required), audience_hints.

score_offerScore an offerA
Idempotent

Score one offer statement (the exact sentence a prospect would read) on an explainable 0–100 offer-strength scale: clarity 20 / audience specificity 24 / differentiation 20 / proof & risk reversal 20 / call to action 16. Grades: A >= 80, B >= 65, C >= 45, D < 45. Every dimension comes back WITH its evidence, so the number is auditable rather than a vibe. Side effect: the score is cached in an in-memory registry keyed by the exact offer text (lost on restart; re-score before finalizing a plan). Do NOT use it as a general copy critique — it grades offer statements, not landing pages. Sibling distinction: plan_campaign plans the strategy; this grades one sentence; build_plan consumes the scores.

Inputs: offer (required), audience.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.6/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with explicit sibling distinctions: plan_campaign plans strategy, score_offer grades a single offer, build_plan constructs the plan shell, and check_plan validates. No overlapping purposes or ambiguous boundaries.

    Naming Consistency5/5

    All tool names follow a consistent snake_case verb_noun pattern: plan_campaign, score_offer, build_plan, check_plan. The convention is predictable and readable throughout.

    Tool Count5/5

    Four tools exactly cover the campaign planning workflow—plan, score, build, check—each earning its place without redundancy or bloat. The count matches the scope perfectly.

    Completeness5/5

    The tool set covers the full lifecycle from initial strategy planning through offer scoring, plan construction, and final validation against the registry. No obvious gaps for the stated marketing-scope domain; agents can complete the intended workflow end-to-end.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Validates startup ideas with a deterministic scorecard, evidence brief, and verdict before code is written, integrating with MCP-aware build agents to avoid building dead-on-arrival products.
      1
      11 npm
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI clients to compose and execute marketing campaigns by mapping free-form intent to a deterministic plan of over 1,000 production-tested skills, supporting multiple workflows across paid ads, SEO, content, and more.
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to perform marketing operations like campaign management, content creation, and outreach, with a tiered approval model ensuring human oversight for consequential actions.
      MIT