Social Media MCP Server について
Social Media MCP Server は、Twitter/X、Mastodon、LinkedIn などの複数のソーシャルメディアに接続する MCP サーバーです。自然言語の指示から各プラットフォーム向けの投稿を作成・公開でき、投稿前にトピックの調査も行えます。
主な機能
- 01自然言語による複数プラットフォーム向け投稿作成
- 02プラットフォームごとの形式調整
- 03Brave Search と Perplexity を使ったトピック調査
- 04プラットフォームの트렌드トピック取得
- 05API レート制限への待機列とフォールバック
活用シーン
- 011つの指示から複数プラットフォームに投稿する
- 02トピックのハッシュタグ、事実、ニュースを収集する
- 03トレンドトピックを確認してコンテンツを計画する
MCP 対応
本プロジェクトは MCP サーバーで、create_post、get_trending_topics、research_topic などのツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ソーシャルメディア MCP サーバー
複数のソーシャルメディアプラットフォームに接続し、自然言語の指示を通じて各プラットフォーム向けのコンテンツを作成・公開できる Model Context Protocol(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 Credentials
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 Credentials
MASTODON_CLIENT_SECRET=your_client_secret
MASTODON_CLIENT_KEY=your_client_key
MASTODON_ACCESS_TOKEN=your_access_token
# LinkedIn API Credentials
LINKEDIN_CLIENT_ID=your_client_id
LINKEDIN_CLIENT_SECRET=your_client_secret
LINKEDIN_ACCESS_TOKEN=your_access_token
# AI API Keys
ANTHROPIC_API_KEY=your_anthropic_key
OPENAI_API_KEY=your_openai_key
BRAVE_API_KEY=your_brave_key
# Application Settings
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": "Post about the latest AI developments in healthcare",
"platforms": ["twitter", "mastodon", "linkedin"],
"postImmediately": false
}
get_trending_topics
ソーシャルメディアプラットフォームのトレンドトピックを取得します。
{
"platform": "twitter",
"category": "technology",
"count": 5
}
research_topic
Brave Search と Perplexity を使用して、トピックを調査します。
{
"topic": "artificial intelligence ethics",
"includeHashtags": true,
"includeFacts": true,
"includeTrends": true,
"includeNews": true
}
開発
プロジェクト構成
social-media-mcp/
├── src/
│ ├── index.ts # Entry point
│ ├── config/ # Configuration
│ ├── types/ # TypeScript type definitions
│ ├── core/ # Core orchestration logic
│ ├── nlp/ # Natural language processing
│ ├── research/ # Research engine
│ │ ├── brave/ # Brave Search integration
│ │ ├── perplexity/ # Perplexity integration
│ │ └── aggregator/ # Research result aggregation
│ ├── content/ # Content generation
│ │ ├── strategies/ # AI model strategies
│ │ ├── formatter/ # Platform-specific formatting
│ │ └── templates/ # Content templates
│ ├── platforms/ # Social media platform integrations
│ │ ├── twitter/ # Twitter API integration
│ │ └── mastodon/ # Mastodon API integration
│ ├── analytics/ # Analytics engine
│ ├── rate-limit/ # Rate limit management
│ └── utils/ # Utility functions
├── memory-bank/ # Project documentation
├── build/ # Compiled JavaScript
├── .env # Environment variables
├── package.json # Dependencies and scripts
└── tsconfig.json # TypeScript configuration
スクリプト
npm run build:プロジェクトをビルドしますnpm run dev:ホットリロードを有効にして開発モードで実行しますnpm start:本番サーバーを起動しますnpm test:テストを実行しますnpm run lint:リンティングを実行しますnpm run format:コードを整形します
ユーティリティスクリプト
scripts ディレクトリには、Social Media MCP Server 用のユーティリティスクリプトが含まれています:
scripts/linkedin-oauth.js:LinkedIn の OAuth 2.0 フローを処理して、アクセストークンを取得します- 使用方法:
cd scripts && npm install && npm run linkedin-oauth - 詳細については、scripts/README.md を参照してください
- 使用方法:
ドキュメント
documentation ディレクトリには、各ソーシャルメディアプラットフォームとの連携に関する詳細なドキュメントが含まれています:
ライセンス
このプロジェクトは ISC License の下でライセンスされています。
謝辞
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。