Skip to main content
Glama

transcript-mcp-claude

MCP Server All-in-One สำหรับ Transcription - รวม YouTube, Audio, Video + Translation, Summarization, Chapters, Subtitles, Batch Processing

Features

19 MCP Tools ใน 8 หมวด:

หมวด

Tools

คำอธิบาย

YouTube (3)

youtube_to_text, youtube_video_info, youtube_list_captions

ดึง transcript และข้อมูลจาก YouTube

Audio (2)

audio_to_text, audio_info

แปลงไฟล์เสียงเป็นข้อความด้วย Whisper

Video (2)

vdo_to_text, vdo_info

แปลงไฟล์วิดีโอเป็นข้อความด้วย ffmpeg + Whisper

Translation (2)

translate_transcript, create_multilingual_subtitles

เตรียมข้อมูลสำหรับแปลภาษา

Summarization (3)

summarize_transcript, extract_key_moments, generate_blog_post

สรุปเนื้อหา, ดึง key moments, สร้าง blog post

Chapters (2)

generate_chapters, format_chapters_youtube

สร้าง chapter markers + YouTube format

Subtitles (3)

export_subtitles, convert_subtitle_format, adjust_subtitle_timing

Export SRT/VTT/ASS, แปลง format, ปรับ timing

Batch (2)

batch_transcribe, transcribe_folder

ประมวลผลหลายไฟล์พร้อมกัน

Related MCP server: YouTube Transcript Fetcher (YTT)

Tech Stack

  • Language: TypeScript (strict mode, ES2022)

  • Runtime: Node.js 22 + Python 3.12

  • MCP SDK: @modelcontextprotocol/sdk v1.0.0

  • Transport: Streamable HTTP (port 3013) + Stdio

  • STT Engine: faster-whisper (CTranslate2, CPU, int8)

  • YouTube: Innertube API + yt-dlp fallback

  • Video/Audio: ffmpeg + ffprobe

  • Build: Multi-stage Docker (node:22-slim → python:3.12-slim)

Quick Start

Docker (แนะนำ)

# Build and start
docker compose up -d --build

# ตรวจสอบ
curl http://localhost:3013/health

Local Development

# Install dependencies
npm install

# Build TypeScript
npm run build

# Start HTTP server
npm start

# Start Stdio server
npm run start:stdio

# Development mode (watch + auto-compile)
npm run dev

Environment Variables

Variable

Default

คำอธิบาย

PORT

3013

Server port

HOST

0.0.0.0

Server host

DEFAULT_LANG

th

ภาษาเริ่มต้น

WHISPER_MODEL

tiny

Whisper model: tiny, base, small

WHISPER_COMPUTE_TYPE

int8

Compute type: int8, float16, float32

MAX_AUDIO_DURATION

600

Audio max duration (วินาที)

MAX_VDO_DURATION

1800

Video max duration (วินาที)

OMP_NUM_THREADS

2

CPU threads สำหรับ inference

MCP Configuration

เพิ่มใน .mcp.json:

{
  "mcpServers": {
    "transcript": {
      "url": "http://localhost:3013/mcp"
    }
  }
}

Usage Examples

YouTube Transcript

ดึง transcript จาก YouTube video นี้: https://youtube.com/watch?v=xxx

Audio Transcription

แปลงไฟล์เสียง /app/data/audio.mp3 เป็นข้อความ

Video Transcription

แปลงไฟล์วิดีโอ /app/data/video.mp4 เป็นข้อความ

Export Subtitles

สร้างไฟล์ SRT จาก transcript ที่ได้

Generate Chapters

สร้าง chapter markers จาก transcript สำหรับใส่ YouTube description

Batch Processing

Transcribe ไฟล์ทั้งหมดใน folder /app/data/

Supported Formats

  • Audio: MP3, WAV, M4A, OGG, FLAC, WebM, WMA, AAC, Opus

  • Video: MP4, MKV, AVI, MOV, WebM, FLV, WMV, TS, M4V

  • Subtitles: SRT, VTT, ASS, TXT, JSON

Architecture

Client (Claude) → MCP Protocol → transcript-mcp-claude (port 3013)
                                    ├── YouTube (Innertube API / yt-dlp)
                                    ├── Audio (faster-whisper)
                                    ├── Video (ffmpeg → faster-whisper)
                                    ├── Translation (data structuring)
                                    ├── Summarization (data structuring)
                                    ├── Chapters (timestamp analysis)
                                    ├── Subtitles (SRT/VTT/ASS export)
                                    └── Batch (multi-file orchestration)

Port Convention

Port

Project

3010

youtube-mcp-claude

3011

audio-mcp-claude

3012

vdo-mcp-claude

3013

transcript-mcp-claude (All-in-One)

Related MCP Connectors

Related MCP Servers