Skip to main content
Glama

Creator Brief MCP

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

An MCP 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.

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.

Related MCP server: miraya

Install

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:

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

Connect to Claude Code

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 with Claude Code. MIT licence.

Available Tools

4 tools
campaign_mathC

Estimate reach, engagements, conversions and unit costs for a creator campaign plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
creatorsYes
avg_reachYes
budget_eurYes
click_rate_pctNo
conversion_rate_pctNo
engagement_rate_pctYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. 'Estimate' implies a non-mutating calculation, but the description does not state whether the tool is read-only, requires authentication, has side effects, or returns deterministic results. It lacks meaningful behavioral detail beyond the purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words. It is concise, though for a six-parameter calculator with no other documentation, it may be too sparse to be fully appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given six parameters, zero schema descriptions, no annotations, and no output schema, the one-sentence description is not complete enough. It does not explain parameter meanings, defaults, return values, or calculation behavior, leaving significant gaps for an agent to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It mentions output metrics like reach, engagements, and conversions, which loosely correspond to some parameters (avg_reach, engagement_rate_pct, conversion_rate_pct), but it does not explain the required inputs, defaults, units, or the role of click_rate_pct. Compensation is minimal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Estimate') and lists the calculated outputs (reach, engagements, conversions, unit costs) for a creator campaign plan. It is clear what the tool does, though it does not differentiate itself from siblings like engagement_check or draft_brief.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a domain context ('for a creator campaign plan') but provides no explicit guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. Usage must be inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_disclosureB

Check a sponsored caption for the paid-partnership label a market expects (DE, AT, FR, UK, US).

ParametersJSON Schema
NameRequiredDescriptionDefault
captionYes
countryYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the country list and the compliance-label concept, indicating a read-only validation, but it doesn't say whether it returns pass/fail, a reason, a severity, or whether it errors on unknown captions. Adequate but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the action and the resource, with the country list as a compact parenthetical. Efficient and readable, though it could use a clarifying sentence about the return.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-param compliance checker with no annotations, no output schema, and no enum on country, the description is too thin. It conveys the purpose but leaves the return shape, country-code format, and error behavior undefined, requiring the caller to probe.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and there are two required parameters (caption, country). The description mentions 'caption' and lists expected countries, which slightly informs the country param, but doesn't specify format (e.g., ISO code vs. name), caption length, or what happens with unsupported countries. This fails to compensate for the 0% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (check/disclosure) and resource (sponsored caption) with the exact regulatory concept being verified (paid-partnership label). It's clear what the tool does, though the sibling tools (campaign_math, engagement_check) are in different domains, so cross-sibling differentiation is less critical.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus alternatives, nor what conditions trigger the check. It implies a compliance-checking use case but doesn't state prerequisites or what a caller should do with the result. This falls short of 'clear context'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

draft_briefC

Write a one-page creator brief in Markdown, including the right disclosure label for the market.

ParametersJSON Schema
NameRequiredDescriptionDefault
dosNo
goalYes
brandYes
dontsNo
countryNoDE
productYes
audienceYes
deadlineNo
platformYes
deliverablesYes
key_messagesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses output format (one-page Markdown) and that a market-appropriate disclosure label is embedded, which is useful, but says nothing about whether anything is persisted, permissions required, or how errors are surfaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; output format and key content are stated up front. It is efficient, though extremely sparse for a tool with 11 parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but with no annotations, no parameter documentation, and a terse one-sentence description, an agent lacks enough context to fill the 7 required fields correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 11 parameters, and the description only hints at one of them ('market', mapping loosely to country). Brand, product, goal, audience, platform, deliverables, key_messages, dos, donts, and deadline are left entirely unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Write a one-page creator brief in Markdown') plus an additional deliverable ('the right disclosure label for the market'). This distinguishes it functionally from check_disclosure, but it never names siblings to make the boundary explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance. It is unclear whether this should be called before or instead of check_disclosure, and no prerequisites are stated despite the presence of that sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

engagement_checkB

Classify a creator's follower tier and say whether their engagement rate looks healthy, weak or suspicious.

ParametersJSON Schema
NameRequiredDescriptionDefault
followersYes
engagement_rate_pctYes

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully discloses the output categories ('healthy, weak or suspicious') and the tier classification behavior, implying a pure read-only computation, but says nothing about thresholds, determinism, or how inputs are bounded.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tightly written sentence that front-loads the core action and packs in both the classification and the verdict. No wasted words or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, no annotations, and 0% schema coverage mean the description should explain return values and input semantics more fully. It covers the output categories at a high level but leaves thresholds, input formats, and error behavior unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It ties 'followers' to a follower tier and 'engagement_rate_pct' to engagement health, giving domain meaning to both required params, but provides no units, ranges, or format details for either.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a concrete verb+resource pair: classify a creator's follower tier and judge engagement health. It clearly states what the tool does, though it does not explicitly distinguish itself from siblings like campaign_math or check_disclosure.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus the siblings (campaign_math, check_disclosure, draft_brief), no prerequisites, and no exclusions. Usage is only implied by the description's scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

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

  1. 4 tool updatesv0.1.0
    • First observedcampaign_math
    • First observedcheck_disclosure
    • First observeddraft_brief
    • First observedengagement_check

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables users to create, manage, and monitor Meta (Facebook/Instagram) ad campaigns directly from Claude using natural language.
    33 PyPI
    15
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to research audience, competitors, and trends, generate Hinglish campaigns and comic story posts, and publish draft content to Facebook and Instagram.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects Claude with the Meta Marketing API to analyze and manage Facebook/Instagram ad campaigns, including retrieving insights, updating campaign status, and listing accounts.
    205 npm
    MIT