DocumentatieMCP-server koppelen

MCP-server koppelen

Laat je AI-assistent transcriberen via MCP. Zo koppel je Claude, ChatGPT, Cursor, VS Code, Claude Code en andere clients.

Koppel je AI-assistent aan transcript1 via Model Context Protocol. De externe MCP-server laat je assistent links van YouTube, X, TikTok, Instagram, Facebook en Bluesky transcriberen en de tekst lezen. Dat kan ook met geüploade audio- en videobestanden. Andere ondersteunde openbare opnames en de beperkingen vind je in Bronnen en instellingen.

Gebruik openbare posts. Bij meerdere video’s in één post transcriberen we alleen de eerste. De ondertitelondersteuning van YouTube en X blijft gelijk. Ook voor TikTok, Bluesky, Dailymotion en LinkedIn proberen we bruikbare ondertitels in de oorspronkelijke taal. In de automatische modus gebruiken we anders AI-speech-to-text, tegen hetzelfde tarief per minuut. Buiten YouTube hebben ondertitels alleen tijdstempels per segment (words: null), ook als ze automatisch zijn gegenereerd.

Met captions (alleen ondertitels) halen we geen audio op en gebruiken we geen STT. Kies je sprekerherkenning of source=stt, dan slaan we de ondertitels juist over. Meer hierover staat in Bronnen en instellingen.

  • Endpoint: https://api.transcript1.com/mcp (streamable HTTP)
  • Inloggen: Claude en ChatGPT gebruiken OAuth 2.1. Je logt in bij transcript1 en geeft toestemming. Voor Cursor, VS Code, Claude Code en agents gebruik je een API-sleutel in Authorization: Bearer t1_.... Maak die aan op “API keys”.

De tools roepen met je sleutel of token de REST API onder /v1 aan. Voor validatie, kosten en foutcodes gelden dezelfde regels. MCP gebruikt hetzelfde minutensaldo en dezelfde requestlimieten als de rest van je account.

Beschikbare tools

ToolWaarvoor gebruik je die?
transcribeStuur een ondersteunde videolink in url. Optioneel zijn platform, source, language, diarize, format en wait_seconds. De tool herkent het platform zelf en wacht op de tekst. Je krijgt de eerste pagina van het transcript, of de id als het nog loopt.
get_transcriptionVraag met id de status of de tekst op. Je kunt ook wait_seconds, format, from_seconds en max_chars meegeven.
list_transcriptionsBekijk recente transcripties, van nieuw naar oud, zonder de tekst. Optionele parameters zijn status, platform, limit en cursor.
create_uploadMaak een upload in chunks aan voor een lokaal bestand. Geef filename, size en request_id mee; voor die laatste genereer je zelf een UUID. mime_type, language en diarize zijn optioneel.
get_upload_statusControleer welke chunks al binnen zijn, zodat je na een onderbreking verder kunt.
complete_uploadLaat de chunks controleren en zet de transcriptie in de wachtrij.
delete_transcriptionStop een lopende transcriptie en krijg de minuten terug, of verwijder een afgeronde transcriptie met de tekst.
get_accountVraag je resterende minuten, abonnement en verlengingsdatum op.

Zo werken de standaardinstellingen

  • Voor format gebruiken we standaard text. Je krijgt één regel per segment, met tijdstempel en bij sprekerherkenning ook een sprekerlabel, bijvoorbeeld [00:01:02] Speaker 1: Good morning. Je kunt ook srt, vtt of json kiezen.
  • De tool wacht standaard 50 seconden via wait_seconds; je kunt 0 tot 55 instellen. Loopt de transcriptie daarna nog, dan krijg je die melding met de id. Geef die door aan get_transcription om opnieuw te wachten.
  • Lange transcripts krijg je per pagina. Met max_chars kies je 1.000 tot 100.000 tekens, standaard 60.000. Een pagina eindigt altijd tussen segmenten. In de response staat next_from_seconds; geef die waarde als from_seconds door om verder te lezen.
  • In transcript_source staat waar de tekst vandaan komt: youtube_captions, x_captions, tiktok_captions, bluesky_captions, dailymotion_captions, linkedin_captions of speech_to_text. Bij caption_kind: null is de herkomst van het ondertitelspoor onbekend. Dat betekent dus niet dat de maker het heeft geüpload.

Bekijk eerst of de transcriptie al bestaat

transcribe zet altijd reuse_recent aan. Gebruik je binnen 24 uur dezelfde volledige videolink met dezelfde opties, dan krijg je de eerdere transcriptie terug zonder opnieuw te betalen. Met korte links werkt dit niet. De tool vermeldt wanneer die een transcriptie hergebruikt. Controleer een bestaande job liever met get_transcription of list_transcriptions dan dat je die opnieuw start.

