transcribe-agent
by obyrned
README.md
# Transcribe Agent
A Docker-hosted web application and MCP service that turns YouTube links or uploaded audio into Markdown, plain-text, and Word transcripts.
The service uses existing YouTube captions first and OpenRouter speech-to-text when captions are unavailable. Temporary audio is deleted after processing, and completed jobs expire automatically.
## Pull the image
```bash
docker pull obyrned/transcribe-agent:latest
```
## Run with Docker
```bash
mkdir -p data
docker run --rm \
-p 8765:8765 \
-v "$PWD/data:/data" \
-e OPENROUTER_API_KEY="YOUR_KEY" \
obyrned/transcribe-agent:latest
```
Open `http://localhost:8765/`.
The server-side key is optional. If it is omitted, users can provide an OpenRouter key for an individual job. Submitted keys are never written to job files or exported documents.
## Docker Compose
```bash
cp .env.example .env
# Add your key to .env if you want a server-side fallback.
docker compose up --build
```
## MCP
The image includes a stdio MCP server:
```bash
docker exec -i transcribe-agent python /app/mcp_server.py
```
The MCP tool requires the caller's OpenRouter key and does not store it.
## Development
```bash
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements-dev.txt
pytest -q
```
Do not commit `.env`, browser cookies, generated transcripts, or API keys. Review the retention and network settings before exposing the service outside a trusted network.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues