Windsurf · about 3 minutes · API key or sign in

YouTube MCP server for Windsurf (Devin Desktop)

Windsurf is now called Devin Desktop. Add one entry to its MCP config and Cascade can read transcripts, search YouTube and list channels while it works.

Server URL
https://youtubetranscriptapi.com/mcp
Before you start

What you need

  • Devin Desktop, formerly Windsurf. Its docs moved from docs.windsurf.com to docs.devin.ai.
  • On Teams and Enterprise, admins can limit which MCP servers are allowed, and Enterprise users switch MCP on themselves.
  • An API key from Dashboard → API Keys (or sign in instead, where the app supports it). New accounts get 100 free credits.
Setup

Connect Windsurf

  1. Open the MCP config

    In the Cascade panel, open the ••• menu → MCPs → Open MCP config. The file is ~/.config/devin/mcp_config.json (%APPDATA%\devin\mcp_config.json on Windows).

  2. Add the server

    json
    {
      "mcpServers": {
        "youtube": {
          "serverUrl": "https://youtubetranscriptapi.com/mcp",
          "headers": { "Authorization": "Bearer ${env:YTT_API_KEY}" }
        }
      }
    }

    Use serverUrl. Devin Desktop ignores a server with the wrong field name without showing an error.

  3. Set the key and reload

    Set YTT_API_KEY in the environment Devin Desktop starts from, then refresh the MCP list. To sign in instead of using a key, leave out headers and connect from the MCP panel.

Devin Local and the Devin CLI

The Devin Local agent and the CLI read the same user file, plus .devin/mcp_config.json in a project (and .devin/mcp_config.local.json for secrets you don't commit). From the CLI:

Terminal
devin mcp add youtube https://youtubetranscriptapi.com/mcp

then devin mcp login youtube to sign in. The CLI's file format uses url with "transport": "http".

Test it

Try this prompt

Prompt
Use the youtube tools to get the transcript of <a YouTube link> and turn it into a checklist of the steps it shows.

Cascade calls get_transcript. 1 credit.

Pricing

What each call costs

ToolWhat it doesCost
get_transcriptRead what's said in any public video1 credit
search_youtubeSearch YouTube for videos or channels4 credits
search_channelSearch one channel's videos for a topic1 credit
list_channel_videosList a channel's latest 100 uploads20 credits
get_latest_videosSee a channel's 15 newest videosFree
resolve_channelTurn an @handle into a channel IDFree
list_playlist_videosList the videos in a playlist20 credits
  • Failed calls are never charged: a video without captions, a bad link, a timeout.
  • A long transcript comes back in parts. Later parts, and reading the same video again within 24 hours, cost nothing.
  • Free tools still need a balance of at least 1 credit.
  • New accounts get 100 free credits, no card needed. See plans.
Help

If something doesn't work

›The server doesn't show up

Check the field is serverUrl, not url, and that the JSON is valid. Then refresh the MCP list.

›401 Unauthorized

${env:YTT_API_KEY} only works if the variable is set where Devin Desktop starts. Restart it after setting the variable.

›MCP is disabled

On Teams and Enterprise an admin controls MCP and may need to add this server to the allowlist.

›It says I've run out of credits

The app shows our message with a link to billing. Free tools such as get_latest_videos need at least 1 credit too. Calls that fail are never charged.

›"Transcript unavailable" for a video

The video has no captions, is private, or was removed. Nothing is charged. Try another language with “use the Spanish captions”, for example, if the video has captions in a different language.

Disconnect

Revoke the key in Dashboard → API Keys. If you signed in instead, use Dashboard → Connected apps.

Windsurf changes its menus from time to time. We checked these steps on 18 October 2026 against Devin Desktop MCP docs, Devin's MCP overview and Devin CLI MCP configuration. If something looks different, the app has probably moved it; tell us through the contact form.

Product names and logos belong to their owners and are shown only to say which apps this works with. YouTubeTranscriptAPI isn't affiliated with or endorsed by them.

Ready to connect Windsurf?

Create a free account first if you like: it comes with 100 credits, enough for about 100 transcripts.