HomeBlogTranscribePlansAPI Keys

MCP i OpenAI Responses API: YouTube-transkripsjoner for GPT-5

OpenAI Responses API som kobler til en ekstern MCP-server for å hente en YouTube-transkripsjon

OpenAI Responses API kan kalle eksterne MCP-servere direkte — du deklarerer serveren i tools, og modellen oppdager og kaller verktøyene dens på egen hånd. Koble inn MCP-serveren fra youtube2text.org, så kan GPT-5 hente enhver YouTube-transkripsjon midt i samtalen uten at du skriver et eneste fetch-kall. Jeg testet akkurat dette oppsettet mot gpt-5 i dag; konfigurasjonen nedenfor er klar til å kopieres og limes inn.

Verktøyblokken

Dette er hele integrasjonen:

{
  "type": "mcp",
  "server_label": "youtube2text",
  "server_url": "https://youtube2text.org/mcp",
  "headers": {"x-api-key": "YOUR_KEY"},
  "require_approval": "never"
}

headers-feltet sender youtube2text-API-nøkkelen din videre til serveren ved hvert kall. require_approval: "never" hopper over rundturen med menneskelig godkjenning — rimelig her, siden det eneste verktøyet er en skrivebeskyttet transkripsjonshenting. Få en nøkkel via Google-innlogging på youtube2text.org/app/keys, eller hent den delte demonøkkelen fra GET https://youtube2text.org/api/demo-key (5 videoer/måned per IP).

Komplett Python-eksempel

from openai import OpenAI

client = OpenAI()

resp = client.responses.create(
    model="gpt-5",
    tools=[{
        "type": "mcp",
        "server_label": "youtube2text",
        "server_url": "https://youtube2text.org/mcp",
        "headers": {"x-api-key": "YOUR_KEY"},
        "require_approval": "never",
    }],
    input="Summarize https://www.youtube.com/watch?v=dQw4w9WgXcQ "
          "in five bullet points.",
)

print(resp.output_text)

Det var alt. Ingen kode for å hente transkripsjoner, ingen parsing, ingen prompt-sammensetning. Modellen bestemmer at den trenger transkripsjonen, kaller verktøyet, leser resultatet og skriver sammendraget.

Hva som skjer under panseret

Gå gjennom resp.output, så ser du maskineriet:

  1. Et mcp_list_tools-element dukker opp først. Responses API koblet til https://youtube2text.org/mcp og hentet verktøymanifestet — i vårt tilfelle ett enkelt verktøy, transcribe_video(url, maxChars?), som returnerer {title, content, contentSize, videoId, pubDate, truncated}. Denne importen skjer én gang per samtale og caches i påfølgende turer.
  2. Når modellen bestemmer seg for å kalle det, dukker et mcp_call-element opp med argumentene den valgte ({"url": "https://www.youtube.com/watch?v=..."}) og, når serveren svarer, hele verktøyresponsen.
  3. Til slutt et vanlig message-element med modellens svar, som er det output_text gir deg.

Serveren er streamable HTTP og tilstandsløs, så det finnes ingen sesjonshåndtrykk å administrere — hvert kall står alene. Har en video ingen undertekster, returnerer verktøyet en TRANSCRIPT_UNAVAILABLE-feil, som modellen videreformidler i klartekst i stedet for å krasje kjøringen din.

En egenhet verdt å kjenne til

GPT-5 oppsummerer, analyserer og siterer korte fragmenter fra transkripsjoner uten problemer. Ber du den derimot om å gjengi lange ordrette passasjer, kan den nekte — OpenAIs opphavsrettsrekkverk slår inn ved lengre ord-for-ord-gjengivelse av tredjepartsinnhold. I min testing i dag fungerte sammendrag, temauttrekk og Q&A friksjonsfritt; «gi meg hele transkripsjonen tilbake» gjorde det ikke. Trenger du råteksten, dropp modellen helt og gå rett på REST-endepunktet med curl — ellers betaler du tokens for å hvitvaske din egen API-respons.

Kostnadsnotat

Transkripsjoner er store. En time med snakk er omtrent 8 000–10 000 ord, som alle lander i GPT-5s kontekst som verktøy-output og faktureres som input-tokens. Oppsummerer du i volum, send maxChars i prompt-instruksjonen (modellen videresender det som verktøyargument), eller forbehandle med noe billigere.

Samme server, andre klienter

Det identiske MCP-endepunktet fungerer med Claude — via mcp_servers-blokken i Messages API eller som en claude.ai-connector og i Claude Code — så én youtube2text-nøkkel dekker hele agent-menasjeriet ditt.

Nøkler og planer (gratis 5/mnd opp til ubegrenset for $19.99) finner du på youtube2text.org/app/keys.