MCP Hub
Back to servers

stylemcp

Brand rules for AI outputs. Validate and rewrite text to match your brand voice.

Registry
Updated
Jan 26, 2026

Quick Install

npx -y stylemcp

StyleMCP

Executable brand rules for AI models and agents. Keep every AI-generated message on-brand.

What is StyleMCP?

StyleMCP validates and rewrites AI-generated text to match your brand voice. Use it as:

  • REST API - Validate text from any application
  • MCP Server - Direct integration with Claude and other AI agents
  • CLI - Check copy in your terminal or CI/CD
  • GitHub Action - Catch off-brand copy in pull requests

Quick Start

API

curl -X POST https://stylemcp.com/api/validate \
  -H "Content-Type: application/json" \
  -d '{"text": "Click here to learn more!"}'

Response:

{
  "valid": false,
  "score": 65,
  "violations": [
    {
      "rule": "no-click-here",
      "severity": "error",
      "message": "Avoid 'click here' - describe the destination instead",
      "suggestion": "Learn more about our features"
    }
  ]
}

CLI

# Install
npm install -g stylemcp

# Validate text
stylemcp validate "Click here to learn more"

# Validate file
stylemcp validate src/copy/homepage.json --pack saas

# Rewrite text
stylemcp rewrite "Please utilize our product" --mode aggressive

MCP (Claude Desktop)

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "stylemcp": {
      "command": "npx",
      "args": ["stylemcp"]
    }
  }
}

Now Claude can validate and rewrite text using your brand rules.

API Endpoints

MethodEndpointDescription
POST/api/validateValidate text against brand rules
POST/api/rewriteRewrite text to match brand voice
POST/api/validate/batchValidate multiple texts
GET/api/packsList available style packs
GET/api/packs/{pack}/voiceGet voice guidelines
GET/api/packs/{pack}/ctasGet CTA rules
GET/api/mcp/sseMCP SSE endpoint
POST/api/mcp/callMCP tool calls

Style Packs

StyleMCP uses style packs - YAML files that define your brand rules.

Default Pack: saas

The included saas pack is designed for B2B SaaS products:

  • Vocabulary: Prefer "use" over "utilize", "help" over "assist"
  • Forbidden words: "synergy", "leverage", "cutting-edge", "game-changing"
  • Patterns to avoid: "click here", "we're sorry for any inconvenience"
  • CTA rules: Avoid "Submit", "Click here", "OK" - prefer "Save", "Create", "Sign up"

Pack Structure

packs/
  my-brand/
    manifest.yaml      # Pack metadata
    voice.yaml         # Tone, vocabulary, forbidden words
    copy_patterns.yaml # Reusable copy templates
    cta_rules.yaml     # Button/CTA guidelines
    tokens.json        # Design tokens (optional)

Create Your Own Pack

# Copy the default pack
cp -r packs/saas packs/my-brand

# Edit the rules
nano packs/my-brand/voice.yaml

# Use your pack
curl -X POST https://stylemcp.com/api/validate \
  -d '{"text": "Your text", "pack": "my-brand"}'

voice.yaml Example

tone:
  summary: "Friendly, clear, and helpful"
  attributes:
    - name: friendly
      weight: 0.8
    - name: professional
      weight: 0.7

vocabulary:
  rules:
    - preferred: "use"
      avoid: ["utilize", "leverage"]
    - preferred: "help"
      avoid: ["assist", "facilitate"]

  forbidden:
    - "synergy"
    - "paradigm shift"
    - "game-changing"

doNot:
  - pattern: "click here"
    reason: "Poor accessibility"
    suggestion: "Describe the destination"
    severity: error

  - pattern: "\\b(obviously|simply|just)\\b"
    isRegex: true
    reason: "Can make users feel stupid"
    severity: warning

Self-Hosting

Docker

# Clone the repo
git clone https://github.com/3DUNLMTD/stylemcp.git
cd stylemcp

# Set up environment
echo "STYLEMCP_API_KEY=$(openssl rand -hex 32)" > .env

# Run with Docker
docker compose up -d

# Check health
curl http://localhost:3000/health

Manual

# Install dependencies
npm install

# Build
npm run build

# Start server
npm start

GitHub Actions

name: Brand Check
on: [pull_request]

jobs:
  validate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Validate copy
        run: |
          npx stylemcp validate src/copy/*.json \
            --min-score 80 \
            --format github

Environment Variables

VariableDescriptionDefault
PORTServer port3000
STYLEMCP_API_KEYAPI key for authentication(none)
GITHUB_WEBHOOK_SECRETGitHub webhook secret(none)

MCP Tools

When used as an MCP server, StyleMCP provides these tools:

ToolDescription
validate_textValidate text against brand rules
rewrite_to_styleRewrite text to match brand voice
get_voice_rulesGet voice and tone guidelines
get_copy_patternsGet approved copy patterns
get_cta_rulesGet CTA guidelines
get_tokensGet design tokens
list_packsList available style packs

What Gets Validated?

The saas pack checks for:

Vocabulary

  • Use simple words: "use" not "utilize", "help" not "assist"
  • Avoid jargon: "synergy", "leverage", "paradigm shift"
  • Avoid weak intensifiers: "very", "really", "extremely"

Patterns

  • No "click here" (accessibility issue)
  • No "we're sorry for any inconvenience" (corporate non-apology)
  • No double "please" (sounds desperate)
  • No starting with "Sorry" (lead with solutions)

CTAs

  • Avoid generic: "Submit", "OK", "Yes/No", "Click here"
  • Use specific actions: "Save", "Create", "Sign up", "Export"
  • Max 4 words

Constraints

  • Max 25 words per sentence
  • No exclamation marks (in most contexts)
  • First-person plural ("we", "our")
  • Oxford comma

License

MIT

Reviews

No reviews yet

Sign in to write a review