Server data from the Official MCP Registry
Transcribe local audio files and public audio URLs to text, SRT/VTT or word timestamps.
About
Transcribe local audio files and public audio URLs to text, SRT/VTT or word timestamps.
Security Report
The Saidwire MCP server is a speech-to-text tool that reads user-specified local audio files or downloads public audio URLs and sends them to the vendor's documented API over HTTPS, with the API key read from an environment variable. Its network and file access match its stated purpose; the main considerations are the user-controlled output_path write and the SSRF-related protections on URL downloads, which are implemented with a private-address check that could be bypassed by DNS rebinding between the check and the request. Supply chain analysis found 7 known vulnerabilities in dependencies (1 critical, 1 high severity). Package verification found 1 issue.
8 files analyzed · 12 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
What You'll Need
Set these up before or after installing:
Environment variable: SAIDWIRE_API_KEY
Environment variable: SAIDWIRE_MAX_DOWNLOAD_MB
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-saidwire-saidwire-mcp": {
"env": {
"SAIDWIRE_API_KEY": "your-saidwire-api-key-here",
"SAIDWIRE_MAX_DOWNLOAD_MB": "your-saidwire-max-download-mb-here"
},
"args": [
"saidwire-mcp"
],
"command": "uvx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
Saidwire MCP server
Speech-to-text for Claude Desktop, Claude Code, Cursor, Windsurf, VS Code and any other Model Context Protocol client. Ask your assistant to transcribe a recording on your computer or at a public URL, and get plain text, subtitles (SRT/VTT) or word-level timestamps back.
"Transcribe ~/Downloads/standup.m4a and list the action items." "Make subtitles for https://example.com/talk.mp3 and save them to ~/talk.srt."
- English speech-to-text, punctuated and capitalised.
- WAV, MP3, FLAC, Ogg/Opus, WebM, M4A/MP4 and AAC, up to 100 MB / 60 minutes per file.
- $0.30 per audio hour. New keys include 120 free hours, no card needed.
- Built and maintained by Saidwire, the company that runs the service.
1. Get a free API key
Sign up at saidwire.com/dev and copy your key
(it starts with sk_live_).
2. Add the server to your client
You need uv (it provides uvx;
no Node or npm needed):
curl -LsSf https://astral.sh/uv/install.sh | sh # macOS / Linux
# Windows: powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
Claude Desktop
Settings → Developer → Edit Config (claude_desktop_config.json), then restart Claude:
{
"mcpServers": {
"saidwire": {
"command": "uvx",
"args": ["saidwire-mcp"],
"env": { "SAIDWIRE_API_KEY": "sk_live_your_key_here" }
}
}
}
If Claude says it cannot find uvx, replace "uvx" with the full path from which uvx
(it usually ends in /.local/bin/uvx). Desktop apps do not always see your shell's PATH.
Or double-click saidwire-mcp.mcpb (from the GitHub release) to install it as a Claude
Desktop extension; Claude asks for the key.
Claude Code
claude mcp add saidwire --scope user -e SAIDWIRE_API_KEY=sk_live_your_key_here -- uvx saidwire-mcp
Cursor
~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):
{
"mcpServers": {
"saidwire": {
"command": "uvx",
"args": ["saidwire-mcp"],
"env": { "SAIDWIRE_API_KEY": "sk_live_your_key_here" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json: the same mcpServers block as Cursor.
VS Code (Copilot agent mode)
.vscode/mcp.json:
{
"inputs": [
{ "type": "promptString", "id": "saidwire-key", "description": "Saidwire API key", "password": true }
],
"servers": {
"saidwire": {
"command": "uvx",
"args": ["saidwire-mcp"],
"env": { "SAIDWIRE_API_KEY": "${input:saidwire-key}" }
}
}
}
Any other client
Command uvx saidwire-mcp (stdio transport), with SAIDWIRE_API_KEY in its environment.
pip install saidwire-mcp also works and installs a saidwire-mcp command.
Tools
| tool | what it does |
|---|---|
transcribe_file(path, format="text", include_words=false, output_path=null) | Transcribes an audio file on this computer. Use an absolute path. |
transcribe_url(url, format="text", include_words=false, output_path=null) | Downloads a public audio file (direct http/https link) and transcribes it. |
format:text(plain transcript),json(transcript, utterances and per-word timestamps),srtorvtt(subtitles).include_words: add per-word start and end times totextorjsonoutput.output_path: also save the result to this absolute path (for example~/talk.srt).
Settings
| environment variable | default | |
|---|---|---|
SAIDWIRE_API_KEY | (required) | Your key from saidwire.com/dev. |
SAIDWIRE_MAX_DOWNLOAD_MB | 100 | Size limit for transcribe_url downloads (max 100). |
SAIDWIRE_ALLOW_PRIVATE_URLS | off | Set to 1 to let transcribe_url fetch from local or private network addresses. |
SAIDWIRE_API_URL | https://api.saidwire.com | API base URL. |
Privacy
The server runs on your computer. It reads only the files you ask it to transcribe, sends the audio to the Saidwire API over HTTPS, and returns the text to your client. Your key stays in your local client config. See "Data handling" in the API docs for how the service treats audio.
Troubleshooting
- "SAIDWIRE_API_KEY is not set": add the
envblock shown above and restart the client. - "API key was not accepted" (401): copy the whole key, including the part after the dot.
- "included hours are used up" (402): add hours at saidwire.com/dev.
- "web page, not an audio file":
transcribe_urlneeds a direct link to the audio file, not a page that plays it. - Anything else: support@saidwire.com (include the
request_idfrom the error).
The API
This server uses the pre-recorded endpoint POST https://api.saidwire.com/v1/listen.
Saidwire also offers real-time streaming over WebSocket (final transcripts about 35 ms after
end of speech) and an OpenAI-compatible POST /v1/audio/transcriptions.
Docs: saidwire.com/docs/api.
Development
uv venv && uv pip install -e ".[test]"
.venv/bin/pytest # offline unit tests + MCP stdio no-key test
SAIDWIRE_API_KEY=sk_live_... SAIDWIRE_TEST_AUDIO=/abs/path/clip.wav .venv/bin/pytest -m live -v
License
MIT
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Rea
Freeby Morluto · Developer Tools
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Lharries · Communication
Read, search, and send WhatsApp messages through your AI assistant
