Torna al blog

Come Creare un Server MCP YouTube per Assistenti di Codifica AI per Cursore e Windsurf

2025-04-255 min di lettura

Durante la migrazione del mio sito web Learn English Sounds da un CMS a Next.js, ho incontrato un frustrante ostacolo. Avevo bisogno di trovare video di YouTube che dimostrassero ogni fonema inglese, ma i miei assistenti di codifica AI (Cursor e Windsurf) non potevano cercare direttamente su YouTube.

Ciò significava che dovevo verificare manualmente ogni suggerimento video, il che interrompeva il mio flusso di lavoro. Ricevevo un suggerimento, controllavo se esisteva, poi tornavo alla codifica. Non era un grosso problema, ma decisamente inefficiente.

Per semplificare questo processo, ho creato un semplice server Model Control Protocol (MCP) per YouTube. Permette ai miei strumenti di codifica AI di cercare e recuperare informazioni video effettive senza il mio intervento.

Questa guida spiega come creare il tuo server MCP. È un progetto semplice che può farti risparmiare tempo se hai spesso bisogno che il tuo assistente di codifica AI acceda a servizi esterni come YouTube.

Cos'è un MCP?

Immagina di utilizzare un assistente AI come Claude o GPT, ma questo non può accedere direttamente a Internet o ad altri servizi. Un MCP (Model Control Protocol) è come un traduttore che aiuta l'AI a parlare con questi servizi.

Pensala in questo modo: se parli inglese e il tuo amico parla spagnolo, hai bisogno di un traduttore per comunicare. Allo stesso modo, un server MCP traduce tra uno strumento AI (come Cursor o Windsurf) e un servizio esterno (come YouTube). Segue regole specifiche in modo che entrambi i lati si capiscano perfettamente.

In termini tecnici, è un server API standardizzato che segue formati specifici in modo che gli strumenti AI possano richiedere e ricevere dati senza intervento umano. Il protocollo definisce come vengono formattate le richieste, come devono essere strutturate le risposte e come vengono gestiti gli errori.

In particolare, Anthropic ha reso open-source il suo Model Context Protocol, che consente agli sviluppatori di creare connessioni sicure tra sorgenti dati e strumenti AI. La loro implementazione include SDK, supporto server locale nelle app desktop di Claude e server pre-costruiti per sistemi popolari come Google Drive, GitHub e Slack.

Perché ne avevo bisogno

Learn English Sounds richiede video che mostrino la corretta pronuncia per ogni fonema. Senza accesso diretto a YouTube, Cursor o Windsurf suggerivano video che spesso non esistevano, richiedendo la verifica manuale di ogni suggerimento.

Esempio di flusso di lavoro prima dell'MCP:

Io: "Ho bisogno di video per il suono 'th'."
Cursor o Windsurf: "Raccomando 'English TH Sounds - How to pronounce TH correctly'."
Io: "Esiste davvero? Qual è il canale?"
Cursor o Windsurf: "Dovrebbe essere sul canale 'English Pronunciation'."
Io: *cerca su YouTube* "Quel canale esiste ma quel video no."

Costruzione del server YouTube

Ho costruito il server usando Python con FastAPI, collegandomi all'API Dati di YouTube. Ecco il diagramma dell'architettura che mostra come funziona:

Diagramma dell'Architettura del Server MCP YouTube

La sfida principale è stata la gestione delle quote dell'API di YouTube e garantire che il server seguisse correttamente le specifiche MCP.

Come funziona

Con il server MCP, Cursor o Windsurf possono ora cercare direttamente su YouTube e fornire video effettivi con conteggi di visualizzazioni e valutazioni. Ciò riduce il ping-pong e mi permette di concentrarmi sullo sviluppo.

Nuovo flusso di lavoro:

Io: "Trova video per il suono 'th'."
Cursor o Windsurf: *interroga il server MCP*
Cursor o Windsurf: "Ho trovato queste opzioni con conteggi di visualizzazioni e valutazioni. Quale preferisci?"
Io: "Il primo."
Cursor o Windsurf: *aggiunge il codice embed con l'ID video corretto*

Dettagli di implementazione tecnica

Considerazioni tecniche chiave nella creazione di un MCP:

1. Autenticazione: La specifica MCP non ha un metodo di autenticazione standardizzato. Ho utilizzato una chiave API di YouTube memorizzata in una variabile d'ambiente (file .env).

2. Formato della risposta: Gli strumenti AI si aspettano formati di risposta specifici. Il formato varia per endpoint, ma ecco un esempio dall'endpoint search_videos:


{
  "videos": [
    {
      "title": "How to Pronounce TH - English Pronunciation Lesson",
      "videoId": "dQw4w9WgXcQ",
      "channelTitle": "English Pronunciation",
      "description": "Learn how to pronounce the TH sound in English correctly."
    }
  ]
}

Ed ecco un esempio dall'endpoint get_video_details, che restituisce informazioni più complete:


