Files
mpm-brand-voice-plugin/skills/brand-voice-enforcement/SKILL.md
T

12 KiB

name, description
name description
brand-voice-enforcement This skill applies MPM brand guidelines to content creation. Use when asked to "write an email", "draft a proposal", "create a pitch deck", "write a LinkedIn post", "draft a presentation", "write a Slack message", "draft sales content", or any content creation request where MPM's brand voice should be applied. Also triggers on "on-brand", "brand voice", "enforce voice", "apply brand guidelines", "brand-aligned content", "write in our voice", "use our brand tone", "make this sound like MPM", "rewrite this in our tone", or "this doesn't sound on-brand". Not for generating guidelines from scratch (use guideline-generation).

MPM Brand Voice Enforcement

Apply Message Point Media's brand voice to all content creation. Load brand settings, apply voice constants and tone flexes, generate content, and validate the output.

Assets are baked in. This plugin ships the full MPM logo catalog (PNG + SVG) and the Montserrat / Open Sans fonts inside assets/. You never need the Google Drive connector or the Google MCP to fetch a logo or font — those are slow. Use the local files directly.

Loading Brand Settings

Find MPM's brand settings using this sequence. Stop as soon as you find them:

  1. Plugin settings (always available — REQUIRED first step)

    Read settings/brand-voice.local.md from the plugin directory.

    ⚠️ CRITICAL — READ METHOD: The Read tool cannot access .remote-plugins paths and will fail silently, returning nothing. You must use bash with a cat command to read this file.

    Use the exact bash path — translate the plugin directory location to its bash mount path. The plugin root is also exposed as ${CLAUDE_PLUGIN_ROOT}:

    cat "${CLAUDE_PLUGIN_ROOT}/settings/brand-voice.local.md"
    

    If ${CLAUDE_PLUGIN_ROOT} is unset, translate the plugin path manually, e.g.:

    cat "/sessions/<session-id>/mnt/.remote-plugins/plugin_<id>/settings/brand-voice.local.md"
    

    If you cannot read the file: STOP. Do not proceed with content generation. Tell the user: "I cannot access the brand voice settings file. Please verify the plugin is installed and the session has access to .remote-plugins."

    Never silently fall back to generic colors, fonts, or a generic voice. A failed read must surface as an explicit error — not invisible substitution.

    This file contains the full MPM brand voice: messaging pillars, tone guidance, logo system, typography, color palette, and product terminology. It is the authoritative source.

  2. Working folder override — Check for .claude/brand-voice.local.md inside the user's working folder. If found, this project-specific version takes precedence. Merge any project-specific overrides with the plugin settings.

  3. Session context — Check if updated guidelines were generated earlier in this session via guideline-generation. If so, use those as the freshest source.

Also check for .claude/brand-voice-guidelines.md in the working folder — this may contain additional detail from prior guideline generation runs.

Logo Usage

When producing any document, presentation, proposal, or visual content, always include the appropriate MPM logo. Logo files are baked into this plugin — no Google Drive fetch needed:

Baked-in logos (authoritative, instant):

  • assets/logos/png/ — PNG/JPG for documents, presentations, web, email
  • assets/logos/svg/ — SVG for print and large-format

Resolve a logo's absolute path through the plugin root, then hand that path to the document/image tool:

ls "${CLAUDE_PLUGIN_ROOT}/assets/logos/png/"
echo "${CLAUDE_PLUGIN_ROOT}/assets/logos/png/Logo-Standard-Dark.png"

If ${CLAUDE_PLUGIN_ROOT} is unset, translate the plugin path to its .remote-plugins bash mount (same pattern as the settings file above). Always confirm the path with ls before inserting. The upstream source of truth remains the MPM Logos Drive folder (drive.google.com/drive/folders/1xpO_sh0dQvWiMQbdmbhRZARuev4RpZiL), but you should not need to touch it at runtime.

Logo Selection Rules

Background Logo to Use File (in assets/logos/png/)
White or light backgrounds Standard Dark (DEFAULT) Logo-Standard-Dark.png
White / off-white backgrounds Gold + Black text Logo-Gold-Black.png
Dark, charcoal, or dark-gold backgrounds Gold + White text Logo-Gold-White.png
Cover pages, title blocks with dark header bar Gold + White text Logo-Gold-White.png
Single-color black print Black text only Logo-Black-Text.png
Dark background, icon only needed White Cutout Logo-White-Cutout.png
Pre-composed dark banner (no transparency) White Cutout on dark BG Logo-White-Cutout-Reversed-Text-BG.jpg

For print and large-format output, use the matching SVG from assets/logos/svg/ (e.g. Logo-Standard-Dark.svg, Standard-Logo-Dark.svg).

Transit-Specific Content (proposals, specs, sell sheets)

For Community Transit or any transit agency deliverable, use the TransitPoint sub-brand lockup:

  • Light background: assets/logos/png/MPM-Transitpoint-Dark.png
  • Dark background: assets/logos/png/MPM-Transitpoint-Light.png

Transit product-line sub-brand marks (Mobile, Smart Intermodal, Smart Stop, Solar, MPLocal, MPMetro, MPRail, MPTram, MPXpress) are SVG-only in assets/logos/svg/ — always subordinate to the primary MPM logo.

Placement in Documents

  • DOCX / Word: Top of title/cover page. Header of formal proposals (right-aligned or left-aligned per template).
  • PPTX / Slides: Top-right or top-left of title slide. Bottom-right of content slides as a watermark/identifier.
  • PDFs: Cover page and header/footer.
  • Emails / HTML: Above the signature block or in the email header.

When a Logo File Can't Be Resolved

