About Mcp Video2text
Mcp Video2text converts online video into text for users who want to read video content quickly. It uses a Whisper model, with setup options for MLX or C++.
Key features
- 01Convert online video to text
- 02Whisper-based transcription
- 03MLX or C++ installation options
- 04MCP client configuration example
Use cases
- 01Read online video content as text
- 02Use transcription output for quick review
MCP support
It runs as an MCP server configured through an MCP client's command field, exposing online video-to-text conversion. The README also includes an example custom MCP client.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEmcp-video2text
Convert online video to text, read it quickly

Usage
## require
$ curl -LsSf https://astral.sh/uv/install.sh | sh # install uv package manager
$ brew install ffmpeg # or `sudo apt install ffmpeg` for linux
## install
$ uv pip install mcp-video2text[mlx] # recommend with mlx for silicon machine
$ uv pip install mcp-video2text[cpp]
for mcp client, pass uv run mpc-video2text to command field.
{
"mcpServers": {
"mcp-video2text": {
"command": "uv",
"args": ["run", "mcp-video2text"],
}
}
}
The first run will download the Whisper model and may take a few minutes.
It's recommended to update the timeout settings in your client.
or your can custom your own client, view example test_mcp_client.py
import asyncio
import os
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def client():
server_params = StdioServerParameters(
command="uv", args=["run", "mcp-video2text"], env=os.environ
)
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
print(await session.list_tools())
result = await session.call_tool(
"video2text", {"url": "https://www.bilibili.com/video/BV1gdERzuEYB/"}
)
print(result.content[0].text)
if __name__ == "__main__":
asyncio.run(client())
Thanks
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.