Skip to main content
Glama

SRT Translation MCP Server

by omd0
METADATA_DETECTION_IMPROVEMENTS.md3.5 kB
# MCP SRT Translation - Metadata Detection Improvements ## Problem Solved The original `detect_conversations` function was returning actual text content along with chunk information, which overwhelmed AI systems with too much information. This made it difficult for AI to make informed translation decisions. ## Solution Implemented The `detect_conversations` function now returns **metadata only** - no actual text content. This provides AI with essential information for translation decision-making without overwhelming it with text. ## What the Function Now Returns ### Chunk Metadata (per chunk): - **ID**: Unique chunk identifier - **Time Range**: Start and end timestamps - **Duration**: Chunk duration in milliseconds - **Subtitle Count**: Number of subtitles in chunk - **Speaker**: Detected speaker (if any) - **Language Info**: - Primary language detection (ar/en) - Confidence score - Language indicators (script type, numbers, punctuation) - **Content Type**: dialogue, narration, question, general - **Complexity**: low, medium, high - **Translation Priority**: low, medium, high - **Topic Keywords**: First 3 words for context (not full text) ### File-Level Summary: - **Total Chunks**: Number of conversation chunks detected - **Total Duration**: Complete file duration - **Language Distribution**: Count of chunks by language - **Speaker Distribution**: Count of chunks by speaker ## Benefits for AI Translation 1. **Informed Decision Making**: AI can assess complexity and priority before translation 2. **Language Detection**: AI knows which chunks are Arabic vs English 3. **Context Awareness**: Topic keywords provide translation context 4. **Efficiency**: No need to process full text for chunk analysis 5. **Scalability**: Works with large files without overwhelming AI ## Example Output ```json { "chunkCount": 59, "totalDuration": 7525000, "languageDistribution": { "ar": 59 }, "speakerDistribution": { "unknown": 59 }, "chunks": [ { "id": "chunk-0", "startTime": "0:0:2", "endTime": "0:0:13", "duration": 11000, "subtitleCount": 2, "speaker": null, "languageInfo": { "primary": "ar", "confidence": 0.8, "indicators": ["arabic_script"] }, "contentType": "general", "complexity": "medium", "translationPriority": "low", "topicKeywords": [] } ] } ``` ## Technical Implementation ### Key Methods Added: - `extractTopicKeywords()`: Extracts first 3 words only - `detectLanguageInfo()`: Heuristic language detection - `detectContentType()`: Classifies content type - `assessComplexity()`: Evaluates translation complexity - `assessTranslationPriority()`: Ranks translation priority - `analyzeLanguageDistribution()`: File-level language analysis - `analyzeSpeakerDistribution()`: File-level speaker analysis ### Language Detection Logic: - Arabic script detection: `[\u0600-\u06FF]` - Latin script detection: `[A-Za-z]` - Confidence scoring based on script indicators - Support for mixed-language content ## Usage The function is now optimized for AI translation workflows: 1. **Detection Phase**: Use `detect_conversations` to get metadata 2. **Analysis Phase**: AI analyzes metadata to plan translation strategy 3. **Translation Phase**: Use `translate_srt` or `translate_chunk` for actual translation This separation of concerns allows AI to make smarter, more efficient translation decisions while maintaining high translation quality.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/omd0/srt-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server