Logos are baked in, so this should be rare. If ${CLAUDE_PLUGIN_ROOT} is unset and the .remote-plugins path doesn't resolve:

  1. Run ls on the candidate assets/logos/png/ path to diagnose, and try the ${CLAUDE_PLUGIN_ROOT} form first.
  2. If it still cannot be found, tell the user explicitly: "I could not resolve the baked-in logo path. The default light-background logo is assets/logos/png/Logo-Standard-Dark.png inside the mpm-brand-voice plugin." Reserve a clearly labeled placeholder: [INSERT MPM LOGO HERE — Logo-Standard-Dark.png].
  3. Do not omit the logo silently or substitute a non-MPM logo.

MPM Brand Identity Quick Reference

Before generating content, internalize these MPM-specific constants from the settings file:

Voice: Expert Partner — knowledgeable without being condescending. We know transit technology deeply; we help agencies succeed, not just sell them hardware.

Tagline in use:

  • Primary: "Born to Innovate. Built to Last." — use across all branded materials and client-facing communications

Visual Identity — Non-Negotiable (apply to all documents and presentations):

Typography (baked in at assets/fonts/ — no Google Fonts download needed):

  • Headings / titles: Montserrat (assets/fonts/Montserrat-wght.ttf) — Bold for H1, SemiBold for H2/H3
  • Body text: Open Sans (assets/fonts/OpenSans-wght.ttf) — Regular, 11pt / 22 half-points in DOCX
  • Both are variable fonts; the single file per family covers every weight
  • Do not substitute Arial, Calibri, or any system default font

Color palette (hex values — use exactly):

Role Name Hex
Heading text, document titles Dark Gold #998643
Accent lines, dividers, borders Middle Gold #DCBB4F
Body text Dark Shade #232022
Page/section backgrounds (light) Light Shade #F5F1EC
Subtle / secondary elements Light Accent #849698
Table headers (background) Dark Shade #232022
Table header text Light Shade #F5F1EC
Alternating table rows Warm Off-White #FAF7F2
Light gold (on dark backgrounds) Light Gold #F5CD15

⚠️ Do not use generic blues (#1A4F8A or similar), Calibri, or Arial in any MPM-branded output. These are the single most common brand voice failures. If you catch yourself using a blue accent or a system font, stop and correct before delivering the output.

We Are / We Are Not (from settings):

  • Knowledgeable Partner, NOT Vendor
  • Innovative, NOT Hype-Driven
  • Approachable Expert, NOT Jargon-Heavy
  • Mission-Aligned, NOT Purely Commercial
  • Proven and Reliable, NOT Cutting-Edge-for-Its-Own-Sake

Critical terminology rules:

  • Always say "native" integrations, never "wrapper" or "middleware"
  • "MP.TV CMS" not "the CMS" or "OnSign" (in customer-facing materials)
  • "Subscription-based support" not "support contract"
  • Conference motorsports language (pit stop, race, velocity, etc.) is MPower 2025 theme ONLY — do not use in standard brand materials

Refer to settings file for full messaging pillars, audience personas, product terminology, and tone matrix.

Enforcement Workflow

1. Analyze the Content Request

Before writing, identify:

  • Content type: email, presentation, proposal, social post, RFP response, etc.
  • Target audience: which MPM persona applies (Transit Agency Leader, IT Director, Procurement, etc.)
  • Key messages needed: which of MPM's 11 messaging pillars are most relevant
  • Specific requirements: length, format, formality, any stated overrides

2. Apply Voice Constants

MPM's voice stays constant across all content:

  • Apply "We Are / We Are Not" attributes from settings
  • Use MPM-approved terminology; avoid prohibited terms
  • Incorporate the relevant messaging pillars naturally (not as a checklist)
  • Reference brand color names and product names exactly as specified

Refer to references/voice-constant-tone-flexes.md for the voice constant / tone flex model.

3. Flex Tone for Context

Use MPM's tone-by-context matrix from the settings file:

  • Formality: proposal/RFP = high; email = medium; social = medium-low
  • Energy: cold outreach = high; customer success = warm; technical docs = measured
  • Technical depth: IT/operations audience = high; executive = low; general = medium

4. Generate Content

Create content that:

  • Opens with a value claim or compelling question — not "I wanted to reach out"
  • Uses MPM's data points and proof language (subscription-first, device-agnostic, transit-specialized)
  • Mirrors the real-world examples in the brand settings
  • For transit content: leads with rider experience and agency outcomes before technology
  • For partner/vendor content: emphasizes the "boutique alternative" positioning

For long-form or complex content (proposals, white papers, full decks), use multiple passes: outline first, then fill section by section, validating voice at each step.

5. Validate and Explain

After generating:

  • Note which voice attributes and messaging pillars were applied
  • Flag any terminology the user should verify (product names, version numbers)
  • Offer to adjust tone, length, or emphasis
  • If the request conflicts with brand guidelines, explain the conflict and offer options

Handling MPM-Specific Conflicts

Conference language creep: If the user asks for "race-themed" or "pit stop" language outside an MPower conference context, gently note this is event-specific and offer the standard brand equivalent.

Technical depth vs. audience: If unsure of the audience's technical level, default to medium depth with a note — it's easier to add detail than strip jargon after the fact.

Tagline use: "Born to Innovate. Built to Last." is MPM's primary tagline — use it across all branded materials, including sales collateral and cold outreach. Render it exactly as written, with a period after each clause.

Reference Files

  • references/voice-constant-tone-flexes.md — The voice constant / tone flex mental model, "We Are / We Are Not" structure, and tone matrix
  • references/before-after-examples.md — Before/after examples per content type showing enforcement in practice
  • references/mpm-brand-resources.md — MPM-specific brand document locations, the baked-in logo/font index, color values, and Google Drive links
  • ../../assets/README.md — Baked-in asset manifest: logo quick-pick table, font list, and path-resolution guidance