README.md•3.01 kB
# SRT Translation MCP Server
A Model Context Protocol (MCP) server for processing and translating SRT subtitle files with intelligent conversation detection and context preservation.
## Features
- **SRT File Processing**: Parse, validate, and manipulate SRT subtitle files
- **Large File Support**: Intelligent chunking for processing large SRT files
- **Conversation Detection**: Context-aware analysis for better translation quality
- **Style Tag Preservation**: Maintain HTML-style formatting during translation
- **Timing Synchronization**: Preserve precise timing information
- **MCP Integration**: Standardized interface for AI assistant integration
## Installation
```bash
# Install dependencies
npm install
# Build the project
npm run build
# Run tests
npm test
```
## Usage
### As an MCP Server
```bash
# Start the MCP server
npm start
# Or run directly with npx
npx srt-translation-mcp-server
```
### Available MCP Tools
- `parse_srt`: Parse and validate SRT file content
- `write_srt`: Write SRT file from parsed data
- `detect_conversations`: Detect conversation boundaries in SRT content
- `translate_srt`: Translate SRT content with context preservation
- `translate_chunk`: Translate a specific chunk of SRT content
### Example Usage
```typescript
// Parse SRT file
const result = await mcpClient.callTool('parse_srt', {
content: srtFileContent
});
// Detect conversations
const conversations = await mcpClient.callTool('detect_conversations', {
content: srtFileContent
});
// Translate SRT file
const translated = await mcpClient.callTool('translate_srt', {
content: srtFileContent,
targetLanguage: 'es',
preserveFormatting: true
});
```
## Development
```bash
# Development mode with hot reload
npm run dev
# Run tests in watch mode
npm run test:watch
# Lint code
npm run lint
# Fix linting issues
npm run lint:fix
```
## Architecture
### Core Components
- **SRT Parser**: Handles SRT file parsing and validation
- **Time Parser**: Manages SRT time format operations
- **Style Tags**: Preserves HTML-style formatting
- **Conversation Detector**: Identifies conversation boundaries
- **Translation Service**: Context-aware translation processing
- **MCP Server**: Protocol implementation for AI integration
### Key Features
1. **Intelligent Chunking**: Breaks large files at natural conversation boundaries
2. **Context Preservation**: Maintains conversation context for better translations
3. **Style Tag Support**: Preserves HTML formatting during translation
4. **Timing Validation**: Ensures timing sequences are valid and ascending
5. **Error Handling**: Comprehensive error reporting and validation
## Testing
The project includes comprehensive tests for all core functionality:
- Time parsing and formatting
- SRT file parsing and validation
- Style tag detection and preservation
- Conversation detection algorithms
- Translation workflow integration
Run tests with:
```bash
npm test
```
## License
MIT License - see LICENSE file for details.