mcp-telegram-facebook
mcp-telegram-facebook
Serveur MCP (Model Context Protocol) qui permet Ă Claude de :
📥 Récupérer des vidéos sur Telegram (canaux, groupes, discussions)
✍️ Ajouter une description personnalisée et reposter sur Facebook
📄 Gérer une Page Facebook (publications, statistiques)
📢 Publicités : la gestion des campagnes publicitaires n'est volontairement pas incluse ici — elle est assurée par le MCP Facebook Ads officiel, plus complet. Ce serveur se concentre sur ce qu'il fait de unique : Telegram + Pages.
Outils exposés
Outil | RĂ´le |
| Liste les vidéos récentes d'un chat/canal Telegram |
| Télécharge une vidéo sur le disque local |
| Liste les Pages gérées + leurs tokens |
| Publie une vidéo locale sur une Page (titre + description) |
| Publie un post texte (avec lien) sur une Page |
| Statistiques d'une Page |
| Workflow complet : Telegram → Facebook en une étape |
1. Prérequis
Node.js ≥ 18.17
Un compte Telegram + des identifiants API (
API_ID/API_HASH)Une application Facebook avec un jeton d'accès (
Access Token)
2. Installation
git clone https://github.com/cedrdjio/mcp-telegram-facebook.git
cd mcp-telegram-facebook
npm install
npm run build3. Configuration des clés d'API
Copiez le modèle et remplissez-le :
cp .env.example .envTelegram
Allez sur https://my.telegram.org → API development tools.
Créez une application, récupérez
App api_idetApp api_hash.Renseignez
TELEGRAM_API_IDetTELEGRAM_API_HASHdans.env.Générez une session (connexion unique, un code vous est envoyé sur Telegram) :
npm run build npm run telegram:loginLe script affiche une ligne
TELEGRAM_SESSION=...— collez-la dans.env. Vous n'aurez plus jamais à ressaisir le code.
Sélectionnez votre application et générez un jeton avec les permissions :
pages_show_list,pages_manage_posts,pages_read_engagement,read_insights.Renseignez
FACEBOOK_ACCESS_TOKEN.(Optionnel) Définissez
FACEBOOK_PAGE_IDpour éviter de le passer à chaque appel.
💡 Pour publier sur une Page, utilisez de préférence un Page Access Token (renvoyé par
facebook_list_pages). Pensez à un jeton longue durée pour la production.
4. Brancher le serveur sur Claude
Claude Desktop
Éditez le fichier de configuration :
macOS :
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows :
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"telegram-facebook": {
"command": "node",
"args": ["/CHEMIN/ABSOLU/VERS/mcp-telegram-facebook/dist/index.js"],
"env": {
"TELEGRAM_API_ID": "123456",
"TELEGRAM_API_HASH": "xxxxxxxx",
"TELEGRAM_SESSION": "1Ab...collée...ici",
"FACEBOOK_ACCESS_TOKEN": "EAAB...",
"FACEBOOK_PAGE_ID": "1234567890"
}
}
}
}Vous pouvez soit mettre les variables dans le bloc
envci-dessus, soit vous reposer sur le fichier.envdu projet (les deux fonctionnent).
Redémarrez Claude Desktop : l'icône 🔌 doit lister les outils telegram_* et facebook_*.
Claude Code (CLI)
claude mcp add telegram-facebook -- node /CHEMIN/ABSOLU/mcp-telegram-facebook/dist/index.js5. Tester
a) Test rapide du serveur (sans Claude)
Vérifie que le serveur démarre et expose bien ses outils :
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"t","version":"1"}}}' \
'{"jsonrpc":"2.0","method":"notifications/initialized"}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' \
| node dist/index.jsVous devez voir la liste des 12 outils dans la réponse JSON.
b) Avec l'inspecteur officiel MCP
npx @modelcontextprotocol/inspector node dist/index.jsUne interface web s'ouvre : vous pouvez appeler chaque outil manuellement.
c) Dans Claude, exemples de requĂŞtes
« Liste les 10 dernières vidéos du canal
@moncanal»« Télécharge la vidéo message 4523 de
@moncanalpuis reposte-la sur ma Page avec la description : Nouvelle vidéo exclusive ! 🔥 »« Affiche les statistiques de ma Page sur les 7 derniers jours »
Notes & limites
Telegram utilise l'API MTProto (compte utilisateur), ce qui permet de télécharger des vidéos volumineuses depuis n'importe quel canal/groupe dont vous êtes membre — au-delà de la limite de 20 Mo de l'API Bot.
Publication vidéo Facebook : upload multipart standard, adapté jusqu'à ~1 Go. Un futur ajout pourra gérer l'upload resumable pour les très gros fichiers.
Publicités : gérées par le MCP Facebook Ads officiel, pas par ce serveur.
Ne committez jamais votre
.env(déjà ignoré par git).
Licence
MIT