Name | ytt-mcp JSON |
Version |
0.0.6
JSON |
| download |
home_page | None |
Summary | MCP Server to extract transcript from a YouTube video |
upload_time | 2025-07-13 14:25:19 |
maintainer | None |
docs_url | None |
author | Deepak Jois |
requires_python | >=3.10 |
license | MIT |
keywords |
mcp
transcript
youtube
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# ytt-mcp: YouTube Transcript MCP Server
MCP Server to fetch transcripts for YouTube videos.
## Installing and Running
The most convenient way to install and run is to use [uv](https://docs.astral.sh/uv/) and then invoke the package using `uvx`
## Using MCP Inspector (for development/debugging/testing only)
```
uv run fastmcp dev ytt_mcp.py
```
This will generate a localhost URL that can be used to examine and test out the server.
<img width="1800" alt="image" src="https://github.com/user-attachments/assets/4eba6d52-0542-4734-bd76-9be1752bd82d" />
## Claude Desktop
Go to _Settings_ → _Developer_, and then click on _Edit Config_. This will open the claude-desktop-config.json file in your default editor. Make the following addition
```
{
"mcpServers": {
…<rest of the config>…
"ytt-mcp": {
"command": "uvx",
"args": ["ytt-mcp"]
}
}
}
```
Relaunch Claude config and try out the server as shown in the screenshot below
<img width="1621" alt="image" src="https://github.com/user-attachments/assets/179e8ee0-524e-4735-a3bc-ff4f8fdb9d08" />
## Raycast
If you are using Raycast, you can install the MCP server by invoking the _Install Server_ command from the MCP extension.
<img width="754" alt="image" src="https://github.com/user-attachments/assets/6488c090-6dd5-4926-b1b5-2ae35bb349bc" />
After that you can refer to the MCP server as `@youtube-transcript` and interact with it. You can also use it in a Raycast AI Command with a prompt. For example, here is a prompt I use to extract and summarize a YouTube URL in the clipboard
```
@youtube-transcript fetch the Youtube transcript of the video: {clipboard | raw}
Comprehensively summarize the transcript with the following format:
"""
### Key Takeaways
- <EXACTLY three bullet points with the key takeaways, keep the bullet points as short as possible>
"""
### Theme Wise Breakdown
<divide the transcript into thematic sections and summarize each section comprehensively. reuse any existing section delimiters the article already has. If not add your own. keep the content of the breakdown in the same order as it appears in the webpage text.>
Some rules to follow precisely:
- ALWAYS capture the perspective and POV of the author
- NEVER come up with additional information
```
See video demo below
https://github.com/user-attachments/assets/e6530768-3483-4cb9-988a-7ec7a999d505
Raw data
{
"_id": null,
"home_page": null,
"name": "ytt-mcp",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "Deepak Jois <deepak.jois@gmail.com>",
"keywords": "mcp, transcript, youtube",
"author": "Deepak Jois",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/dc/c6/acd75937534a45ecfd50486f72a442513a24ebe4ca5bec523f0684694478/ytt_mcp-0.0.6.tar.gz",
"platform": null,
"description": "# ytt-mcp: YouTube Transcript MCP Server\n\nMCP Server to fetch transcripts for YouTube videos.\n\n## Installing and Running\nThe most convenient way to install and run is to use [uv](https://docs.astral.sh/uv/) and then invoke the package using `uvx`\n\n## Using MCP Inspector (for development/debugging/testing only)\n```\nuv run fastmcp dev ytt_mcp.py\n```\n\nThis will generate a localhost URL that can be used to examine and test out the server.\n\n<img width=\"1800\" alt=\"image\" src=\"https://github.com/user-attachments/assets/4eba6d52-0542-4734-bd76-9be1752bd82d\" />\n\n\n\n## Claude Desktop\nGo to _Settings_ \u2192 _Developer_, and then click on _Edit Config_. This will open the claude-desktop-config.json file in your default editor. Make the following addition\n\n```\n{\n \"mcpServers\": {\n \u2026<rest of the config>\u2026\n \"ytt-mcp\": {\n \"command\": \"uvx\",\n \"args\": [\"ytt-mcp\"]\n }\n }\n}\n```\n\nRelaunch Claude config and try out the server as shown in the screenshot below\n\n<img width=\"1621\" alt=\"image\" src=\"https://github.com/user-attachments/assets/179e8ee0-524e-4735-a3bc-ff4f8fdb9d08\" />\n\n\n## Raycast\nIf you are using Raycast, you can install the MCP server by invoking the _Install Server_ command from the MCP extension.\n\n<img width=\"754\" alt=\"image\" src=\"https://github.com/user-attachments/assets/6488c090-6dd5-4926-b1b5-2ae35bb349bc\" />\n\nAfter that you can refer to the MCP server as `@youtube-transcript` and interact with it. You can also use it in a Raycast AI Command with a prompt. For example, here is a prompt I use to extract and summarize a YouTube URL in the clipboard\n\n```\n@youtube-transcript fetch the Youtube transcript of the video: {clipboard | raw}\n\nComprehensively summarize the transcript with the following format:\n\"\"\"\n### Key Takeaways\n\n- <EXACTLY three bullet points with the key takeaways, keep the bullet points as short as possible>\n\"\"\"\n\n### Theme Wise Breakdown\n<divide the transcript into thematic sections and summarize each section comprehensively. reuse any existing section delimiters the article already has. If not add your own. keep the content of the breakdown in the same order as it appears in the webpage text.>\n\nSome rules to follow precisely:\n- ALWAYS capture the perspective and POV of the author\n- NEVER come up with additional information\n```\n\nSee video demo below\n\nhttps://github.com/user-attachments/assets/e6530768-3483-4cb9-988a-7ec7a999d505\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "MCP Server to extract transcript from a YouTube video",
"version": "0.0.6",
"project_urls": {
"Issues": "https://github.com/deepakjois/ytt-mcp/issues",
"Repository": "https://github.com/deepakjois/ytt-mcp"
},
"split_keywords": [
"mcp",
" transcript",
" youtube"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "cd20f5570fd17867b0e915b7b79a354d6ad00e44a5d761f892f6c663203980fc",
"md5": "b1b8995f04941013c32b55faff55d9c3",
"sha256": "9769e0ba85ee70577bd98872c1ddb75a43c61a75c57591ca29d70f71a8acedbc"
},
"downloads": -1,
"filename": "ytt_mcp-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b1b8995f04941013c32b55faff55d9c3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 4816,
"upload_time": "2025-07-13T14:25:18",
"upload_time_iso_8601": "2025-07-13T14:25:18.032604Z",
"url": "https://files.pythonhosted.org/packages/cd/20/f5570fd17867b0e915b7b79a354d6ad00e44a5d761f892f6c663203980fc/ytt_mcp-0.0.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "dcc6acd75937534a45ecfd50486f72a442513a24ebe4ca5bec523f0684694478",
"md5": "ebffae0ffb6cd1e947d1f7a2e5af2859",
"sha256": "6c3f705a4282a230da4f780a1ca080d2cceb88a99794fd6f7f3437e62278d4fe"
},
"downloads": -1,
"filename": "ytt_mcp-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "ebffae0ffb6cd1e947d1f7a2e5af2859",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 66483,
"upload_time": "2025-07-13T14:25:19",
"upload_time_iso_8601": "2025-07-13T14:25:19.467460Z",
"url": "https://files.pythonhosted.org/packages/dc/c6/acd75937534a45ecfd50486f72a442513a24ebe4ca5bec523f0684694478/ytt_mcp-0.0.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-13 14:25:19",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "deepakjois",
"github_project": "ytt-mcp",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "ytt-mcp"
}