social-connect-mcp-poc
Social Connect MCP POC
Node.js 22 POC без npm-зависимостей для тестирования подключений Facebook + TikTok, OAuth и инструментов подключения MCP.
1. Запуск сразу с mock
cp .env.example .env
npm test
npm startОткройте http://localhost:3000, затем нажмите Test Facebook, Test TikTok или Run test-all.
В .env.example по умолчанию задано MOCK_SOCIAL=true, поэтому демо можно запустить сразу, без секретов.
Related MCP server: Social MCP Connector
2. Проверка доступа к реальному endpoint
npm run probeHTTP 400/401 без токена всё равно означает, что endpoint провайдера доступен.
3. Запуск Facebook LIVE
Создайте Meta Developer App, добавьте Facebook Login и настройте:
MOCK_SOCIAL=false
META_GRAPH_VERSION=v26.0
META_APP_ID=...
META_APP_SECRET=...
META_REDIRECT_URI=http://localhost:3000/api/facebook/callbackOAuth scopes POC:
pages_show_list
pages_read_engagement
pages_manage_posts
pages_manage_engagement
pages_messagingЗатем откройте:
http://localhost:3000/api/facebook/loginCallback обменивает authorization code на user access token, вызывает /me и /me/accounts, а затем временно хранит токен в памяти.
Вы также можете обойти OAuth и протестировать токен/Page напрямую:
META_USER_ACCESS_TOKEN=...
# hoặc
META_PAGE_ID=...
META_PAGE_ACCESS_TOKEN=...4. Запуск TikTok LIVE
Создайте TikTok Developer App + Login Kit и настройте:
MOCK_SOCIAL=false
TIKTOK_CLIENT_KEY=...
TIKTOK_CLIENT_SECRET=...
TIKTOK_REDIRECT_URI=http://localhost:3000/api/tiktok/callback
TIKTOK_SCOPES=user.info.basic,video.listОткройте:
http://localhost:3000/api/tiktok/loginCallback использует token endpoint v2, а затем тестируют /v2/user/info/. Если у приложения есть video.list, POC также тестируют /v2/video/list/.
Или протестируйте токен напрямую:
TIKTOK_ACCESS_TOKEN=...5. Внутренний API
GET /api/health
GET /api/facebook/login
GET /api/facebook/callback
GET /api/facebook/test
GET /api/tiktok/login
GET /api/tiktok/callback
GET /api/tiktok/test
GET /api/test-all6. MCP POC
npm run mcpИнструменты:
social_status
facebook_test_connection
tiktok_test_connectionsrc/mcp-server.js — это минимальная реализация MCP поверх stdio JSON-RPC, чтобы POC не зависел от внешних пакетов. При переходе в production его следует заменить на официальный MCP SDK.
7. Production TODO
POC намеренно хранит OAuth-токены только в памяти. Для production необходимы: база данных/зашифрованное хранилище секретов, ротация refresh-токенов, проверка вебхуков Meta/TikTok, RBAC, журнал аудита, ограничение частоты запросов/повторные попытки, App Review и процедура отзыва токенов.
8. Git
Репозиторий уже проинициализирован (git init). Чтобы отправить его на GitHub, создайте удалённый репозиторий и выполните:
git remote add origin git@github.com:<username>/social-connect-mcp-poc.git
git push -u origin mainThis server cannot be deployed
Maintenance
Related MCP Connectors
OAuth MCP for Google, Meta, X, LinkedIn, Reddit, TikTok, GSC, GA4, WordPress and GHL.
Hosted TikTok ads MCP with OAuth, bounded reads, and prepare/confirm writes.
Create, schedule, and publish social posts, manage accounts, and read analytics as MCP tools.
Hosted Meta ads MCP with OAuth, bounded reads, and prepare/confirm writes.
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceEnables posting text messages to Facebook business pages through MCP. Supports OAuth authentication and manual connection methods for managing Facebook page content.-
- FlicenseNot gradedqualityDmaintenanceA remote MCP server that provides tools to query live Meta (Facebook+Instagram) and TikTok organic social data, such as follower counts, insights, recent posts, and aggregated overviews.-

@fopost/mcpofficial
AlicenseAqualityBmaintenanceEnables managing social media posts, accounts, and AI-powered content features from any MCP client, including scheduling, publishing, analysis, and AI caption generation.1425 npmMIT- AlicenseNot gradedqualityCmaintenanceEnables retrieval and management of social media data from Instagram, TikTok, YouTube, X, and Facebook through MCP tools, supporting extractions, search, discovery, batches, schedules, and saved results.47 npmMIT