Social Media MCP Server
连接多个社交媒体平台(Twitter/X、Mastodon、LinkedIn),允许用户通过自然语言指令跨平台创建和发布内容。
README
社交媒体 MCP 服务器
一个模型上下文协议 (MCP) 服务器,连接到多个社交媒体平台,允许用户通过自然语言指令跨平台创建和发布内容。
功能
- 自然语言界面: 使用简单的指令为多个平台创建帖子
- 研究能力: 自动研究话题标签、趋势、事实和新闻
- 多平台支持: 以平台特定的格式发布到 Twitter/X、Mastodon 和 LinkedIn
- 内容生成: 使用多种 AI 模型生成引人入胜的内容
- 速率限制管理: 通过队列和回退优雅地处理 API 速率限制
- 分析: 跟踪帖子表现并优化内容策略
开始使用
前提条件
- Node.js (v18+)
- npm 或 yarn
- 以下 API 密钥:
- Twitter/X
- Mastodon
- OpenAI 和/或 Anthropic(用于内容生成)
- Brave Search(用于研究)
安装
- 克隆存储库:
git clone https://github.com/yourusername/social-media-mcp.git
cd social-media-mcp
- 安装依赖项:
npm install
- 创建一个包含您的 API 密钥的
.env文件:
# Twitter API 凭据
TWITTER_API_KEY=your_api_key
TWITTER_API_SECRET=your_api_secret
TWITTER_BEARER_TOKEN=your_bearer_token
TWITTER_ACCESS_TOKEN=your_access_token
TWITTER_ACCESS_SECRET=your_access_secret
TWITTER_OAUTH_CLIENT=your_oauth_client
TWITTER_CLIENT_SECRET=your_client_secret
# Mastodon API 凭据
MASTODON_CLIENT_SECRET=your_client_secret
MASTODON_CLIENT_KEY=your_client_key
MASTODON_ACCESS_TOKEN=your_access_token
# LinkedIn API 凭据
LINKEDIN_CLIENT_ID=your_client_id
LINKEDIN_CLIENT_SECRET=your_client_secret
LINKEDIN_ACCESS_TOKEN=your_access_token
# AI API 密钥
ANTHROPIC_API_KEY=your_anthropic_key
OPENAI_API_KEY=your_openai_key
BRAVE_API_KEY=your_brave_key
# 应用程序设置
LOG_LEVEL=info
CACHE_ENABLED=true
RATE_LIMIT_ENABLED=true
- 构建项目:
npm run build
- 启动服务器:
npm start
MCP 集成
要将此 MCP 服务器与 Claude 或其他 MCP 兼容的助手一起使用,请将其添加到您的 MCP 设置中:
{
"mcpServers": {
"social-media-mcp": {
"command": "node",
"args": ["path/to/social-media-mcp/build/index.js"],
"env": {
"TWITTER_API_KEY": "your_api_key",
"TWITTER_API_SECRET": "your_api_secret",
"TWITTER_BEARER_TOKEN": "your_bearer_token",
"TWITTER_ACCESS_TOKEN": "your_access_token",
"TWITTER_ACCESS_SECRET": "your_access_secret",
"TWITTER_OAUTH_CLIENT": "your_oauth_client",
"TWITTER_CLIENT_SECRET": "your_client_secret",
"MASTODON_CLIENT_SECRET": "your_client_secret",
"MASTODON_CLIENT_KEY": "your_client_key",
"MASTODON_ACCESS_TOKEN": "your_access_token",
"LINKEDIN_CLIENT_ID": "your_client_id",
"LINKEDIN_CLIENT_SECRET": "your_client_secret",
"LINKEDIN_ACCESS_TOKEN": "your_access_token",
"ANTHROPIC_API_KEY": "your_anthropic_key",
"OPENAI_API_KEY": "your_openai_key",
"BRAVE_API_KEY": "your_brave_key"
},
"disabled": false,
"autoApprove": []
}
}
}
可用工具
create_post
根据自然语言指令创建内容并将其发布到社交媒体平台。
{
"instruction": "发布关于医疗保健领域最新 AI 发展的信息",
"platforms": ["twitter", "mastodon", "linkedin"],
"postImmediately": false
}
get_trending_topics
从社交媒体平台获取热门话题。
{
"platform": "twitter",
"category": "technology",
"count": 5
}
research_topic
使用 Brave Search 和 Perplexity 研究一个主题。
{
"topic": "人工智能伦理",
"includeHashtags": true,
"includeFacts": true,
"includeTrends": true,
"includeNews": true
}
开发
项目结构
social-media-mcp/
├── src/
│ ├── index.ts # 入口点
│ ├── config/ # 配置
│ ├── types/ # TypeScript 类型定义
│ ├── core/ # 核心编排逻辑
│ ├── nlp/ # 自然语言处理
│ ├── research/ # 研究引擎
│ │ ├── brave/ # Brave Search 集成
│ │ ├── perplexity/ # Perplexity 集成
│ │ └── aggregator/ # 研究结果聚合
│ ├── content/ # 内容生成
│ │ ├── strategies/ # AI 模型策略
│ │ ├── formatter/ # 平台特定格式
│ │ └── templates/ # 内容模板
│ ├── platforms/ # 社交媒体平台集成
│ │ ├── twitter/ # Twitter API 集成
│ │ └── mastodon/ # Mastodon API 集成
│ ├── analytics/ # 分析引擎
│ ├── rate-limit/ # 速率限制管理
│ └── utils/ # 实用函数
├── memory-bank/ # 项目文档
├── build/ # 编译后的 JavaScript
├── .env # 环境变量
├── package.json # 依赖项和脚本
└── tsconfig.json # TypeScript 配置
脚本
npm run build: 构建项目npm run dev: 以热重载的开发模式运行npm start: 启动生产服务器npm test: 运行测试npm run lint: 运行 lintingnpm run format: 格式化代码
实用脚本
scripts 目录包含社交媒体 MCP 服务器的实用脚本:
scripts/linkedin-oauth.js: 处理 LinkedIn 的 OAuth 2.0 流程以获取访问令牌- 用法:
cd scripts && npm install && npm run linkedin-oauth - 有关更多详细信息,请参见 scripts/README.md
- 用法:
文档
documentation 目录包含每个社交媒体平台集成的详细文档:
许可证
此项目根据 ISC 许可证获得许可。
致谢
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。