Bestanden uploaden via je assistent

Het bestand zelf kan niet via MCP mee. Met create_upload krijgt de assistent de transcriptie-id, een URL-template voor de chunks, een X-Upload-Token en de lijst met chunks. De assistent verstuurt die chunks buiten MCP om met HTTP-PUT en roept daarna complete_upload aan. Je krijgt ook een link naar de uploadpagina van het dashboard als alternatief. De stappen staan bij Bestanden uploaden.

Geen webhooks

Een webhook instellen kan niet met de MCP-tools. Gebruik daarvoor de REST API met webhooks.

Claude

In Claude koppel je een externe MCP-server als eigen connector.

  1. Ga in Claude naar de connectorinstellingen en voeg een eigen connector toe.
  2. Geef die de naam transcript1 en vul als server-URL https://api.transcript1.com/mcp in.
  3. Log in bij transcript1 zodra Claude daarom vraagt en geef toestemming voor transcriptions:read en transcriptions:write.

Je kunt nu bijvoorbeeld vragen: “Transcribeer https://www.youtube.com/watch?v=dQw4w9WgXcQ”. Of je eigen connectors kunt toevoegen, hangt af van je Claude-abonnement.

ChatGPT

Ook in ChatGPT voeg je transcript1 als eigen connector toe.

  1. Ga naar de connectorinstellingen in ChatGPT en voeg een eigen connector voor een MCP-server toe.
  2. Gebruik https://api.transcript1.com/mcp als server-URL.
  3. Meld je aan bij transcript1 en geef toestemming voor toegang.

Je ChatGPT-abonnement en de instellingen van je workspace bepalen of dit kan. Mogelijk moet je eerst de ontwikkelaarsmodus inschakelen.

Koppel Cursor via MCP

Gebruik de installatielink: Voeg transcript1 toe aan Cursor

Je kunt de configuratie ook zelf in .cursor/mcp.json zetten. Geef daarbij je API-sleutel mee in de Authorization-header:

{
  "mcpServers": {
    "transcript1": {
      "url": "https://api.transcript1.com/mcp",
      "headers": {
        "Authorization": "Bearer t1_YOURKEY"
      }
    }
  }
}

VS Code

Gebruik de installatielink: Voeg transcript1 toe aan VS Code

Of zet deze configuratie zelf in .vscode/mcp.json van je workspace:

{
  "servers": {
    "transcript1": {
      "type": "http",
      "url": "https://api.transcript1.com/mcp",
      "headers": {
        "Authorization": "Bearer t1_YOURKEY"
      }
    }
  }
}

Koppel Claude Code via MCP

Vul je eigen API-sleutel in voor t1_YOURKEY en voer de opdracht uit:

claude mcp add --transport http transcript1 https://api.transcript1.com/mcp --header "Authorization: Bearer t1_YOURKEY"

Koppel een andere client

Ondersteunt je client externe MCP-servers, gebruik dan https://api.transcript1.com/mcp met de header Authorization: Bearer t1_....

MCP starten met een opdracht

Start je client een MCP-server via een opdracht, laat die dan npx -y @transcript1/mcp uitvoeren. Stel TRANSCRIPT1_API_KEY in op je API-sleutel. Dit pakket verbindt de client met de gehoste transcript1-server en heeft Node.js 18 of nieuwer nodig.

Voor Claude Desktop zet je dit in claude_desktop_config.json. Vervang t1_YOURKEY door een sleutel van “API keys”.

{
  "mcpServers": {
    "transcript1": {
      "command": "npx",
      "args": ["-y", "@transcript1/mcp"],
      "env": { "TRANSCRIPT1_API_KEY": "t1_YOURKEY" }
    }
  }
}

Agent Skill

Gebruikt je agent skills? Voeg dan de Agent Skill van transcript1 toe via https://transcript1.com/.well-known/agent-skills/transcript1/SKILL.md. Dit korte bestand, SKILL.md, legt de agent uit hoe die transcript1 gebruikt.

Een agent met skill discovery kan de instructies zelf vinden via https://transcript1.com/.well-known/agent-skills/index.json.

Als een tool een fout teruggeeft

Bij een fout krijgt de assistent dezelfde code als in de REST API, met een uitleg en een vervolgstap. De opbouw is <code>: <message>. <next step>. Als je minuten op zijn, ziet dat er bijvoorbeeld zo uit:

insufficient_minutes: 20 minutes needed, 3 remaining. Top up at https://transcript1.com/dashboard/billing

De uitleg per code staat bij Fouten afhandelen. Ook als een transcriptie later mislukt, krijgt de assistent zo’n foutmelding, bijvoorbeeld met media_private of no_captions.

Laatst bijgewerkt 15 oktober 2026