ClaudeTube : mon propre serveur MCP pour piloter YouTube depuis Claude

ClaudeTube : mon propre serveur MCP pour piloter YouTube depuis Claude

Claude ne propose pas de connecteur YouTube natif. Plutot que d'attendre, j'ai construit le mien. ClaudeTube est un serveur MCP open source qui connecte Claude a l'API YouTube Data v3 pour gerer une chaine directement depuis une conversation. Je l'utilise au quotidien pour piloter ma chaine gaming Descloizite.

MCP TypeScript YouTube API v3 OAuth 2.0 AES-256-GCM Open Source

Le probleme

En tant que createur YouTube, gerer sa chaine implique beaucoup de taches repetitives : mettre a jour des titres, organiser des playlists, repondre aux commentaires, verifier les stats, moderer... Tout ca se fait sur YouTube Studio, hors de mon environnement de travail.

Claude est capable de se connecter a des outils externes via le Model Context Protocol (MCP). Il existe des connecteurs pour GitHub, PostgreSQL, Slack, et bien d'autres. Mais pour YouTube ? Rien qui permette d'ecrire. Les rares projets existants sont en lecture seule, bases sur du scraping, sans authentification.

Le constat : il n'existe aucun serveur MCP pour gerer une chaine YouTube (lecture + ecriture) avec l'API officielle. J'ai donc decide de le construire moi-meme.

La solution : ClaudeTube

ClaudeTube est un serveur MCP qui expose 27 outils a Claude, couvrant l'ensemble des operations qu'un createur effectue au quotidien sur sa chaine.

Concretement, au lieu d'aller sur YouTube Studio, je dis simplement a Claude :

"Liste mes 5 dernieres videos" "Mets la video XYZ en non-repertorie" "Cree une playlist 'Best of 2025' et ajoutes-y ces 3 videos" "Reponds 'Merci !' aux derniers commentaires" "Telecharge les sous-titres de ma derniere video"

Et Claude execute directement via l'API YouTube, sans quitter la conversation.

Les 27 outils, par categorie

Authentification (4)

Connexion OAuth 2.0, verification du statut, deconnexion. Le flow est entierement guide par Claude.

Videos (5)

Lister, consulter les details, modifier les metadonnees (titre, description, tags, confidentialite), supprimer, noter.

Playlists (7)

CRUD complet + gestion des elements : creer, modifier, supprimer des playlists, ajouter ou retirer des videos.

Commentaires (5)

Lister, poster, repondre, supprimer, moderer (approuver, rejeter, marquer comme spam, bannir).

Chaine (2)

Consulter les stats completes et modifier la description, les mots-cles, la langue, le pays.

Sous-titres (3)

Lister les pistes disponibles, telecharger en SRT/SBV/VTT, supprimer.

Plus un outil de recherche YouTube pour trouver des videos, chaines ou playlists directement depuis Claude.

Stack technique

Composant Technologie
Runtime Node.js 18+
Langage TypeScript (strict mode)
Protocole Model Context Protocol via @modelcontextprotocol/sdk
API YouTube Data API v3 via googleapis
Authentification OAuth 2.0 avec refresh automatique
Chiffrement AES-256-GCM (tokens au repos)
Validation Zod (schemas runtime)

La securite, en detail

Quand on donne a une IA l'acces a son compte YouTube, la question de la securite n'est pas optionnelle. J'ai concu ClaudeTube avec plusieurs couches de protection.

Authentification OAuth 2.0

ClaudeTube utilise le protocole OAuth 2.0 standard de Google. Aucun mot de passe YouTube n'est jamais manipule. L'utilisateur autorise l'acces via une page Google, et ClaudeTube recoit un token d'acces a duree limitee avec un token de rafraichissement.

Chiffrement des tokens

Les tokens ne sont jamais stockes en clair sur le disque. Ils sont chiffres avec AES-256-GCM :

