Skip to main content
Glama
README.md
# Creator Brief MCP

**Give Claude the tools a creator-partnerships manager uses every day.**

An [MCP](https://modelcontextprotocol.io) server that plugs into Claude Desktop, Claude Code or any MCP client. Once connected, you can ask Claude things like:

> *"Plan a €15k Instagram campaign with 12 micro creators in Germany. What reach and cost per conversion should we expect? Then write the creator brief and check this caption is compliant."*

and Claude calls these tools to answer with real calculations instead of guesses.

| Tool | What it does |
|---|---|
| `campaign_math` | Reach, engagements, clicks, conversions, cost per 1,000 reached, cost per engagement and per conversion for a planned budget |
| `engagement_check` | Puts a creator in a follower tier and says if their engagement is healthy, weak or suspiciously high (a sign of engagement pods) |
| `check_disclosure` | Checks a sponsored caption against the paid-partnership label each market expects: **DE, AT, FR, UK, US**. Flags labels hidden behind "more" and suggests a fixed caption |
| `draft_brief` | Writes a one-page creator brief with key messages, do's and don'ts, approval flow and the right disclosure label for the market |

## Why disclosure checks matter in Europe

Labelling rules differ by country, and the details catch brands out. In Germany, media authorities expect **"Werbung"** or **"Anzeige"**, so an English `#ad` alone isn't considered enough. France's 2023 influencer law requires **"Publicité"** or **"Collaboration commerciale"**. The UK wants **"Ad"** upfront. `check_disclosure` encodes these so a whole campaign's captions can be checked in seconds.

```json
check_disclosure(caption="#ad obsessed with this serum", country="DE")
{
  "compliant": false,
  "issues": [
    "No accepted label found. Use one of: werbung, anzeige.",
    "English labels alone are not enough here."
  ],
  "suggested_caption": "Werbung | #ad obsessed with this serum"
}
```

*A summary of public regulator guidance, not legal advice. Sources are returned with every check.*

## Install

```bash
git clone https://github.com/Vishwajeetkumbhar379/creator-brief-mcp
cd creator-brief-mcp
pip install -e ".[dev]"
pytest
```

### Connect to Claude Desktop

Add this to `claude_desktop_config.json` (Settings → Developer → Edit config), then restart Claude:

```json
{
  "mcpServers": {
    "creator-brief": {
      "command": "python",
      "args": ["-m", "creator_brief_mcp"],
      "cwd": "/path/to/creator-brief-mcp"
    }
  }
}
```

### Connect to Claude Code

```bash
claude mcp add creator-brief -- python -m creator_brief_mcp
```

## Design

- **`rules.py`** holds all the business logic as plain functions with no I/O, so it's fully unit-tested (15 tests).
- **`server.py`** is a thin MCP layer built on the official Python SDK (v2). Each tool has typed inputs, so the model gets a precise schema.
- Tested end to end with a real MCP client over stdio.

---

Built by [Vishwajeet Kumbhar](https://www.linkedin.com/in/vishwajeetkumbhar379) with Claude Code. MIT licence.

TDQS

B3.2/5.0

Scored across 4 tools

Disambiguation4/5

Each tool targets a distinct action: forecasting math (campaign_math), compliance checking (check_disclosure), creator auditing (engagement_check), and brief generation (draft_brief). The only mild overlap is that campaign_math also estimates engagements while engagement_check owns engagement-rate health, but the resource/action split keeps them separable.

Naming Consistency4/5

All names use consistent snake_case, which keeps the set readable. Word order varies (verb_noun for check_disclosure/draft_brief versus noun_verb for campaign_math/engagement_check), a minor deviation from a single predictable pattern.

Tool Count4/5

Four tools is slightly thin but each earns its place with a clear, non-redundant function in the creator-campaign workflow. There is no filler or redundant tool bloating the surface.

Completeness4/5

The surface covers the core lifecycle: plan the math, vet the creator, check the disclosure, and draft the brief. Minor gaps exist (no way to list supported markets or disclosure rules, no export/save of the brief), but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessNo issues