MCP server for Microsoft Edge TTS — Remotion-optimised with word-timing JSON
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"saitrogen-edge-tts-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# edge-tts MCP Server Wraps [rany2/edge-tts](https://github.com/rany2/edge-tts) as an MCP server. No API key. No Windows. No Edge browser. Just Microsoft's TTS — free. Built for **Remotion** video production: outputs MP3 + word-timing JSON. --- ## Install & Use The easiest way to use this in your MCP clients (like Cursor or VS Code) is via `uvx`: ```json { "mcpServers": { "edge-tts": { "command": "uvx", "args": [ "--from", "saitrogen-edge-tts-mcp", "edge-tts-mcp" ] } } } ``` Or you can install it using pip: ```bash pip install saitrogen-edge-tts-mcp ``` --- ## Tools ### `edgetts_synthesize` Converts text → `.mp3` + optional word-timing `.json` (Remotion-ready). | Param | Default | Description | |---|---|---| | `text` | required | Text or SSML to speak | | `output_path` | required | Path ending in `.mp3` | | `voice` | `en-US-AriaNeural` | Voice name (see list_voices) | | `rate` | `+0%` | Speed: `+20%` faster, `-10%` slower | | `volume` | `+0%` | Volume adjustment | | `pitch` | `+0Hz` | Pitch: `+50Hz`, `-20Hz` | | `save_timings` | `true` | Save `<output>.mp3.json` with word timings | **Word timing JSON** (saved at `voiceover.mp3.json`): ```json [ { "word": "Hello", "startMs": 0, "durationMs": 312, "endMs": 312 }, { "word": "Remotion","startMs": 375, "durationMs": 480, "endMs": 855 } ] ``` ### `edgetts_list_voices` Lists all available voices with optional locale/gender filter. | Param | Example | |---|---| | `locale` | `en-US`, `hi-IN`, `ta` | | `gender` | `Male`, `Female` | --- ## Remotion Usage ```tsx import timings from './public/voiceover.mp3.json'; import { Audio, Sequence, staticFile, useVideoConfig } from 'remotion'; export const Scene = () => { const { fps } = useVideoConfig(); return ( <> <Audio src={staticFile('voiceover.mp3')} /> {timings.map((w, i) => ( <Sequence key={i} from={Math.floor((w.startMs / 1000) * fps)} d…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.