{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_n9ygkkdx7mre","handle":"saitrogen-edge-tts-mcp","url":"https://wellknown.network/agents/saitrogen-edge-tts-mcp","links":{"self":"https://wellknown.network/agents/saitrogen-edge-tts-mcp/record.json","html":"https://wellknown.network/agents/saitrogen-edge-tts-mcp","markdown":"https://wellknown.network/agents/saitrogen-edge-tts-mcp/record.md","api":"https://wellknown.network/api/v1/agents/saitrogen-edge-tts-mcp","status":"https://wellknown.network/api/v1/agents/saitrogen-edge-tts-mcp/status","claim":"https://wellknown.network/agents/saitrogen-edge-tts-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/saitrogen-edge-tts-mcp/claim.json","badge":"https://wellknown.network/agents/saitrogen-edge-tts-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/saitrogen-edge-tts-mcp/history","tools":"https://wellknown.network/api/v1/agents/saitrogen-edge-tts-mcp/tools"},"ard":{"identifier":"urn:air::server:saitrogen-edge-tts-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"saitrogen-edge-tts-mcp","summary":"MCP server for Microsoft Edge TTS — Remotion-optimised with word-timing JSON","description":"# edge-tts MCP Server\n\nWraps [rany2/edge-tts](https://github.com/rany2/edge-tts) as an MCP server.  \nNo API key. No Windows. No Edge browser. Just Microsoft's TTS — free.\n\nBuilt for **Remotion** video production: outputs MP3 + word-timing JSON.\n\n---\n\n## Install & Use\n\nThe easiest way to use this in your MCP clients (like Cursor or VS Code) is via `uvx`:\n\n```json\n{\n  \"mcpServers\": {\n    \"edge-tts\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"--from\",\n        \"saitrogen-edge-tts-mcp\",\n        \"edge-tts-mcp\"\n      ]\n    }\n  }\n}\n```\n\nOr you can install it using pip:\n```bash\npip install saitrogen-edge-tts-mcp\n```\n\n---\n\n## Tools\n\n### `edgetts_synthesize`\n\nConverts text → `.mp3` + optional word-timing `.json` (Remotion-ready).\n\n| Param | Default | Description |\n|---|---|---|\n| `text` | required | Text or SSML to speak |\n| `output_path` | required | Path ending in `.mp3` |\n| `voice` | `en-US-AriaNeural` | Voice name (see list_voices) |\n| `rate` | `+0%` | Speed: `+20%` faster, `-10%` slower |\n| `volume` | `+0%` | Volume adjustment |\n| `pitch` | `+0Hz` | Pitch: `+50Hz`, `-20Hz` |\n| `save_timings` | `true` | Save `<output>.mp3.json` with word timings |\n\n**Word timing JSON** (saved at `voiceover.mp3.json`):\n```json\n[\n  { \"word\": \"Hello\",   \"startMs\": 0,   \"durationMs\": 312, \"endMs\": 312 },\n  { \"word\": \"Remotion\",\"startMs\": 375, \"durationMs\": 480, \"endMs\": 855 }\n]\n```\n\n### `edgetts_list_voices`\n\nLists all available voices with optional locale/gender filter.\n\n| Param | Example |\n|---|---|\n| `locale` | `en-US`, `hi-IN`, `ta` |\n| `gender` | `Male`, `Female` |\n\n---\n\n## Remotion Usage\n\n```tsx\nimport timings from './public/voiceover.mp3.json';\nimport { Audio, Sequence, staticFile, useVideoConfig } from 'remotion';\n\nexport const Scene = () => {\n  const { fps } = useVideoConfig();\n\n  return (\n    <>\n      <Audio src={staticFile('voiceover.mp3')} />\n      {timings.map((w, i) => (\n        <Sequence\n          key={i}\n          from={Math.floor((w.startMs / 1000) * fps)}\n          d…","publisher":null,"homepage":null,"repository":null,"version":"0.1.1","license":"MIT","protocols":["mcp"],"tags":["edge-tts","mcp","remotion","text-to-speech","tts"],"pricing":null,"endpoints":[{"url":"pypi:saitrogen-edge-tts-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","summary":"pypi","version":"pypi","description":"pypi"}},"derived":{"capabilities":[{"slug":"media.speech-synthesis","name":"Speech Synthesis","confidence":1,"provenance":"declared"}],"categories":["media"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"saitrogen-edge-tts-mcp","registry":"pypi","observedAt":"2026-10-22T19:27:57.829Z","publishedAt":"2026-03-18T06:55:56.271317Z","latestVersion":"0.1.1"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"saitrogen-edge-tts-mcp","url":"https://pypi.org/project/saitrogen-edge-tts-mcp/","firstSeenAt":"2026-09-10T11:27:44.432Z","fetchedAt":"2026-10-22T19:26:34.412Z","normalizedAt":"2026-10-22T19:26:34.412Z"}]},"firstSeenAt":"2026-09-10T11:27:44.432Z","updatedAt":"2026-10-22T19:27:57.829Z"}