The HappyScribe MCP connector routes your AI agent's tool calls to HappyScribe's own MCP server through Scalekit. Each user signs in to HappyScribe once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 39 tools.
- Tools
- 39
- What they doRead · write · destructive
- 18 · 18 · 318 read18 write3 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the HappyScribe MCP connection
In AgentKit > Connections, create a HappyScribe MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for HappyScribe MCP server, so you don't need to register an OAuth app.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'happyscribemcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize HappyScribe MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'happyscribemcp_get_folder_hierarchy',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "happyscribemcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize HappyScribe MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="happyscribemcp_get_folder_hierarchy",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolhappyscribemcp_get_export_statusCheck an export that export_transcription reported as still processing, and get its link.Read-onlyGet Export Status
Check an export that export_transcription reported as still processing, and get its link.
Inputs
export_idstringrequired- The export_id from export_transcription.
happyscribemcp_get_folder_hierarchyGet the folder hierarchy with transcription counts.Read-onlyGet Folder Hierarchy
Get the folder hierarchy with transcription counts. Shows accessible folders organized by location (Team, Private, Shared with me). USE THIS when list_transcriptions returns more results than you can effectively browse and you need to understand how transcriptions are organized. Then use list_transcriptions with folder_path to browse specific folders.
Inputs
locationstring- Optional. Filter by location: workspace (team folders), private (your personal folders), or shared (folders shared with you by others).one of
workspaceprivateshared max_depthinteger- Optional. Maximum folder depth to return (default: unlimited). Depth 1 = immediate children only, 2 = children and grandchildren, etc.
root_pathstring- Optional. Start from this folder path instead of root (e.g., "/Projects/2024"). Only returns folders under this path. When set, output is flat (not grouped by location).
happyscribemcp_get_glossaryGet the full contents of a glossary, including all custom terms and their definitions.Read-onlyGet Glossary
Get the full contents of a glossary, including all custom terms and their definitions.
Inputs
idintegerrequired- Glossary ID (from list_glossaries)
happyscribemcp_get_helpdesk_articleGet the full content of a HappyScribe help article by ID.Read-onlyGet Helpdesk Article
Get the full content of a HappyScribe help article by ID. Use search_helpdesk first to find relevant article IDs.
Inputs
idstringrequired- Help article ID (from search_helpdesk results)
happyscribemcp_get_meeting_diagnosticsGet technical diagnostics for a meeting recording: Notetaker join status, recording state, processing errors, and timeline events.Read-onlyGet Meeting Diagnostics
Get technical diagnostics for a meeting recording: Notetaker join status, recording state, processing errors, and timeline events. Use this when a meeting recording is missing or has issues.
Inputs
calendar_event_idintegerrequired- Calendar event ID (from list_calendar_events)
happyscribemcp_get_transcriptionGet detailed information about a specific transcriptionRead-onlyGet Transcription
Get detailed information about a specific transcription
Inputs
idstringrequired- The transcription ID (hashed_id)
display_modestring- Display mode: full_text (default, complete transcription), summary (AI-generated summary, typically <500 words), or metadata_only (no content)one of
metadata_onlysummaryfull_text
happyscribemcp_get_transcription_statusCheck the progress of a transcription, by the order_uuid from create_transcription or by a transcription_id.Read-onlyGet Transcription Status
Check the progress of a transcription, by the order_uuid from create_transcription or by a transcription_id. Returns one status (importing, analyzing, transcribing, needs_credits, waiting_for_payment, done or failed) and the next step. While it runs, poll_after_seconds says when to check again. HappyScribe sends no notification in the chat when it finishes: the transcript is ready once this reports done, and the user can ask for a new check anytime.
Inputs
order_uuidstring- The order_uuid returned by create_transcription.
transcription_idstring- A transcription ID, when you do not have the order_uuid (e.g. from list_transcriptions).
happyscribemcp_get_transcriptionsGet detailed information about multiple transcriptions at once.Read-onlyGet Transcriptions
Get detailed information about multiple transcriptions at once. Use this after listing transcriptions to get full content/summaries for multiple files efficiently.
Inputs
idsarrayrequired- Array of transcription IDs (hashed_id) to retrieve (max 5)
display_modestring- Display mode: full_text (default, complete transcription), summary (AI-generated summary, typically <500 words), or metadata_only (no content)one of
metadata_onlysummaryfull_text
happyscribemcp_get_upload_urlUpload route for a file the user attached to this conversation, wants transcribed, and that sits in your own sandbox (e.g.Read-onlyGet Upload Url
Upload route for a file the user attached to this conversation, wants transcribed, and that sits in your own sandbox (e.g. /mnt/user-data/uploads/...). Returns a one-hour upload_url and a file_id. The upload has three steps: (1) one HTTP PUT of the file bytes to upload_url, with the Content-Type header set to exactly the mime_type passed here (with curl, -g keeps brackets in the URL or file name from being read as patterns); (2) finalize_upload with the file_id; (3) create_transcription with the file_id. The bytes go straight to storage, so the file never needs to be read into the conversation.
Inputs
file_namestringrequired- The file name, e.g. interview.mp3
file_sizeintegerrequired- The exact file size in bytes
mime_typestringrequired- The exact audio or video Content-Type, e.g. audio/mpeg or video/mp4
happyscribemcp_get_video_framesExtract visual frames (screenshots) from a video recording at specific timestamps.Read-onlyGet Video Frames
Extract visual frames (screenshots) from a video recording at specific timestamps. Use this when the conversation references something visual — a screen share, presentation, diagram, or UI — and you need to see what was on screen. Returns the frames as images. Only works for video recordings (meetings, screen recordings); audio-only files have no frames.
Inputs
idstringrequired- The transcription ID (hashed_id)
timestampsarrayrequired- Timestamps in seconds to extract frames from (max 3). Use timestamps from the transcription content to target moments of interest.
skip_cacheboolean- Skip cached results and force a fresh extraction. Use only if a previous result was wrong.
happyscribemcp_get_workspaceGet information about the current workspace: name, plan, member count, storage usage, and feature flags.Read-onlyGet Workspace
Get information about the current workspace: name, plan, member count, storage usage, and feature flags.
Inputs
This tool takes no inputs.
happyscribemcp_list_calendar_eventsList calendar events (scheduled meetings) with their recording status.Read-onlyList Calendar Events
List calendar events (scheduled meetings) with their recording status. Use this to see what meetings are scheduled, which will be recorded, and prepare for upcoming meetings. Supports date filtering to find meetings in specific time ranges (past, present, or future). Can filter by series_ids to get all instances of recurring meeting series.
Inputs
limitinteger- Maximum number of results to return (default: 20, max: 100)
series_idsarray- Filter by meeting series IDs (ical_uid) to get all instances of specific recurring meetings
start_time_afterstring- Return only events starting on or after this ISO-8601 date-time (e.g., "2025-01-01" or "-P7D" for last 7 days)
start_time_beforestring- Return only events starting before this ISO-8601 date-time
happyscribemcp_list_glossariesList custom glossaries in the workspace.Read-onlyList Glossaries
List custom glossaries in the workspace. Glossaries define custom vocabulary (names, jargon, technical terms) that improve transcription accuracy.
Inputs
This tool takes no inputs.
happyscribemcp_list_read_filesList files already read this month and show remaining quota.Read-onlyList Read Files
List files already read this month and show remaining quota. Some plans have a monthly limit on how many unique files can be read with display_mode: "full_text" — once a file has been read, re-reading it is always free. Summaries and metadata are also always free.
Inputs
This tool takes no inputs.
happyscribemcp_list_transcriptionsList transcriptions accessible to the user with optional filtering.Read-onlyList Transcriptions
List transcriptions accessible to the user with optional filtering. Returns results ordered by creation date (newest first). START HERE to see recent transcriptions. When the user asks about THEIR OWN transcriptions (e.g. "my files", "my meetings", "what have I been working on") ALWAYS pass scope: 'mine'. Without scope: 'mine', this tool returns every file the user can technically access via folder permissions, which is usually NOT what "my files" means. Supports filtering by folder, location, date range, person, company, and pagination.
Inputs
company_domainstring- Filter by company domain (e.g., "acme.com")
company_namestring- Filter by company name. Returns transcriptions where anyone from that company was involved.
created_afterstring- Return only transcriptions created on or after this ISO-8601 date-time
created_beforestring- Return only transcriptions created before this ISO-8601 date-time
file_originstring- Filter by file origin. "recording" = captured live (Notetaker meetings or in-app recordings); "upload" = a file the user uploaded.one of
recordingupload folder_idinteger- Filter by folder ID. Returns transcriptions in this folder only.
folder_pathstring- Filter by folder path (e.g., "/My Folder/Subfolder"). Returns transcriptions in this folder only. Use this instead of folder_id for a more user-friendly way to filter by folder.
limitinteger- Maximum number of results to return (default: 20, max: 250)
locationstring- Filter by location: workspace (team files), private (your personal files), or shared (files shared with you by others, including directly shared transcriptions). For "my files" queries, scope: 'mine' is usually the better fit — it also captures files the user participated in but doesn't have folder access to.one of
workspaceprivateshared offsetinteger- Number of results to skip for pagination (default: 0)
person_emailstring- Filter by person email (matches primary and secondary emails)
person_namestring- Filter by person name. Returns transcriptions where this person was involved. Matches canonical name and speaker aliases. Supports fuzzy matching for misspellings.
preview_modestring- Preview mode: none (default, no content preview), summary (AI-generated summary, typically <500 words, lightweight), or beginning (first ~500 words with speakers/structure metadata)one of
nonesummarybeginning scopestring- Use scope: 'mine' to return only transcriptions associated with the current user — files they own, files they participated in (as speaker or calendar attendee), and files directly shared with them. This is the canonical "My files" / "files I was in" view and is what the user almost always means by "my transcriptions" or "my meetings". Combine with date / person / company filters as needed. Cannot be combined with `location`.one of
mine
happyscribemcp_search_helpdeskSearch HappyScribe helpdesk articles to answer questions about product features, policies, and how-to guides.Read-onlySearch Helpdesk
Search HappyScribe helpdesk articles to answer questions about product features, policies, and how-to guides. Use this when the user asks about how HappyScribe works, product documentation, feature explanations, pricing details, data policies (e.g. "how long are files stored?", "is my data used for training?"), account settings, troubleshooting, or any question that might be answered in help documentation. This searches published help center articles and returns relevant excerpts with links to the full articles.
Inputs
querystringrequired- Search query for helpdesk articles (e.g., "how long are files stored", "data training policy", "export formats")
limitinteger- Maximum number of results to return (default: 5, max: 10)
happyscribemcp_search_transcriptionsSearch for exact text/keywords within transcription content (like grep).Read-onlySearch Transcriptions
Search for exact text/keywords within transcription content (like grep). Use this to find specific names, product names, or exact phrases. For browsing by topic, date, or category, use get_folder_hierarchy + list_transcriptions instead.
Inputs
querystringrequired- Search query to find in transcription content
created_afterstring- Return only transcriptions created on or after this ISO-8601 date-time
created_beforestring- Return only transcriptions created before this ISO-8601 date-time
limitinteger- Maximum number of results to return (default: 20)
offsetinteger- Number of results to skip for pagination (default: 0)
happyscribemcp_verify_quotesREQUIRED for quote extraction: Verifies quote text against the actual transcription content and returns precise timestamps and working links to each quote in the editor.Read-onlyVerify Quotes
REQUIRED for quote extraction: Verifies quote text against the actual transcription content and returns precise timestamps and working links to each quote in the editor. This is the ONLY reliable way to get accurate quote positions — never generate links or timestamps from memory as they will be incorrect. Always call this tool immediately after identifying quotes to extract. Counts as a file read (same quota as get_transcription with full_text).
Inputs
idstringrequired- The transcription ID (hashed_id)
quotesarrayrequired- Array of quotes to verify (max 20 per request)
happyscribemcp_create_folderCreate a new folder.WriteCreate Folder
Create a new folder. Specify a parent via parent_folder_id; if omitted, the folder is created at the root of the workspace, or in your private folder when the workspace ("team folders") is disabled for the organization. Use list_transcriptions or get_folder_hierarchy to look up the parent folder ID first.
Inputs
namestringrequired- Folder name
parent_folder_idinteger- Parent folder ID. Omit to create at the default location (workspace root, or your private folder when team folders are disabled).
happyscribemcp_create_glossaryCreate a glossary in the workspace: terms that transcriptions and translations should spell consistently (names, brands, jargon).WriteCreate Glossary
Create a glossary in the workspace: terms that transcriptions and translations should spell consistently (names, brands, jargon). Apply it to a file with glossary_ids on create_transcription or retranscribe. organization_default applies it to every new file in the workspace, for teammates too.
Inputs
namestringrequired- Glossary name.
organization_defaultboolean- Apply it to every new file in the workspace. Defaults to false.
source_languagestring- Optional language code of the terms, e.g. "en".
target_languagesarray- Optional language codes for translations. Most plans allow one.
termsarray- The terms to add.
happyscribemcp_create_transcriptionCreates a transcription or subtitles from a publicly accessible media file URL (e.g., a direct link to an audio/video file, a YouTube or Vimeo link, or a public cloud storage share link).WriteCreate Transcription
Creates a transcription or subtitles from a publicly accessible media file URL (e.g., a direct link to an audio/video file, a YouTube or Vimeo link, or a public cloud storage share link). The file is imported and processed in the background - check progress and retrieve the result with list_transcriptions or get_transcription. To transcribe local files, direct the user to upload them at https://www.happyscribe.com.
Inputs
languagestringrequired- Language code (e.g., en-US, es-ES, fr-FR) or "auto" for automatic language detection. For best results, specify the language when known.
urlstringrequired- URL of a publicly accessible media file to transcribe (e.g., https://example.com/video.mp4 or a YouTube link).
file_idstring- The file_id of a file uploaded with get_upload_url and finalize_upload.
folder_idinteger- ID of the folder to place the transcription in. Uses default folder if not provided. Use folder_path instead if you want to specify a folder by path.
folder_pathstring- Path to the folder to place the transcription in (e.g., "/All files/My Folder/Subfolder"). Uses default folder if not provided.
glossary_idsarray- Optional glossary IDs (from list_glossaries) whose terms the transcription should spell correctly. Leave it out to use the workspace's default glossaries.
media_fileobject- The audio or video file the user attached, when the client passes attachments as file parameters: the file itself, not its file name or a path. Files in your own sandbox go through get_upload_url.
operationstring- Type of operation: transcription or subtitles (default: transcription)one of
transcriptionsubtitles
happyscribemcp_export_transcriptionExport transcripts as downloadable files and return a download link.WriteExport Transcription
Export transcripts as downloadable files and return a download link. Formats: txt, md, docx, pdf, srt, vtt, json, csv, xlsx and html, with options for timestamps, speaker names, comments and highlights; srt and vtt are subtitle files. Several transcripts in one export come back as one zip. Links last 24 hours. Translation is not available.
Inputs
formatstringrequired- File format.one of
txtmddocxpdfsrtvttjsoncsvxlsxhtml transcription_idsarrayrequired- Transcription IDs (hashed_id) to export.
commentsboolean- Include editor comments. Default: false.
highlightsboolean- Include highlights. Default: false.
speakersboolean- Include speaker names. Default: true.
timestampsstring- Where to print timestamps. Default: none.one of
noneparagraph10s30s60s
happyscribemcp_finalize_uploadConfirm that the PUT to the upload_url from get_upload_url succeeded.WriteFinalize Upload
Confirm that the PUT to the upload_url from get_upload_url succeeded. Checks the bytes arrived and starts analyzing the file. The next step is create_transcription with the same file_id.
Inputs
file_idstringrequired- The file_id returned by get_upload_url.
happyscribemcp_move_transcriptionsMove one or more transcriptions to a different folder in the same organization.WriteMove Transcriptions
Move one or more transcriptions to a different folder in the same organization. Accepts up to 50 transcription IDs per call. Use list_transcriptions or get_folder_hierarchy to look up the destination folder ID first. Cross-organization moves are not supported. Authorization is checked per transcription and on the destination folder; if any check fails, no transcriptions are moved.
Inputs
folder_idintegerrequired- Target folder ID. Use get_folder_hierarchy to find folder IDs.
idsarrayrequired- Array of transcription IDs (hashed_id) to move (max 50)
happyscribemcp_reassign_speakersReassign speakers for one or more time ranges in a transcription.WriteReassign Speakers
Reassign speakers for one or more time ranges in a transcription. The server splits affected paragraphs at word boundaries and assigns the given speaker label to all words in each range. Adjacent paragraphs with the same speaker are merged automatically. Use this to fix diarization errors where paragraphs contain speech from multiple people. Returns the resulting speaker timeline so you can verify the changes.
Inputs
idstringrequired- Transcription ID (hashed_id).
segmentsarrayrequired- Time ranges to reassign. Each segment specifies a time range and the speaker to assign.
happyscribemcp_rename_folderRename a folder.WriteRename Folder
Rename a folder. The folder ID can be found using get_folder_hierarchy.
Inputs
idintegerrequired- Folder ID to rename
namestringrequired- New folder name
happyscribemcp_rename_speakersRename one or more speakers in a transcription.WriteRename Speakers
Rename one or more speakers in a transcription. Pass a mapping of current speaker label -> new speaker label. All paragraphs whose speaker matches a key are updated. Match is exact (case-sensitive). Use get_transcription first to see the current speaker labels.
Inputs
idstringrequired- Transcription ID (hashed_id).
mappingobjectrequired- Mapping from current speaker label to new speaker label. Keys must match speaker labels exactly (case-sensitive). Values are the new labels.
happyscribemcp_rename_transcriptionRename a transcription file.WriteRename Transcription
Rename a transcription file. Updates the display name shown in the dashboard and folder listings.
Inputs
idstringrequired- Transcription ID (hashed_id)
namestringrequired- New display name for the transcription
happyscribemcp_replace_text_batchApply several find-and-replace fixes to one transcription in a single new version.WriteReplace Text Batch
Apply several find-and-replace fixes to one transcription in a single new version. Several fixes in one call make one version, where replace_text_in_transcript makes one per fix. Pairs run in order, each on the result of the ones before (so a later find can match text an earlier replace produced). Matching is exact and case-sensitive. The optional time window applies to every pair. Pairs that match nothing are reported and skipped.
Inputs
idstringrequired- Transcription ID (hashed_id).
replacementsarrayrequired- Up to 50 fixes, applied in order.
from_secondsnumber- Optional lower bound (in seconds) of the time window.
to_secondsnumber- Optional upper bound (in seconds) of the time window.
happyscribemcp_replace_text_in_transcriptFind and replace exact text in a transcription.WriteReplace Text In Transcript
Find and replace exact text in a transcription. Replaces every occurrence of `find` with `replace` across all paragraphs. Optionally constrain to a time window with `from_seconds` and `to_seconds` — only occurrences whose word-level timestamps intersect that window are replaced. Use this to fix consistent typos, names, or product mentions. For speaker label changes, use rename_speakers instead.
Inputs
findstringrequired- Exact text to find (case-sensitive). Cannot be empty.
idstringrequired- Transcription ID (hashed_id).
replacestringrequired- Replacement text. Can be empty (deletes the matched text).
from_secondsnumber- Optional lower bound (in seconds) of the time window.
to_secondsnumber- Optional upper bound (in seconds) of the time window.
happyscribemcp_request_missing_capabilityRecords a request that no available tool can handle, so the HappyScribe team learns what to build next.WriteRequest Missing Capability
Records a request that no available tool can handle, so the HappyScribe team learns what to build next. The capability is described in general terms (for example "translate a transcript into German" or "send the summary to Slack"), without names, emails or other personal details. It is not for requests an available tool covers, nor for errors that already name a next step (a missing summary, a file still processing, no minutes left). One call per request is enough. It does not add new tools.
Inputs
capabilitystringrequired- What the user wanted that no tool could do, in one sentence.
categorystringrequired- The closest area.one of
transcriptionsubtitlestranslationeditingsummariesexportsharingmeetings_notetakerintegrationssearch_analysisworkspace_adminaccount_billingother user_goalstring- Optional: what the user was ultimately trying to achieve, in one sentence.
happyscribemcp_show_transcriptShow a transcript to the user as a card in the chat, with an audio player and the first paragraphs, which expand in place.WriteShow Transcript
Show a transcript to the user as a card in the chat, with an audio player and the first paragraphs, which expand in place. It fits a user who wants to see, open, read or listen to a finished transcript, including right after an upload finishes. It works for files that get_transcription_status reports as done. One card shows one transcript, so several files take one call each. get_transcription returns the text for you to read.
Inputs
transcription_idstringrequired- The transcription ID (hashed_id).
happyscribemcp_show_upload_boxShow an upload box in the chat where the user can drop or pick one or more audio or video files from their device, on desktop or mobile.WriteShow Upload Box
Show an upload box in the chat where the user can drop or pick one or more audio or video files from their device, on desktop or mobile. It fits any request to upload, send or transcribe a file that has not been attached in a form you can pass yourself, including a plain "I want to upload a file", and attachments in clients that give no file access. Documents and images are out of scope. The box uploads each file, starts its transcription and shows progress itself, so its files need no create_transcription call. Once it shows "Uploaded", the user can ask anytime whether the transcript is ready.
Inputs
This tool takes no inputs.
happyscribemcp_unlock_transcriptionUnlock a transcription that get_transcription_status reported as needs_credits, spending the workspace credits it costs so it continues.WriteUnlock Transcription
Unlock a transcription that get_transcription_status reported as needs_credits, spending the workspace credits it costs so it continues. It spends the user's credits, so it needs the user's explicit agreement for this file. If the workspace still cannot afford it, the user can upgrade in their HappyScribe account; adding minutes does not resume the file by itself, it still has to be unlocked.
Inputs
idstringrequired- The transcription ID from get_transcription_status.
happyscribemcp_update_glossaryEdit a glossary: rename it, change its languages or default status, and add, edit or remove terms.WriteUpdate Glossary
Edit a glossary: rename it, change its languages or default status, and add, edit or remove terms. Terms to edit or remove are matched by their current text (case-insensitive). Use get_glossary first to see the current terms.
Inputs
idintegerrequired- Glossary ID.
add_termsarray- Terms to add.
edit_termsarray- Terms to change, found by their current text.
namestring- New name.
organization_defaultboolean- Apply it to every new file in the workspace.
remove_termsarray- Current text of terms to remove.
source_languagestring- New source language code.
target_languagesarray- Replaces the target languages. Most plans allow one.
happyscribemcp_delete_folderSoft-delete a folder.DestructiveDelete Folder
Soft-delete a folder. The folder must be empty (no kept files or subfolders) — to delete a non-empty folder, first move or delete its contents using move_transcriptions or delete_transcriptions.
Inputs
idintegerrequired- Folder ID to delete
happyscribemcp_delete_transcriptionsSoft-delete one or more transcriptions (move to trash, restorable by the user).DestructiveDelete Transcriptions
Soft-delete one or more transcriptions (move to trash, restorable by the user). Accepts up to 50 transcription IDs per call. Authorization is checked per transcription; if any fails, no transcriptions are deleted. Permanent deletion is not exposed via this connector.
Inputs
idsarrayrequired- Array of transcription IDs (hashed_id) to soft-delete (max 50)
happyscribemcp_retranscribeRe-runs automatic transcription (ASR) on the existing media of a transcription already in the workspace, replacing the current transcript in place (the transcription keeps its ID).DestructiveRetranscribe
Re-runs automatic transcription (ASR) on the existing media of a transcription already in the workspace, replacing the current transcript in place (the transcription keeps its ID). Use this to fix a file that was transcribed in the wrong language, or to re-process it after its settings changed. Only finished automatic transcriptions with their media still available can be retranscribed. Retranscription runs in the background - poll with get_transcription (display_mode: metadata_only) until the state is "done".
Inputs
idstringrequired- The transcription ID (hashed_id) of the file to retranscribe.
glossary_idsarray- Optional glossary IDs (from list_glossaries) whose terms the transcription should spell correctly. Leave it out to use the workspace's default glossaries.
languagestring- Language code to transcribe in (e.g., en-US, es-ES, fr-FR). Defaults to the transcription's current language when omitted.
No tools match.