Happy Scribe MCP server
28 operations7 webhooks
Transcription, subtitle and meeting-notetaker platform with Happy Scribe - start transcriptions and translations, send the notetaker to meetings, export transcripts, read discovered contacts, and manage human-service orders.
Try Happy Scribe with your agent
Connect Happy Scribe, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in Happy Scribe on my account, then run one read-only example and show me the result.
Happy Scribe tools and triggers
Tools are what your agent can do in Happy Scribe through Corsair's MCP server. Triggers are the Happy Scribe events a routine can start from.
Transcriptions
- CreateWrite
Start transcribing media from a public URL; spends transcription credits. Follow with transcriptions.getDetails until state is automatic_done
transcriptions.create
- DeleteDestructive
Delete a transcription. It moves to the Trash unless permanent is true, which cannot be undone. Deleting one still processing cancels it and refunds its credits
transcriptions.delete
- Get DetailsRead-only
Read one transcription: processing state, language, duration, cost, media URLs and download links
transcriptions.getDetails
- Get SummaryRead-only
Read the AI-generated meeting summary of a notetaker recording
transcriptions.getSummary
- ListRead-only
List transcriptions in an organization with paging, folder filter and, for Intelligence-enrolled organizations, person and company filters
transcriptions.list
- Update DetailsWrite
Change a transcription: rename it, move it to another folder in the same organization, or toggle its public sharing link
transcriptions.updateDetails
Memberships
- AddWrite
Add a user to an organization as admin or member, by email. An email new to HappyScribe gets an invitation email and the answer carries invite instead of member
memberships.add
- ListRead-only
List the members of an organization with their roles, 25 per page; nextPageUrl is set when another page exists
memberships.list
- RemoveDestructive
Remove a user from the organization; their existing transcripts stay
memberships.remove
- Update RoleWrite
Change a member's role between admin and member
memberships.updateRole
Orders
- ConfirmDestructive
Confirm an incomplete order, which charges the organization and starts the work
orders.confirm
- CreateDestructive
Create a transcription or subtitling order for media at a URL: service auto (the default) is machine work, pro is human work. It stays incomplete and unpaid until orders.confirm or an explicit confirm flag
orders.create
- Create TranslationDestructive
Create a translation order for an existing transcription: service auto (the default) is machine translation, pro is human. Incomplete and unpaid until confirmed
orders.createTranslation
- GetRead-only
Read one human-service order: state, operations, languages and pricing
orders.get
Companies
- GetRead-only
Read one discovered company with its enriched firmographics (Intelligence API)
companies.get
- ListRead-only
List companies discovered from meeting transcripts (Intelligence API; 404 when the organization is not enrolled)
companies.list
Exports
- CreateWrite
Start exporting one or more transcriptions to a format (txt, srt, vtt, docx, pdf, json). Follow with exports.get until state is ready
exports.create
- GetRead-only
Where an export stands; once state is ready the answer carries its download_link
exports.get
Meetings
- CreateWrite
Send the HappyScribe notetaker bot to a meeting URL now or at joinAt; it records and transcribes. Follow with meetings.get until status is completed
meetings.create
- GetRead-only
Read one meeting: notetaker status (queued, joining, in_call, processing, completed, failed, cancelled), settings, and the transcript and summary once ready
meetings.get
People
- GetRead-only
Read one discovered contact with company linkage (Intelligence API)
people.get
- ListRead-only
List contacts discovered from meeting transcripts (Intelligence API; 404 when not enrolled)
people.list
Translations
- Create TaskWrite
Start machine-translating a transcript into a target language; spends credits. Follow with translations.getTask until state is done
translations.createTask
- Get TaskRead-only
Where a translation task stands: progress percent, failure reason and the translated transcription id once done
translations.getTask
Glossaries
- ListRead-only
List the glossaries an organization can attach to human orders
glossaries.list
Organizations
- ListRead-only
List the organizations the API token belongs to, with the caller role and human-service availability
organizations.list
Style Guides
- ListRead-only
List the style guides an organization can attach to human orders
styleGuides.list
Uploads
- Get Signed UrlRead-only
Get a pre-signed S3 URL for a filename; upload the file bytes there yourself, then create a transcription from it
uploads.getSignedUrl
Connect Happy Scribe to Claude, ChatGPT or Cursor
- 1
Connect Happy Scribe in Corsair
Add your Happy Scribe API key once in Corsair. Corsair stores the credential encrypted and makes the Happy Scribe API calls for your agent, so it never goes into a prompt or a config file. Connect Happy Scribe
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs Happy Scribe. On a ChatGPT personal plan, connect Happy Scribe here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, Happy Scribe's read and write operations run right away and its 5 destructive operations wait for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/happyscribe, add the Happy Scribe plugin, and connect with an API key. Then call methods like corsair.happyscribe.api.companies.get() from your app. Corsair verifies webhooks, and keeps each tenant isolated.
Yes. Happy Scribe requires an API key from your Happy Scribe account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit Happy Scribe, GitHub, Notion, Stripe, and the rest. Trigger Happy Scribe from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for transcription, subtitle and meeting-notetaker platform with Happy Scribe - start transcriptions and translations, send the notetaker to meetings, export transcripts, read discovered contacts, and manage human-service orders. Common builds include sync jobs, admin tooling, and agents that call Happy Scribe APIs from your backend. Webhook handlers react to Happy Scribe events and fan out to Slack, email, or other plugins in the same tenant.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per Happy Scribe API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/happyscribe in the open repo. When Happy Scribe ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your Happy Scribe data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store Happy Scribe data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put Happy Scribe on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 5 destructive Happy Scribe operations. You can change a link's mode at hub.corsair.dev/me.