DeepSRT MCP Server
OfficialServidor MCP DeepSRT
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona la funcionalidad de resumen de videos de YouTube a través de la integración con la API de DeepSRT.
Características
Generar resúmenes para vídeos de YouTube
Admite modos de resumen narrativo y con viñetas
Compatibilidad con varios idiomas (predeterminado: zh-tw)
Integración perfecta con entornos habilitados para MCP
Related MCP server: youtube-mcp
Cómo funciona
Almacenamiento en caché de contenido
Los videos primero deben abrirse a través de DeepSRT para garantizar que el contenido esté almacenado en caché en el servicio.
Esta visualización inicial activa el proceso de almacenamiento en caché en el servicio DeepSRT
Recuperación del resumen de MCP
Al solicitar resúmenes a través de MCP, el contenido se sirve desde las ubicaciones de borde de CDN de DeepSRT
Esto garantiza una entrega rápida y eficiente de resúmenes.
Contenido prealmacenado en caché
Es posible que algunos videos ya estén almacenados en caché en el sistema debido a solicitudes de usuarios anteriores.
Si bien es posible obtener resúmenes de estos videos almacenados previamente en caché, no se garantiza la disponibilidad.
Para obtener mejores resultados, asegúrese de que los videos se abran primero a través de DeepSRT
%%{init: {'theme': 'dark', 'themeVariables': { 'primaryColor': '#2496ED', 'secondaryColor': '#38B2AC', 'tertiaryColor': '#1F2937', 'mainBkg': '#111827', 'textColor': '#E5E7EB', 'lineColor': '#4B5563', 'noteTextColor': '#E5E7EB'}}}%%
sequenceDiagram
participant User
participant DeepSRT
participant Cache as DeepSRT Cache/CDN
participant MCP as MCP Client
Note over User,MCP: Step 1: Initial Caching
User->>DeepSRT: Open video through DeepSRT
DeepSRT->>Cache: Process and cache content
Cache-->>DeepSRT: Confirm cache storage
DeepSRT-->>User: Display video/content
Note over User,MCP: Step 2: MCP Summary Retrieval
MCP->>Cache: Request summary via MCP
Cache-->>MCP: Return cached summary from edge location
Note over User,MCP: Alternative: Pre-cached Content
rect rgba(31, 41, 55, 0.6)
MCP->>Cache: Request summary for pre-cached video
alt Content exists in cache
Cache-->>MCP: Return cached summary
else Content not cached
Cache-->>MCP: Cache miss
end
endInstalación
Instalación para Claude Desktop
Primero, construya el servidor:
npm install
npm run buildAgregue la configuración del servidor a su archivo de configuración de Claude Desktop:
En macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonEn Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"deepsrt-mcp": {
"command": "node",
"args": [
"/path/to/deepsrt-mcp/build/index.js"
]
}
}
}Instalación para Cline
Simplemente pídale a Cline que lo instale en el chat:
"Hola, instala este servidor MCP para mí desde https://github.com/DeepSRT/deepsrt-mcp "
Cline instalará automáticamente deepsrt-mcp para usted y actualizará su cline_mcp_settings.json .
Uso
El servidor proporciona la siguiente herramienta:
obtener_resumen
Obtiene un resumen de un vídeo de YouTube.
Parámetros:
videoId(obligatorio): ID de video de YouTubelang(opcional): código de idioma (por ejemplo, zh-tw); el valor predeterminado es zh-twmode(opcional): modo resumen ("narrativo" o "viñetas"): el valor predeterminado es narrativo
Ejemplo de uso
Usando Claude Desktop:
// The MCP tool will fetch the video summary
const result = await mcp.use_tool("deepsrt-mcp", "get_summary", {
videoId: "dQw4w9WgXcQ",
lang: "zh-tw",
mode: "narrative"
});Usando Cline:
const result = await mcp.use_tool("deepsrt", "get_summary", {
videoId: "dQw4w9WgXcQ",
lang: "zh-tw",
mode: "bullet"
});Desarrollo
Instalar dependencias:
npm installIniciar servidor de desarrollo:
npm run devConstruir para producción:
npm run buildManifestación
Preguntas frecuentes
P: Me aparece el error 404 , ¿por qué?
R: Esto se debe a que el resumen del video no está almacenado en caché en la ubicación del borde de la CDN; debe abrir este video usando la extensión de Chrome DeepSRT para tenerlo almacenado en caché en la red CDN antes de poder obtener ese resumen usando MCP.
Puedes verificar el estado del caché usando cURL de esta manera
curl -s 'https://worker.deepsrt.com/transcript' \
-i --data '{"arg":"v=VafNvIcOs5w","action":"summarize","lang":"zh-tw","mode":"narrative"}' | grep -i "^cache-status"
cache-status: HITSi ve cache-status: HIT el contenido está almacenado en caché en la ubicación del borde de CDN y su servidor MCP no debería recibir 404 .
Available Tools
2 toolsget_summaryC
Get summary for a YouTube video
| Name | Required | Description | Default |
|---|---|---|---|
| videoId | Yes | YouTube video ID | |
| lang | No | Target language (default: zh-tw) | zh-tw |
| mode | No | Summary mode (default: narrative) | narrative |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but doesn't mention any behavioral traits such as rate limits, authentication needs, error handling, or what the summary output looks like (e.g., format, length). This leaves significant gaps for a tool that likely interacts with external APIs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't address key contextual aspects like the summary format, potential errors, or how it differs from the sibling tool. For a tool with external dependencies (YouTube API), more information on behavior and constraints is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (videoId, lang, mode) with descriptions and defaults. The description adds no additional meaning beyond what the schema provides, such as explaining what 'narrative' vs 'bullet' modes entail or how the lang parameter affects the summary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get summary') and resource ('for a YouTube video'), making the purpose immediately understandable. It distinguishes from the sibling tool 'get_transcript' by focusing on summaries rather than transcripts, though it doesn't explicitly mention this distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'get_transcript'. The description lacks context about prerequisites, limitations, or scenarios where this tool is preferred, leaving the agent with no usage direction beyond the basic purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transcriptB
Get transcript for a YouTube video with timestamps
| Name | Required | Description | Default |
|---|---|---|---|
| videoId | Yes | YouTube video ID or full YouTube URL | |
| lang | No | Preferred language code for captions (default: en) | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'with timestamps,' which adds some context about the output format, but fails to address critical aspects like rate limits, authentication needs, error handling, or whether the operation is read-only or has side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 parameters, no annotations, no output schema), the description is minimally adequate. It covers the basic purpose and output feature (timestamps) but lacks details on behavioral traits, usage guidelines, and output structure, leaving gaps for the agent to navigate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting both parameters. The description adds no additional parameter semantics beyond what the schema provides, such as examples or constraints. With high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get transcript for a YouTube video with timestamps.' It specifies the verb ('Get'), resource ('transcript'), and key feature ('with timestamps'), but doesn't explicitly differentiate from the sibling tool 'get_summary' beyond the resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_summary.' It lacks context about use cases, prerequisites, or exclusions, leaving the agent to infer usage based solely on the tool name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v1.0.0- Added
get_summary - Added
get_transcript
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one retrieves a summary, the other retrieves a transcript with timestamps. There is no overlap in functionality, making it easy for an agent to select the correct tool based on the need for either a concise overview or detailed textual content.
Both tools follow a consistent verb_noun pattern (get_summary, get_transcript), using the same verb 'get' and descriptive nouns. This uniformity makes the tool set predictable and easy to understand.
With only two tools, the server feels thin for a domain like YouTube video processing. While the tools cover basic retrieval, the scope is limited, lacking operations such as search, analysis, or management of video content, which could be expected from a more comprehensive server.
The tool set is severely incomplete for a YouTube-focused server. It only provides retrieval functions (summary and transcript), missing essential operations like video search, metadata fetching, comment handling, or any CRUD capabilities, leaving significant gaps in coverage for typical agent workflows.
Maintenance
Related MCP Connectors
An MCP server that gives any LLM or agent clean YouTube transcripts on demand: a single video, a whole channel, or a playlist, plus AI cleanup of auto-generated captions. API-key auth, credit-based, same backend as the public v1 API. Get a free API key with 25 free credits at youtubetranscriptdownload.com/account.
MCP server for RiverScript, an AI transcription platform - fetches transcripts shared via a link.
An MCP server that integrates with Discord to provide AI-powered features.
MCP server for OpenAI Sora AI video generation
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables interaction with the YouTube Data API, allowing users to search videos, get video and channel details, analyze trends, and fetch video transcripts.-
- AlicenseAqualityCmaintenanceAn MCP server that enables the extraction of transcripts and detailed metadata from YouTube videos. It allows users to retrieve video information like titles and descriptions, as well as transcripts with optional timestamps and language selection.2MIT
- AlicenseAqualityAmaintenanceMCP server that fetches YouTube video transcripts and optionally summarizes them. Supports multiple transcript formats (text, JSON, SRT, WebVTT), multi-language retrieval, and flexible YouTube URL parsing.66MIT
- AlicenseAqualityDmaintenanceA powerful MCP server for summarizing YouTube videos with transcript fetching, intelligent summarization, key point extraction, and metadata retrieval.4MIT