mcpField
C
Content Factory Mcp

Content Factory Mcp

Local
github.com/devladpopovSocial Media0Updated 22w ago

About Content Factory Mcp

Content Factory Mcp is an MCP server for content operators managing a publishing workflow from brand setup through distribution. It generates, translates, and illustrates posts for Telegram, VK, MAX, and Threads.

Key features

  1. 01Configure brand voice and audience
  2. 02Analyze competitors and discover sources
  3. 03Generate and translate branded content
  4. 04Create images with Gemini Imagen or DALL-E
  5. 05Publish to Telegram, VK, MAX, and Threads
  6. 06Preview posts and list channels

Use cases

  1. 01Establish a brand content workflow for social channels
  2. 02Generate and translate posts from source material
  3. 03Create images and publish across multiple platforms

MCP support

The MCP server provides tools for brand setup, content analysis, generation, translation, image creation, and publishing to MCP clients. It can run over stdio and connect to Telegram, VK, MAX, and Threads.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"publish": {
"command": "npx",
"args": [
"-y",
"content-factory-mcp"
],
"env": {
"TELEGRAM_BOT_TOKEN": "<TELEGRAM_BOT_TOKEN>",
"TELEGRAM_CHAT_ID": "<TELEGRAM_CHAT_ID>",
"GEMINI_API_KEY": "<GEMINI_API_KEY>"
}
}
}
}
Run commandnpx -y content-factory-mcp
Environment variables to set
TELEGRAM_BOT_TOKENSecret
TELEGRAM_CHAT_ID
GEMINI_API_KEYSecret

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmcontent-factory-mcp

Tools

11

Saved tool list · updated 3w ago

ParameterTypeRequiredDescription
textstringYesPost text content. Telegram supports HTML tags (<b>, <i>, <a href="...">).
channelstringNoChannel name or platform to publish to. If omitted, publishes to the first configured channel. Use list_channels to see available channels.
image_urlstringNoURL of an image to attach to the post.

Details

From the project README

publish-mcp

AI-powered content factory as an MCP server. Generate, translate, and publish content to Telegram, VK, MAX, and Threads from Claude Code, Cursor, or any MCP client.

One config snippet. Full content pipeline: brand setup, competitor analysis, source discovery, AI writing, image generation, multi-channel publishing.

Quick Start

{
  "mcpServers": {
    "publish": {
      "command": "npx",
      "args": ["-y", "content-factory-mcp"],
      "env": {
        "TELEGRAM_BOT_TOKEN": "123456:ABC-DEF...",
        "TELEGRAM_CHAT_ID": "@my_channel",
        "GEMINI_API_KEY": "AIza..."
      }
    }
  }
}

Then ask your AI agent:

"Set up my brand for the AI education niche, find content sources, generate a post, create an image, and publish to Telegram"

Tools (11 total)

Content Factory
ToolDescription
setup_brandConfigure niche, tone of voice, audience, post structure, sample posts
get_brandShow current brand profile
analyze_competitorsScrape competitor pages, analyze their content strategy with AI
find_sourcesDiscover RSS feeds, scrape websites, or AI-discover sources for your niche
generate_postGenerate a post from topic or source material, using brand voice
translate_postTranslate posts to any language, maintaining brand voice
generate_mediaGenerate images via Gemini Imagen or DALL-E
Publishing
ToolDescription
publishPublish text + optional image to a single channel
publish_allPublish to all configured channels at once
list_channelsShow configured channels
previewDry-run: see what would be published

Full Pipeline Example

You (to Claude Code):
  "I run a fitness blog. Set up my brand, analyze my competitor
   @fitnessguru, find content sources, write a post about
   morning routines, generate an image, and publish to Telegram."

Claude Code calls:
  1. setup_brand(niche="fitness", tone="motivational", ...)
  2. analyze_competitors(urls=["https://fitnessguru.com"])
  3. find_sources(action="discover", niche="fitness")
  4. generate_post(topic="5 morning routines for energy")
  5. generate_media(post_text="<generated post>")
  6. publish(text="<post>", image_url="<image>", channel="telegram")

Environment Variables

Publishing (at least one platform required)
TELEGRAM_BOT_TOKEN=123456:ABC-DEF...
TELEGRAM_CHAT_ID=@my_channel

VK_ACCESS_TOKEN=vk1.a.xxx
VK_GROUP_ID=12345678
VK_USER_TOKEN=vk1.a.yyy          # optional, for photo uploads

MAX_BOT_TOKEN=xxx
MAX_CHAT_ID=-12345678

THREADS_ACCESS_TOKEN=xxx
THREADS_USER_ID=12345678
AI Backend (required for content factory tools)

Set ONE of these. Priority: explicit AI_PROVIDER > first key found.

# Gemini (free tier available)
GEMINI_API_KEY=AIza...
GEMINI_MODEL=gemini-2.5-flash         # optional

# OpenAI
OPENAI_API_KEY=sk-...
OPENAI_MODEL=gpt-4o-mini              # optional

# Claude (Anthropic)
ANTHROPIC_API_KEY=sk-ant-...
ANTHROPIC_MODEL=claude-sonnet-4-20250514  # optional

# Ollama (local, free, no API key)
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=llama3.1                  # optional

# Any OpenAI-compatible API (Together, Groq, Fireworks, LM Studio, etc.)
OPENAI_COMPATIBLE_BASE_URL=https://api.together.xyz/v1
OPENAI_COMPATIBLE_API_KEY=xxx
OPENAI_COMPATIBLE_MODEL=meta-llama/Llama-3.1-70B-Instruct

# Force specific provider (overrides auto-detection)
AI_PROVIDER=gemini|openai|anthropic|ollama|openai-compatible
Multi-Channel Config
PUBLISH_CHANNELS=[{"name":"my-tg","platform":"telegram","token":"...","chatId":"@chan"},{"name":"my-vk","platform":"vk","token":"...","chatId":"123","groupId":"123"}]
Storage
PUBLISH_MCP_DATA_DIR=/path/to/data  # optional, default: ./.publish-mcp

Platforms

PlatformAuthPublishing
TelegramBot token + admin in channelsendMessage / sendPhoto
VKCommunity token (+ user token for photos)wall.post
MAXBot tokensendMessage + photo
ThreadsLong-lived access tokenContainer + publish API

Development

npm install
npm run build
node dist/index.js  # starts MCP server on stdio

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.