youtube-transcript-mcp
Transcribe YouTube videos for LLM chat apps via MCP.
Example prompt: Summarize https://www.youtube.com/watch?v=uB9yZenVLzg
Install
Requires uv. Add this to your MCP client's config — works for any MCP-compatible app (Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, Zed, …):
{
"mcpServers": {
"youtube-transcript": {
"command": "uvx",
"args": ["youtube-transcript-mcp-server"]
}
}
}
Equivalent one-liner if your client wants a single command:
uvx youtube-transcript-mcp-server
That's it — uvx fetches the package from PyPI on first run and caches it. Restart the client after editing its config.
Tool
transcribe(youtube_video_url: str) -> str— fetches the transcript (en/de/es/fr/ru) and prepends an ad-removal instruction for the LLM.
Develop locally
git clone https://github.com/SeanPedersen/youtube-transcript-mcp
cd youtube-transcript-mcp
uv venv && uv pip install -r pyproject.toml && source .venv/bin/activate
python mcp_server.py
Point your MCP client at the local checkout instead of PyPI:
{
"command": "uv",
"args": [
"run", "--with", "fastmcp", "--with", "youtube-transcript-api",
"fastmcp", "run", "/absolute/path/to/youtube-transcript-mcp/mcp_server.py"
]
}
Release
- Bump
versioninpyproject.toml. - Copy
.env.exampleto.envand add your PyPI token. ./scripts/release.sh— builds and publishes to PyPI.
Metadata
Release files for youtube-transcript-mcp-server 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| youtube_transcript_mcp_server-0.1.0.tar.gz | 2.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| youtube_transcript_mcp_server-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.2 kB
Release files / youtube_transcript_mcp_server-0.1.0.tar.gz
| Download URL | youtube_transcript_mcp_server-0.1.0.tar.gz |
|---|---|
| Size | 2.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
83ab1295919cb849f57273a93e64bc9ee16b176827b4af98ce5189620afb894b
|
|
BLAKE2b-256 checksum How to use checksums |
f78267c7c4dfcb4bd72873b6bfda5e4560fe1102ba2e5d74fd98552d61057313
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|
Release files / youtube_transcript_mcp_server-0.1.0-py3-none-any.whl
| Download URL | youtube_transcript_mcp_server-0.1.0-py3-none-any.whl |
|---|---|
| Size | 3.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0b7723a8ac4bfd52aee653800ca86db085de50425a88c3524426fff83309f9e1
|
|
BLAKE2b-256 checksum How to use checksums |
6d486d4786b7e834b3c5c00cf54da51e84d2c88f5f14e241d6874172c95cd8c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|