
Security News
/Research
Wallet-Draining npm Package Impersonates Nodemailer to Hijack Crypto Transactions
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
@mediacat/mcp
Advanced tools
A Model Context Protocol (MCP) server for MediaCAT's subtitle generation workflow with XL8.ai integration. Supports local file processing, real-time SSE updates, and dynamic language detection.
A Model Context Protocol (MCP) server for MediaCAT's subtitle generation workflow with XL8.ai integration. Supports local file processing, real-time SSE updates, and dynamic language detection.
run_sync
function consolidates entire subtitle generation processnpm install mediacat-mcp
# Start the server
mediacat-mcp
# With environment variables
XL8_API_KEY=your_api_key mediacat-mcp
import { MediaCatMCPServer } from 'mediacat-mcp';
const server = new MediaCatMCPServer();
await server.start();
run_sync
Generates subtitles for video files using XL8.ai.
Parameters:
fileData
(string, optional): Base64 encoded file data (for remote servers)filePath
(string, optional): Local file path (for local servers - more efficient)filename
(string, required): Name of the video filemimeType
(string, required): MIME type (e.g., 'video/mp4')language
(string, required): Target language code (e.g., 'en-US', 'ko-KR')format
(string, required): Output format ('srt', 'vtt', 'ttml', 'json', 'xl8.json')apiKey
(string, optional): XL8.ai API key (if not configured on server)transcriptS3Key
(string, optional): S3 key of transcript file for referenceNote: Provide exactly one of fileData
OR filePath
.
Returns:
{
"success": true,
"requestId": "xl8_request_id",
"message": "Sync request initiated",
"tracking": {
"sseChannel": "/events/xl8_request_id",
"events": ["sync_progress", "sync_completed", "sync_failed"]
}
}
Connect to /events/{requestId}
to receive real-time updates:
{requestId}_sync_progress
: Processing progress updates{requestId}_sync_completed
: Subtitle generation completed with content{requestId}_sync_failed
: Error occurred during processingPOST /mcp
- MCP JSON-RPC endpointPOST /api/run-sync
- Direct HTTP API for run_syncGET /api/sync-status/:requestId
- Get sync statusGET /api/info
- Server info and capabilitiesGET /health
- Health checkGET /events/:requestId
- SSE endpoint for progress updatesXL8_API_KEY
- XL8.ai API key (optional, enables keyless client requests)PORT
- Server port (default: 3000)DOCKER_ENV
- Set to disable MCP stdio transport in containers// Connect to MCP server
const response = await fetch('http://localhost:3000/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
jsonrpc: '2.0',
id: 1,
method: 'tools/call',
params: {
name: 'run_sync',
arguments: {
filePath: './video.mp4', // Local file (efficient)
filename: 'video.mp4',
mimeType: 'video/mp4',
language: 'en-US',
format: 'srt'
}
}
})
});
const result = await response.json();
const requestId = JSON.parse(result.result.content[0].text).requestId;
// Connect to SSE for progress updates
const eventSource = new EventSource(`http://localhost:3000/events/${requestId}`);
eventSource.addEventListener(`${requestId}_sync_completed`, (event) => {
const data = JSON.parse(event.data);
console.log('Subtitles:', data.data.content);
});
// For remote servers using base64 upload
const videoBuffer = fs.readFileSync('video.mp4');
const response = await fetch('http://localhost:3000/api/run-sync', {
method: 'POST',
headers: {
'Content-Type': 'application/octet-stream',
'X-Filename': 'video.mp4',
'X-Language': 'en-US',
'X-Format': 'srt',
'X-Api-Key': 'your_api_key'
},
body: videoBuffer
});
The server automatically fetches supported languages from XL8.ai API. Common languages include:
MIT
FAQs
A Model Context Protocol (MCP) server for MediaCAT's subtitle generation workflow with XL8.ai integration. Supports local file processing, real-time SSE updates, and dynamic language detection.
The npm package @mediacat/mcp receives a total of 1 weekly downloads. As such, @mediacat/mcp popularity was classified as not popular.
We found that @mediacat/mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.