{
  "title": "How to Pronounce TH - English Pronunciation Lesson",
  "description": "Learn how to pronounce the TH sound in English correctly.",
  "channelTitle": "English Pronunciation",
  "publishedAt": "2023-04-15T14:30:00Z",
  "duration": "PT5M30S",
  "viewCount": "1234567",
  "likeCount": "12345",
  "commentCount": "1234"
}

3. Gestione degli errori: Formati di errore coerenti sono essenziali poiché gli strumenti AI possono essere confusi da risposte inaspettate. La mia implementazione include una gestione specifica degli errori per diversi scenari:

  • Chiave API mancante: "Impossibile inizializzare il servizio YouTube. Controllare la variabile d'ambiente YOUTUBE_API_KEY."
  • Chiave API non valida: "Si è verificato un errore HTTP 400: [contenuto dell'errore]. Ciò potrebbe indicare una chiave API (YOUTUBE_API_KEY) non valida o mancante."
  • Risorsa non trovata: "Video con ID '[video_id]' non trovato."
  • Errori HTTP generali: "Si è verificato un errore HTTP [status]: [contenuto dell'errore]"

Perché questo è importante per gli strumenti di codifica AI

Quando codifichi con assistenti AI come Cursor o Windsurf, prendi costantemente decisioni basate su informazioni esterne. Senza gli MCP, questi strumenti lavorano essenzialmente bendati quando si tratta di dati in tempo reale.

Ecco perché gli MCP cambiano le regole del gioco per la codifica AI:

  • Riduzione del cambio di contesto: Rimani nel tuo flusso di codifica senza passare da un'applicazione all'altra
  • Informazioni verificate: Ottieni dati accurati e in tempo reale invece di contenuti potenzialmente obsoleti o allucinati
  • Conoscenza specializzata: Accedi a informazioni specifiche del dominio su cui l'AI non è stata addestrata
  • Flussi di lavoro personalizzati: Crea MCP per le tue esigenze specifiche e i tuoi modelli di sviluppo

Secondo la documentazione di OpenAI, gli MCP forniscono "conoscenza specifica del dominio con chiari confini", rendendoli ideali per estendere le capacità dell'AI in modo controllato e prevedibile. Allo stesso modo, l'applicazione desktop Claude di Anthropic utilizza gli MCP per connettere in modo sicuro Claude a servizi come Google Drive e GitHub.

Crea il tuo MCP

Se vuoi creare un MCP:

1. Inizia con un singolo endpoint API che ti farebbe risparmiare più tempo

2. Concentrati sull'ottenere il formato della risposta corretto

3. Implementa una corretta gestione degli errori

Il mio MCP YouTube include questi endpoint:

  • /search_videos - Trova video che corrispondono a una query
  • /get_video_details - Ottieni informazioni dettagliate su un video specifico
  • /get_related_videos - Trova video correlati a un video specifico
  • /list_channel_videos - Ottieni caricamenti recenti da un canale
  • /get_channel_details - Ottieni informazioni su un canale YouTube
  • /search_playlists - Trova playlist che corrispondono a una query
  • /get_playlist_items - Ottieni video in una playlist specifica

Risultati

La creazione di questo server MCP ha ridotto significativamente il mio tempo di sviluppo. Cursor e Windsurf ora fanno suggerimenti migliori basati su dati video effettivi e posso mantenere la concentrazione sullo sviluppo senza cambiare contesto per cercare su YouTube.

Server MCP Popolari e Usi Attuali

Diversi server MCP sono già in uso in ambienti di produzione:

  • GitHub MCP: Consente agli strumenti AI di cercare repository, visualizzare codice e accedere a problemi/PR
  • Google Drive MCP: Abilita la ricerca e il recupero di documenti da Google Drive
  • Slack MCP: Fornisce accesso a canali, messaggi e informazioni sull'area di lavoro
  • Firebase MCP: Abilita l'interrogazione e l'aggiornamento di raccolte e documenti Firestore
  • MongoDB MCP: Fornisce accesso a database MongoDB per l'analisi dati assistita dall'AI
  • PostgreSQL MCP: Consente agli strumenti AI di interrogare database relazionali e visualizzare i risultati
  • Jira MCP: Consente l'interrogazione e l'aggiornamento di ticket e informazioni di progetto
  • Mermaid MCP: Aiuta a generare diagrammi da descrizioni testuali (simile al mio post sull'automazione di Mermaid)
  • Wolfram Alpha MCP: Fornisce conoscenza computazionale e fattuale

Questi server sono particolarmente popolari tra gli utenti di Claude Desktop e gli sviluppatori che lavorano con Cursor o Windsurf. Man mano che l'ecosistema MCP cresce, vediamo server più specializzati per domini come l'analisi dei dati, il test delle API e la generazione di documentazione.

Provalo tu stesso

Il codice per il mio server MCP YouTube è disponibile su GitHub. Avrai bisogno di una chiave API di YouTube per configurarlo.