Skip to main content
Glama

Content Distribution MCP

MCP server for multi-platform content distribution — draft, repurpose, schedule, and analyze posts for LinkedIn, Instagram, X/Twitter, TikTok from any AI agent.

Installation

npx content-distribution-mcp

Or install globally:

npm install -g content-distribution-mcp

Related MCP server: blogburst-mcp-server

Configuration

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "content-distribution": {
      "command": "npx",
      "args": ["-y", "content-distribution-mcp"],
      "env": {
        "CONTENT_DIR": "/path/to/your/content/directory"
      }
    }
  }
}

Claude Code

Add to .claude/settings.json:

{
  "mcpServers": {
    "content-distribution": {
      "command": "npx",
      "args": ["-y", "content-distribution-mcp"],
      "env": {
        "CONTENT_DIR": "/path/to/your/content/directory"
      }
    }
  }
}

Tools

Tool

Description

draft_post

Generate a post for any platform with 7 formats and 3 tones

repurpose_content

Adapt content from one platform to another

generate_carousel

Generate carousel slides for LinkedIn/Instagram

schedule_content

Schedule content to the publication queue

get_content_calendar

View the content calendar for upcoming days

analyze_post_performance

Analyze a post's estimated engagement and get improvement tips

generate_thread

Generate a multi-post thread for X or LinkedIn

Post Formats

  • hook_story — Hook + personal story + lesson

  • stat_choc — Shocking statistic + analysis

  • question — Provocative question + discussion

  • framework — Step-by-step framework/method

  • temoignage — Client testimonial/case study

  • mythe_realite — Myth vs reality debunk

  • behind_scenes — Behind the scenes content

Platforms

  • LinkedIn (posts, carousels, threads)

  • Instagram (posts, carousels, reels captions)

  • X/Twitter (tweets, threads)

  • TikTok (captions)

Resources

  • content-distribution://content-queue — Planned content queue

Prompts

  • weekly_content_sprint — Generate a 5-post weekly content sprint

Environment Variables

Variable

Description

Default

CONTENT_DIR

Path to content assets directory

./content

License

MIT

Available Tools

7 tools
analyze_post_performanceAnalyze Post PerformanceA
Read-only

Analyze a post's text for predicted engagement. Returns estimated engagement score (0-100), hook strength, CTA strength, readability, and actionable improvement suggestions.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe post text to analyze
platformYesTarget platform

TDQS

A4/5.0
Behavior4/5

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

Adds substantial behavioral context beyond annotations: specifies exact return metrics (engagement score 0-100, hook strength, CTA strength, readability, suggestions). Annotations only indicate read-only safety; description explains what the analysis actually evaluates.

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?

Two sentences with zero waste: first states purpose, second details return values. Front-loaded and appropriately sized for a 2-parameter tool.

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

Completeness4/5

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

No output schema exists, but description compensates by detailing return structure (scores and suggestions). Adequate for a simple, read-only analysis tool with 2 well-documented parameters and clear safety annotations.

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 has 100% description coverage ('The post text to analyze', 'Target platform'). Description mentions 'post's text' aligning with the text parameter, but adds no additional semantic constraints, format details, or platform-specific behaviors beyond what the enum already provides. Baseline 3 appropriate for high schema coverage.

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

Purpose5/5

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

Clear specific verb ('Analyze') with resource ('post's text'/'engagement') and distinguishes from siblings—all siblings are content creation/management tools (draft_post, generate_carousel, schedule_content) while this is analytical/evaluative.

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

Usage Guidelines3/5

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

No explicit when-to-use or when-not-to-use guidance, nor naming of alternatives. Usage is implied by the analysis focus (vs. creation focus of siblings), but lacks explicit guidance like 'use before posting to optimize' or 'use instead of generate_carousel when evaluating existing text'.

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

draft_postDraft a Social Media PostA
Read-only

Generate a post for a specific social platform (LinkedIn, Instagram, X/Twitter, TikTok). Uses StressZero brand rules: tutoiement, max 3 emojis, 3-5 hashtags, phrases courtes. Identity: Emmanuel Gomes Soares, Coach burnout entrepreneur.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYesPost topic (e.g., 'burnout entrepreneur', 'gestion du stress')
platformYesTarget platform
formatYesPost format/structure
toneNoWriting toneempathique
cta_typeNoCTA intensity: soft (question), medium (free resource), hard (booking/DM)soft

TDQS

A4/5.0
Behavior4/5

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

Adds substantial behavioral context beyond annotations: specifies StressZero brand rules (tutoiement, max 3 emojis, 3-5 hashtags, short phrases) and persona identity (Emmanuel Gomes Soares). These constraints critically affect output generation. Aligns with readOnlyHint=true as generation is non-mutating. Does not mention output format or length limits.

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?

Two sentences with zero waste. First sentence establishes core function and scope; second sentence delivers essential brand/identity constraints. Information density is optimal—every word influences generation behavior or platform targeting.

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

Completeness4/5

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

Given 5 parameters with 100% schema coverage and no output schema, description successfully covers brand identity and platform constraints necessary for correct invocation. Minor gap: does not explicitly state that tool returns drafted post text (though implied by name), nor mentions if output includes suggested media or just copy.

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 coverage is 100%, providing baseline 3. Description adds semantic context by mapping parameters to brand constraints (e.g., 'tutoiement' affects tone parameter, '3-5 hashtags' constrains platform formatting), but does not explain specific parameter syntax or relationships between format/topic/cta_type.

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

Purpose5/5

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

Description uses specific verb 'Generate' with resource 'post' and lists exact platforms (LinkedIn, Instagram, X/Twitter, TikTok). Singular 'post' clearly distinguishes from sibling tools generate_thread (multi-post) and generate_carousel (multi-slide), while 'Draft' in title differentiates from schedule_content (publishing) and analyze_post_performance (analytics).

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

Usage Guidelines3/5

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

Provides implied usage through the format enum options (hook_story, stat_choc, etc.) and brand constraints, but lacks explicit guidance on when to choose this over generate_thread for longer content or repurpose_content for existing material. No 'when not to use' exclusions stated.

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

generate_threadGenerate ThreadA
Read-only

Generate a multi-post thread for X/Twitter or LinkedIn. Creates numbered posts with transitions, including hook, content posts, and CTA finale.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYesThread topic
posts_countNoNumber of posts in the thread (3-10)
platformNoPlatform (linkedin or x)linkedin

TDQS

A4/5.0
Behavior4/5

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

With readOnlyHint=true confirming safe text generation without side effects, the description adds valuable structural context about output format: numbered posts, transitions, hook/CTA structure. This behavioral detail about content organization supplements the annotations well. Does not contradict readOnlyHint status despite using 'Generate' (understood as text creation, not state mutation).

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?

Optimal two-sentence structure with zero redundancy. First sentence establishes platforms and general function; second sentence details output structure. Every phrase earns its place—platform alternatives, post numbering, transitions, and structural components (hook/CTA) are all front-loaded and essential.

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

Completeness4/5

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

Given 100% schema coverage and readOnlyHint annotations, the description adequately explains output structure (numbered posts, transitions, CTA). Missing only explicit mention of return value format (string/text vs object), though this is reasonably inferred from 'Generate.' Appropriate scope for a 3-parameter generation tool without output schema.

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 coverage is 100%, establishing a baseline of 3. The description mentions platform support (X/Twitter/LinkedIn) and multi-post nature, but these merely echo the schema's existing enum values and parameter purposes. Does not add syntactic details, validation rationale (why 3-10 posts), or semantic guidance beyond what the schema already provides.

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

Purpose5/5

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

Excellent specificity: 'Generate a multi-post thread' provides clear verb+resource, explicitly names target platforms (X/Twitter or LinkedIn), and distinguishes from sibling draft_post by emphasizing 'multi-post' structure. The additional detail about 'numbered posts with transitions, including hook, content posts, and CTA finale' precisely defines the output format.

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

Usage Guidelines3/5

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

Provides implicit usage context by specifying 'multi-post thread' and platform options (linkedin/x), which suggests when to use this versus single-post tools. However, lacks explicit guidance contrasting with sibling draft_post or criteria for choosing between platforms. No 'when not to use' or explicit alternative recommendations provided.

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

get_content_calendarGet Content CalendarA
Read-only

View the content calendar/queue. Shows all scheduled content for the next N days.

ParametersJSON Schema
NameRequiredDescriptionDefault
days_aheadNoNumber of days to look ahead (1-30)

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already establish readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context about the time-bounded nature ('next N days') and scope ('all scheduled content'), but does not disclose pagination behavior, rate limits, or content state filters (e.g., whether drafts are included).

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?

Two efficient sentences with zero waste. Front-loaded with the core action ('View'), followed by scope clarification ('Shows all scheduled content'). Every word earns its place.

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

Completeness4/5

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

For a single-parameter read tool with good annotations, the description adequately covers the operation and time scope. Minor gap: lacking description of return structure given no output schema exists, though 'shows... scheduled content' provides partial clarity.

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?

With 100% schema description coverage, the baseline is 3. The description references 'next N days' which loosely maps to the days_ahead parameter, adding semantic context about the look-ahead window, though this largely overlaps with the schema's own description.

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

Purpose5/5

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

The description uses specific verb 'View' with clear resource 'content calendar/queue', and effectively distinguishes from siblings like schedule_content (write operation) and analyze_post_performance (analytics vs calendar viewing).

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 explicit guidance on when to use versus alternatives like schedule_content or draft_post. While 'View' implies read-only usage, it does not state prerequisites, exclusions, or redirect users to sibling tools for write operations.

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

repurpose_contentRepurpose Content for Another PlatformA
Read-only

Take content from one platform and adapt it for another. Handles character limits (X: 280, LinkedIn: 3000, Instagram: 2200), hashtag styles, and format differences automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
original_textYesThe original post content
source_platformYesOriginal platform
target_platformYesTarget platform

TDQS

A4.1/5.0
Behavior4/5

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

Beyond annotations (readOnlyHint), the description adds valuable behavioral specifics: exact character limits for platforms (X: 280, etc.), automatic hashtag style conversion, and format handling. However, it omits what happens when content exceeds limits (truncation vs. error) and the return format.

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?

Two well-structured sentences with zero waste: first sentence establishes the core purpose, second details specific capabilities. Information is front-loaded and every clause earns its place.

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?

Given the lack of an output schema, the description should indicate what the tool returns (the adapted text). While it comprehensively covers input transformation logic, the omission of return value description leaves a gap for a tool with no output schema documentation.

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

Parameters4/5

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

With 100% schema coverage, the baseline is 3. The description elevates this by providing the semantic context for the platform enums—specifically the character constraints and formatting rules that apply to each—adding meaning beyond the schema's basic 'Original platform' labels.

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

Purpose5/5

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

The description clearly states the core action ('Take content... and adapt it') and resource, distinguishing it from sibling creation tools like 'draft_post' or 'generate_thread'. The specific mention of platform constraints (X, LinkedIn, Instagram) further clarifies the scope.

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

Usage Guidelines3/5

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

While the description implies usage by defining the transformation workflow, it lacks explicit guidance on when to choose this over 'draft_post' (create new) versus adapting existing content. No alternatives or exclusion criteria are named.

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

schedule_contentSchedule ContentB

Save content to the publishing queue (content-queue.json). Stores the post with platform, scheduled date/time, and status.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYesThe post content to schedule
platformYesTarget platform
scheduled_dateYesScheduled date (YYYY-MM-DD)
scheduled_timeNoScheduled time (HH:MM, default 09:00)09:00

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate this is a non-destructive write operation (readOnlyHint=false, destructiveHint=false). The description adds value by specifying the storage location (content-queue.json) and revealing that a 'status' field is tracked (not visible in inputs), but omits timezone handling, idempotency, or validation behavior.

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?

Two sentences, front-loaded with the core action. The second sentence earns its place by introducing the 'status' tracking concept, though it partially overlaps with the schema. Efficient but could be slightly more precise ('post' vs 'content' parameter).

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?

Adequate for a 4-parameter tool with complete schema annotations. However, given this is a scheduling tool with no output schema, the description should clarify what indicates success (return value) and timezone handling for the scheduled_time parameter. Gaps remain for operational completeness.

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?

With 100% schema description coverage, the baseline is 3. The description lists some parameters ('platform, scheduled date/time') but doesn't add semantic nuance beyond the schema (e.g., timezone assumptions, content length limits). Mentioning 'status' doesn't help interpret inputs since it's not an input parameter.

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 clearly states the action (save) and target (publishing queue/content-queue.json), and implies the workflow stage by mentioning the queue. However, it doesn't explicitly differentiate from 'draft_post' (a sibling tool), which could cause confusion about when to draft versus schedule.

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 provided on when to select this tool over alternatives like 'draft_post' or 'repurpose_content'. The description assumes the agent knows the content marketing workflow without indicating prerequisites (e.g., 'use this after content is finalized').

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. 7 tool updatesv1.0.1
    • First observedanalyze_post_performance
    • First observeddraft_post
    • First observedgenerate_carousel
    • First observedgenerate_thread
    • First observedget_content_calendar
    • First observedrepurpose_content
    • First observedschedule_content

TDQS

A3.8/5.0

Scored across 7 tools

Disambiguation4/5

The three content generation tools (draft_post, generate_carousel, generate_thread) serve distinct formats but could cause minor hesitation when choosing between single posts versus threads. However, platform-specific parameters and format descriptions provide adequate separation. Other tools have clearly distinct purposes (analysis, repurposing, calendar management).

Naming Consistency5/5

All seven tools follow a consistent verb_noun snake_case convention (analyze_post_performance, draft_post, generate_carousel, etc.). The verb choices clearly indicate the action type (analyze, draft, generate, get, repurpose, schedule) without mixing styles or conventions.

Tool Count5/5

Seven tools is an ideal count for a content distribution system, covering the full lifecycle from creation (3 tools), analysis, repurposing, and scheduling/retrieval. Each tool earns its place without redundancy or bloat.

Completeness3/5

While content creation and predictive analysis are well-covered, the scheduling system lacks update and delete operations for the content queue (only get_content_calendar and schedule_content exist). There's also no immediate publish or retrieve historical performance data, creating dead ends for calendar management workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    An MCP server that repurposes text or URL content into platform-optimized posts for Twitter, LinkedIn, Instagram, and newsletters using AI. It enables users to automatically transform articles and blog posts into engagement-ready social media threads and professional captions.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    52-tool MCP server for AI-powered social media management. Create content with 35+ AI models, distribute to multiple platforms, track analytics, and optimize with closed-loop learning.
    540 npm
    4
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    AI-powered social media posting across 14 platforms. Post to Twitter, Instagram, TikTok, Facebook, LinkedIn, YouTube and more with one command. AI adapts content per platform, schedules posts, and generates 30-day content calendars.
    6
    MIT