Cle source (variable d'environnement ou derivee du homedir) | v SHA-256 --> Cle AES-256 (32 bytes) | v Chiffrement AES-256-GCM - IV aleatoire (16 bytes) par operation - Tag d'authentification (16 bytes) pour l'integrite - Stocke en JSON : { iv, tag, data }

Chaque operation de chiffrement utilise un vecteur d'initialisation (IV) aleatoire, ce qui signifie que meme si le contenu est identique, le resultat chiffre sera different a chaque fois. Le tag d'authentification garantit que personne n'a modifie le fichier.

Autres mesures

  • Scopes minimaux : seuls 3 scopes YouTube sont demandes, strictement necessaires au fonctionnement
  • Aucun serveur distant : tout tourne en local, les donnees transitent uniquement entre votre machine et l'API Google
  • Confirmation obligatoire : toute action destructive (suppression de video, playlist, commentaire) exige un parametre confirm: true
  • Validation des entrees : les identifiants YouTube sont valides par regex avant tout appel API, les textes sont sanitises
  • Permissions fichiers : le repertoire de tokens est cree en 0700, les fichiers en 0600

En resume : vos credentials Google restent dans vos variables d'environnement, vos tokens sont chiffres sur votre disque, et aucune donnee ne transite par un serveur tiers. Le code est open source et auditable.

Comment je l'utilise au quotidien

Ma chaine Descloizite est une chaine gaming avec plus de 270 videos. Voici comment ClaudeTube s'integre dans mon workflow :

Gestion des publications

Quand je prepare une serie de videos (par exemple ma serie Laysara), je peux demander a Claude de lister mes videos en brouillon, modifier les titres et descriptions en lot, et basculer leur statut de prive a public au moment voulu.

Suivi des stats

Un simple "montre-moi les stats de mes dernieres videos" me donne un tableau clair avec vues, likes et commentaires, sans ouvrir YouTube Studio.

Moderation

Claude peut lister les commentaires recents, me les presenter, et je lui dis lesquels approuver, rejeter ou auxquels repondre. Tout se fait en conversation naturelle.

Organisation des playlists

Creer une playlist, y ajouter les bonnes videos dans le bon ordre, ajuster la description : quelques phrases suffisent au lieu de naviguer dans l'interface YouTube.

Mise en place

L'installation se fait en quelques etapes :

  1. Creer un projet Google Cloud et activer l'API YouTube Data v3
  2. Generer des identifiants OAuth 2.0 (type "Application de bureau")
  3. Cloner le depot et compiler
  4. Configurer le serveur MCP dans Claude Code ou Claude Desktop
  5. Se connecter a YouTube via l'outil auth
# Installation git clone https://github.com/fmenguy/ClaudeTube.git cd ClaudeTube npm install npm run build
# Configuration (.mcp.json a la racine de votre projet) { "mcpServers": { "claudetube": { "command": "node", "args": ["/chemin/vers/ClaudeTube/dist/index.js"], "env": { "YOUTUBE_CLIENT_ID": "votre-client-id", "YOUTUBE_CLIENT_SECRET": "votre-client-secret" } } } }

Une fois configure, il suffit de demander a Claude : "Connecte-toi a mon compte YouTube". Le flow OAuth est entierement guide.

Architecture du projet

src/ ├── index.ts Point d'entree MCP, enregistrement des 27 outils ├── auth/ │ └── oauth.ts OAuth 2.0 flow, chiffrement et stockage des tokens ├── tools/ │ ├── videos.ts Gestion des videos (CRUD + rating) │ ├── playlists.ts Gestion des playlists (CRUD + items) │ ├── comments.ts Commentaires (CRUD + moderation) │ ├── channel.ts Informations et modification de la chaine │ ├── captions.ts Sous-titres (list, download, delete) │ └── search.ts Recherche YouTube └── utils/ ├── errors.ts Gestion d'erreurs API centralisee └── validation.ts Validation et sanitisation des entrees

Le code est structure par domaine fonctionnel. Chaque fichier dans tools/ enregistre ses propres outils MCP aupres du serveur. Le module auth gere l'ensemble du cycle de vie des tokens (generation, chiffrement, stockage, rafraichissement, revocation).

Pourquoi construire son propre MCP ?

L'ecosysteme MCP est encore jeune. Beaucoup de connecteurs n'existent pas encore, et ceux qui existent ne couvrent pas toujours les cas d'usage avances (ecriture, authentification, securite).

Construire son propre serveur MCP, c'est :

  • Maitriser exactement ce que l'IA peut faire : vous definissez les outils, les permissions, les garde-fous
  • Adapter a votre workflow : pas de compromis, pas de fonctionnalites inutiles
  • Contribuer a l'ecosysteme : en open source, d'autres createurs peuvent en beneficier
  • Comprendre le protocole : MCP est un standard en pleine croissance, le maitriser est un investissement

Le SDK MCP (@modelcontextprotocol/sdk) rend la creation d'un serveur relativement simple. Un outil se definit avec un nom, une description, un schema de parametres (via Zod), et une fonction d'execution. Le transport stdio gere la communication avec Claude.

Liens

ClaudeTube sur GitHub Ma chaine Descloizite

Mars 2026

Vous avez aime cet article ?

Voir tous mes articles →