Social CLI MCP
MCP server for posting to Twitter/X, Reddit, LinkedIn, Instagram, and email via CLI or AI agents, with Telegram bot control and security confirmations.
README
Social CLI MCP 📱
CLI tool for posting to social media platforms with MCP server support for AI agents
Post to Twitter/X, Reddit, LinkedIn, and Instagram from your terminal or via AI agents.
Features
- 🐦 Twitter/X - Posts, threads, media uploads, analytics
- 🤖 Reddit - Text posts, link posts, cross-posting
- 💼 LinkedIn - Updates with links and images
- 📸 Instagram - Photo/video posts, carousels (Creator/Business accounts)
- 📧 Email - Gmail SMTP for outreach campaigns
- 🤖 MCP Server - AI agent integration
- 🎨 Interactive mode - Guided posting experience
- 📱 Telegram Bot - Remote control + Claude AI chat
- 🔐 Security Gate - All sensitive actions require Telegram confirmation
Quick Start
1. Install
git clone https://github.com/Alemusica/social-cli-mcp.git
cd social-cli-mcp
npm install
2. Configure
cp .env.example .env
# Edit .env with your API credentials
3. Test connections
npm run cli test
4. Post!
# Single platform
npm run cli post "Hello world!" --twitter
# Multiple platforms
npm run cli post "Check this out!" --twitter --linkedin
# Reddit (requires subreddit)
npm run cli post "My post" --reddit ClaudeAI --title "My Title"
# Instagram (requires image)
npm run cli post "My caption" --instagram "https://example.com/image.jpg"
# Interactive mode
npm run cli interactive
CLI Commands
# Post to platforms
social post <text> [options]
-t, --twitter Post to Twitter/X
-r, --reddit <subreddit> Post to Reddit
-l, --linkedin Post to LinkedIn
-i, --instagram <image> Post to Instagram
-a, --all Post to all configured
--title <title> Reddit post title
--link <url> Include a link
--hashtags <tags> Comma-separated hashtags
--media <urls> Comma-separated media URLs
# Post Twitter thread
social thread <tweet1> <tweet2> ...
# Test connections
social test [--all|--twitter|--reddit|--linkedin|--instagram]
# Show status
social status
# Interactive mode
social interactive
social i
API Credentials Setup
Twitter/X
- Go to developer.twitter.com
- Create a project and app
- Generate API keys and access tokens
- Add to
.env:TWITTER_API_KEY=xxx TWITTER_API_SECRET=xxx TWITTER_ACCESS_TOKEN=xxx TWITTER_ACCESS_SECRET=xxx
- Go to reddit.com/prefs/apps
- Create a "script" type application
- Add to
.env:REDDIT_CLIENT_ID=xxx REDDIT_CLIENT_SECRET=xxx REDDIT_USERNAME=xxx REDDIT_PASSWORD=xxx
- Go to linkedin.com/developers
- Create an app
- Request "Share on LinkedIn" permission
- Get OAuth access token
- Add to
.env:LINKEDIN_ACCESS_TOKEN=xxx
Requires Business or Creator account
- Go to developers.facebook.com
- Create an app
- Add Instagram Graph API
- Link Facebook Page to Instagram account
- Get access token
- Add to
.env:INSTAGRAM_ACCESS_TOKEN=xxx INSTAGRAM_BUSINESS_ACCOUNT_ID=xxx
MCP Server
Use with Claude, Cursor, or any MCP-compatible AI agent.
Configuration
Add to your MCP config:
{
"mcpServers": {
"social": {
"command": "node",
"args": ["/path/to/social-cli-mcp/dist/mcp-server.js"],
"env": {
"TWITTER_API_KEY": "xxx",
"TWITTER_API_SECRET": "xxx",
"TWITTER_ACCESS_TOKEN": "xxx",
"TWITTER_ACCESS_SECRET": "xxx"
}
}
}
}
Available Tools
| Tool | Description |
|---|---|
post_twitter |
Post a tweet |
post_twitter_thread |
Post a thread |
post_reddit |
Post to subreddit |
post_linkedin |
Post to LinkedIn |
post_instagram |
Post to Instagram |
post_all |
Post to all platforms |
test_connections |
Test all connections |
get_status |
Get config status |
Telegram Bot 📱
Control your social media from Telegram with security confirmations.
Setup
- Create bot with @BotFather
- Get your user ID from @userinfobot
- Add to
.env:TELEGRAM_BOT_TOKEN=your_bot_token TELEGRAM_USER_ID=your_user_id ANTHROPIC_API_KEY=sk-ant-xxx # Optional, for Claude AI
Run
npm run bot
Commands
| Command | Description |
|---|---|
/tweet <text> |
Post tweet (with confirmation) |
/email to|subj|body |
Send email (with confirmation) |
/pending |
View pending actions |
/twitter |
View recent tweets + metrics |
/status |
Outreach status |
/venues |
List contacted venues |
| Free text | Chat with Claude AI |
Security
All sensitive actions (tweets, emails) require confirmation via inline buttons. Actions expire after 5 minutes.
See docs/TELEGRAM_BOT_SETUP.md for detailed setup.
Security Gate 🔐
When using Claude Code or other CLI tools, sensitive actions are routed through Telegram for confirmation:
# Test email with confirmation
npx tsx src/security-gate.ts test-email your@email.com
# Test tweet with confirmation
npx tsx src/security-gate.ts test-tweet "Hello world"
Development
# Run CLI in dev mode
npm run cli <command>
# Run MCP server
npm run mcp
# Run Telegram bot
npm run bot
# Build
npm run build
License
MIT
Built with ❤️ by @FluturArt
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.