Wisprs
Transcribe audio, video and YouTube links in 100+ languages, then search, summarize, translate and export the transcripts.
Hosted MCP Server
npx add-mcp 'https://wisprs.co/api/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
A recording goes in. Your transcript comes back to the conversation.
Wisprs gives ChatGPT, Codex, Claude, and Claude Code a secure transcription workflow over MCP—built for long-running media, least-privilege access, and reliable retries.
01 · Public HTTPS media
https://…/recording.mp3
02 · Durable operation
op_… · queued → running
03 · Paginated transcript
tr_… · ready to retrieve
Choose your host
One service. Two distribution paths.
The hosted connector uses OAuth. Public directory buttons remain hidden until each platform has approved the listing.
Reviewer package ready
ChatGPT + Codex
A universal OpenAI plugin package with the same remote MCP endpoint, skill instructions, and bounded tool contracts.
- OAuth connection
- Bounded remote tool contracts
- Install CTA unlocks after approval Read OpenAI setup
Connector package ready
Claude + Claude Code
A Claude plugin and connector definition built around the identical operation receipts and transcript handles.
- OAuth connection
- Bounded remote tool contracts
- Install CTA unlocks after approval Read Claude setup
Public v1.1 contract
The complete transcript workflow.
Transcribe, search, export, summarize, chapter, repurpose, translate, and retrieve generated artifacts through one tenant-safe asynchronous contract. Large exports use private expiring MCP resources instead of filling the conversation.
Claude connects through a dedicated endpoint for transcription and the other listed account workflows. AI speech generation is not exposed to Claude; other supported MCP hosts retain the full Wisprs toolset.
transcribe_url
Submit public HTTPS audio or video and receive a durable operation receipt.
transcripts:write
get_private_media_upload_handoff
Open the authenticated Wisprs chunked uploader for local or private media.
transcripts:write
get_video_transcript
Instantly fetch the free caption transcript of a public YouTube, TikTok, or Instagram video.
transcripts:read
list_tts_voices
List active text-to-speech voices available to the connected plan.
tts:read
synthesize_speech
Start a metered text-to-speech job with a plan-authorized voice handle.
tts:write
list_tts_syntheses
List bounded text-to-speech history with short untrusted previews.
tts:read
get_tts_audio
Get a short-lived private download URL for a completed synthesis.
tts:read
list_meeting_sessions
List meeting capture sessions with consent state and transcript availability.
meetings:read
schedule_meeting_capture
Schedule a Wisprs meeting agent after explicit recording consent.
meetings:write
cancel_meeting_capture
Cancel a not-yet-dispatched meeting agent after confirmation.
meetings:write
list_support_tickets
List your own support tickets with bounded previews.
support:read
create_support_ticket
Create a bounded support request for the connected account.
support:write
list_webhook_endpoints
List webhook endpoints with signing secrets redacted.
webhooks:read
create_webhook_endpoint
Create an HTTPS webhook endpoint after SSRF-safe validation.
webhooks:write
update_webhook_endpoint
Update a tenant-owned webhook URL or active state.
webhooks:write
delete_webhook_endpoint
After confirmation, reversibly disable a webhook endpoint.
webhooks:write
list_organization_members
List workspace members without private account fields.
organization:read
list_creator_packs
List the bounded Wisprs creator packs available to the account.
creator:read
list_creator_templates
List bounded creator workflow templates and their outcomes.
templates:read
list_notifications
List bounded in-app notifications for the connected user.
notifications:read
mark_notifications_read
Mark selected or all unread notifications as read.
notifications:write
list_operations
List bounded operation history without payloads or source URLs.
operations:read
get_job_status
Check an operation without making the model hold an open request.
operations:read
get_transcript
Retrieve a completed transcript in bounded, repeatable pages.
transcripts:read
get_transcript_artifact
Read summaries, chapters, repurposed assets, and translations in bounded pages.
ai:transform
search_library
Search the connected personal or workspace library for ranked transcript moments.
library:search
list_transcripts
List a bounded page of transcripts with lifecycle and folder metadata.
transcripts:read
get_transcription_metadata
Read metadata for one transcription without returning transcript text.
transcripts:read
list_folders
List tenant-owned media folders and their live item counts.
library:read
get_usage_and_limits
Read the connected account plan, usage meters, and reset windows.
usage:read
create_folder
Create a tenant-owned media folder through a durable operation.
library:write
rename_folder
Rename a tenant-owned media folder without changing its contents.
library:write
move_transcript_to_folder
File or unfile one tenant-owned transcript.
library:write
delete_folder
After confirmation, soft-delete a folder while preserving its media.
library:write
rename_transcript
Rename one transcript with an optimistic revision guard.
transcripts:write
edit_transcript_text
Apply a confirmed bounded find-and-replace edit against an exact revision.
transcripts:write
retry_transcription
Requeue a failed transcript from retained source media after confirmation.
transcripts:write
create_share_link
Create an explicitly confirmed, expiring public transcript link.
sharing:write
revoke_share_link
Revoke an active public transcript link through a durable operation.
sharing:write
export_transcript
Create TXT, SRT, VTT, JSON, Markdown, or DOCX exports as expiring resources.
transcripts:export
summarize_transcript
Generate or reuse a durable structured transcript summary.
ai:transform
generate_chapters
Generate or reuse timestamped chapters for a completed transcript.
ai:transform
repurpose_transcript
Create show notes, threads, blog drafts, or quote selections.
ai:transform
translate_transcript
Translate a transcript into a specified BCP-47 language.
ai:transform
Least privilege
Write and read scopes are separate. Grants are bound to the authenticated user and, where applicable, their workspace.
Content-free telemetry
Channel analytics records fixed operational dimensions—not prompts, transcript text, media URLs, filenames, tokens, email addresses, or raw IPs.
Safe retries
Idempotency keys, durable receipts, pagination, and explicit terminal states let hosts recover from disconnects without duplicating work.
Try the workflow
Three prompts. One durable loop.
- 1
Transcribe this public recording and tell me when it is ready: https://… - 2
Check operation op_… with get_job_status and report its current state. - 3
Retrieve transcript tr_… page by page and preserve the source order.
Developer connection
Need stdio or an API key today?
The existing @wisprs/mcp package remains the developer-controlled alternative. It is separate from the hosted OAuth directory listings.
Connection checklist
No tools appear
Reconnect the host, confirm OAuth completed, then open a new conversation so the host refreshes its tool list.
A URL is rejected
Use a public HTTPS media URL. Private network addresses, unsafe redirects, and oversized responses are blocked.
The operation is still running
Keep the op_ receipt and check it later. Long media is deliberately asynchronous; do not resubmit it.
Access was revoked
Reconnect through the host. Revoked grants fail closed and cannot read earlier handles without valid tenant access.