YouTube
An MCP server for interacting with YouTube's data and services.
Youtube MCP server
About
The server is a bridge between the Youtube API and the AI assistants and is based on the Model Context Protocol.
What is MCP?
The Model Context Protocol (MCP) is a system that lets AI apps, like Claude Desktop, connect to external tools and data sources. It gives a clear and safe way for AI assistants to work with local services and APIs while keeping the user in control.
What does this server do?
- Download closed captions for the given video
Practical use cases
- Create a summary of the video
Prerequisites
Installation
uv tool install git+https://github.com/sparfenyuk/mcp-youtube
[!NOTE] If you have already installed the server, you can update it using
uv tool upgrade --reinstallcommand.
[!NOTE] If you want to delete the server, use the
uv tool uninstall mcp-youtubecommand.
Configuration
Claude Desktop Configuration
Configure Claude Desktop to recognize the Youtube MCP server.
-
Open the Claude Desktop configuration file:
- in MacOS, the configuration file is located at
~/Library/Application Support/Claude/claude_desktop_config.json - in Windows, the configuration file is located at
%APPDATA%\Claude\claude_desktop_config.json
Note: You can also find claude_desktop_config.json inside the settings of Claude Desktop app
- in MacOS, the configuration file is located at
-
Add the server configuration
{ "mcpServers": { "mcp-youtube": { "command": "mcp-youtube", } } } }
Development
Getting started
-
Clone the repository
-
Install the dependencies
uv sync -
Run the server
uv run mcp-youtube --help
Tools can be added to the src/mcp_youtube/tools.py file.
How to add a new tool:
-
Create a new class that inherits from ToolArgs
class NewTool(ToolArgs): """Description of the new tool.""" passAttributes of the class will be used as arguments for the tool. The class docstring will be used as the tool description.
-
Implement the tool_runner function for the new class
@tool_runner.register async def new_tool(args: NewTool) -> t.Sequence[TextContent | ImageContent | EmbeddedResource]: passThe function should return a sequence of TextContent, ImageContent or EmbeddedResource. The function should be async and accept a single argument of the new class.
-
Done! Restart the client and the new tool should be available.
Validation can accomplished either through Claude Desktop or by running the tool directly.
Debugging the server in the Inspector
The MCP inspector is a tool that helps to debug the server using fancy UI. To run it, use the following command:
npx @modelcontextprotocol/inspector uv run mcp-youtube
Troubleshooting
Message 'Could not connect to MCP server mcp-youtube'
If you see the message 'Could not connect to MCP server mcp-youtube' in Claude Desktop, it means that the server configuration is incorrect.
Try the following:
- Use the full path to the
mcp-youtubebinary in the configuration file
Verwandte Server
QontoCtl
CLI and MCP server for the Qonto business banking API — manage transactions, invoices, clients, transfers, and more
Geo Location Demo
Retrieves user geolocation information using EdgeOne Pages Functions and exposes it via an MCP server.
Zuora Product Catalog
An MCP server for accessing a Zuora product catalog, deployable on Cloudflare Workers.
OpenAI
A server for interacting with the OpenAI API. Requires an API key.
CData SAP Concur
A read-only MCP server to query live SAP Concur data, powered by CData.
TagoIO
Interact with your TagoIO account to access devices, data, and platform resources for development and intelligent data analysis.
IBM Instana MCP Server
The IBM Instana MCP server enables seamless interaction with the IBM Instana observability platform, allowing you to access real-time observability data directly within your development workflow.
DYPAI
Deploy production backends, APIs, cron jobs and automations from any AI assistant. Database, auth, storage and 24+ integrations included.
Supabase MCP Server
Manage Supabase projects and organizations via the Supabase Management API.
Ghost MCP Server
Interact with and manage your Ghost CMS blog, including posts, users, and members, through an LLM interface.