Back to Browse

Speechweave MCP Server

Developer ToolsModerate5.2MCP RegistryLocal
Free

Server data from the Official MCP Registry

Transcribe local files and URLs with SpeechWeave's OpenAI-compatible API.

About

Transcribe local files and URLs with SpeechWeave's OpenAI-compatible API.

Security Report

5.2
Moderate5.2Moderate Risk

This is a well-structured MCP server for SpeechWeave transcription with solid security practices. The code implements proper authentication via API keys, validates input (paths, URLs, schemas), and avoids dangerous patterns. Permissions are appropriately scoped to the server's purpose (network calls to SpeechWeave API, local file reading, environment variable access). Minor code quality observations around error handling and logging do not meaningfully impact security. Supply chain analysis found 2 known vulnerabilities in dependencies (2 critical, 0 high severity). Package verification found 1 issue.

7 files analyzed · 6 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.

env_vars

Check that this permission is expected for this type of plugin.

HTTP Network Access

Connects to external APIs or services over the internet.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

What You'll Need

Set these up before or after installing:

SpeechWeave API key (sk_live_...)Required

Environment variable: SPEECHWEAVE_API_KEY

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-speechweave-mcp": {
      "env": {
        "SPEECHWEAVE_API_KEY": "your-speechweave-api-key-here"
      },
      "args": [
        "-y",
        "@speechweave/mcp"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

@speechweave/mcp

npm version License: MIT

Official Model Context Protocol server for SpeechWeave. Use to transcribe local files and URLs from Cursor, Claude Desktop, Claude Code, Windsurf, and other MCP clients.

SpeechWeave handles short clips and long-form audio without client-side chunking. This MCP server exposes both wait-first tools (get a transcript in one turn) and async create + poll tools (start a job, then check status).

Docs: speechweave.com/docs/mcp · API reference

Install / run

Requires Node.js 18+ and a SpeechWeave API key (sk_live_…).

export SPEECHWEAVE_API_KEY="sk_live_..."
npx -y @speechweave/mcp

Cursor / Claude Desktop

Add to your MCP config (e.g. .cursor/mcp.json, claude_desktop_config.json):

{
	"mcpServers": {
		"speechweave": {
			"command": "npx",
			"args": ["-y", "@speechweave/mcp"],
			"env": {
				"SPEECHWEAVE_API_KEY": "sk_live_..."
			}
		}
	}
}

Tools

ToolModeWhen to use
transcribe_fileWait-firstAbsolute local path; wait until transcript is ready
transcribe_urlWait-firstPublic HTTPS URL; wait until transcript is ready
start_job_fileAsyncAbsolute local path; return job_id immediately
start_job_urlAsyncPublic HTTPS URL; return job_id immediately
get_job_statusPollFetch status / transcript for a job id
cancel_jobControlCancel a queued or processing job
get_limitsInfoUpload size ceilings for your API key
fetch_docInfoPublic docs by slug (bundled pages + live OpenAPI)

Never pass raw audio bytes over MCP. Use absolute file paths (local clients) or HTTPS URLs.

Configuration & Arguments

All transcription and job-start tools accept the following optional arguments:

  • model: Choose core (default) or max.
  • service_mode: Choose standard (default) or deferred for the background queue. synchronous is accepted as an alias for standard.
  • language: Optional ISO language code to force language detection.
  • task: Choose transcribe (default) or translate to produce an English translation instead; language is ignored when translating.
  • prompt: Optional custom vocabulary hint (proper nouns, acronyms, product names) for the first ~30s of audio.

Formatted transcripts: transcribe_file, transcribe_url, and get_job_status also accept an optional response_format (text, srt, vtt, or verbose_json) to return the transcript in that shape instead of the default plain text.

Timeout behavior: Wait-first tools accept an optional timeout_ms. If the transcription exceeds the timeout, the tool gracefully returns a job_id and instructs the client to switch to get_job_status polling.

Account limits and docs

  • get_limits: Returns GET /v1/limits for the calling key, with MB equivalents. Use before uploading large local files.
  • fetch_doc: Returns public documentation. Slug list shows the catalog. Bundled pages include quickstart, mcp, models, billing, and data_retention. Slug api fetches a live OpenAPI overview; api/<operation_slug> returns one endpoint (e.g. api/get_v1_limits).

Example Prompts

After adding the server and restarting your client, try asking your AI assistant:

Short clip (wait-first)

"Use SpeechWeave to transcribe /Users/me/recordings/standup.mp3 and summarize action items."

The assistant will call transcribe_file with the absolute path and summarize the returned transcript.

Long podcast (async + poll)

"Start a SpeechWeave job for https://cdn.example.com/three_hour_podcast.mp3, then check back until it completes."

The assistant will call start_job_url, then periodically call get_job_status until the status reaches completed.

Translate to subtitles (wait-first)

"Translate /Users/me/recordings/spanish_interview.mp3 into English SRT subtitles using SpeechWeave."

The assistant will call transcribe_file with task: "translate" and response_format: "srt".

Reviews

No reviews yet

Be the first to review this server!