Wistia
Manage your Wistia content
- Category
- Marketing
- Primary Subcategory
- Meeting Notes & Call Intelligence
Integration details
Description
Wistia's MCP server lets you manage your entire video library from ChatGPT. Upload videos, make bulk updates, manage content access, and check webinar or video performance with quick prompts where you already work. Built-in skills enable you to automate your video and webinar workflows at scale that drive real business growth.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Meeting Notes & Call Intelligence
- Secondary Subcategories
- None listed
- Brand
- Wistia
- Access
- Account required
- First tracked
- 2026-06-04
- Tool count
- 113
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Get alerts for Wistia
Get updates when Wistia’s Discoverability Score or category rank changes.
ChatGPT Plugin Discovery Score
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Competing in ChatGPT Media Asset Management & CDN
View Category113 tools agents can invoke
Archive one or more medias (videos or audio files) by hashed_id. Use this when someone wants to archive, soft-delete, deactivate, or temporarily remove videos or audio without losing them. Archiving is reversible — use restore-media to bring archived media back, unlike delete-media which is permanent. Accepts up to 100 medias per request and processes asynchronously, returning a background_job_status to poll rather than a Media object. Webinar medias and Soapbox videos imported before September 1, 2023 cannot be archived.
archive-media
Copy, duplicate, or clone multiple medias (videos or audio files) at once into a destination folder by their hashed_ids. Use this when someone wants to batch-copy or bulk-duplicate several videos or audio files to another folder. Each media is duplicated and the copy placed in the specified destination folder; originals are unaffected. Processes asynchronously, returning a background_job_status to poll rather than a Media object. For copying a single media use copy-media; to relocate without duplicating use move-media.
bulk-copy-media
Bulk-delete multiple subfolders from a folder (project). Their media is also sent to the trash, so confirm with the user before calling; only an account owner or manager can restore it. To keep the media, call delete-subfolder for each subfolder instead — it moves the media to the folder's root level. Runs asynchronously and returns a background_job_status object.
bulk-delete-subfolders
Add, apply, tag, label, or categorize one or more media — apply a list of tag names to video or audio files in a single batch. Processing is asynchronous, so this returns a background_job_status object rather than the media themselves. The supplied tags are added to each media's existing tags, not replaced. Use this when someone wants to add tags while preserving existing tags, including when tagging a single media. To manage the tag definitions use create-tags, get-tags, or delete-tag.
bulk-tag-media
Copy, duplicate, or clone a folder (previously called a "project") along with all its media and subfolders. Use this when someone wants to copy, duplicate, or clone an existing folder or project and its contents. The copy runs asynchronously in a background job, so the response contains an object representing the queued background job. Sharing information is NOT copied (users who could see the old folder will not automatically see the new one). You may pass an optional parameter to set the owner of the new folder, but the person specified must be a Manager in the account. Use create-folder to make an empty folder, update-folder to rename, get-folders to list folders, or create-folder-sharing to grant access to the copy.
copy-folder
Copy, duplicate, or clone a single media (a video or audio file) and its assets by hashed_id, optionally into a destination folder and optionally assigning a new owner. Use this when someone wants to duplicate one video or audio file. Defaults the destination to the source media's current folder and the owner to the source media's owner when omitted. To copy many medias at once use bulk-copy-media; to relocate without duplicating use move-media.
copy-media
Submits a batch of up to 1000 create, update, and delete actions (for medias, folders, subfolders, channels, and channel episodes) to be processed asynchronously. Prefer this over repeated single calls when changing many records at once. For subfolders, use resource_type "subfolder"; creates require folder_id and name. resource_type "folder" means a top-level folder (previously called a project). Deleting a folder or subfolder also sends its media to the trash. Confirm with the user before submitting a folder or subfolder delete. An account owner or manager can restore the media until it purges. To keep the media when deleting a subfolder, use delete-subfolder; it moves the media to the folder's root level instead. Returns a background job status; if you're a headless agent, poll get-background-job-status for progress and per-action results, including created record IDs. UI-enabled MCP hosts handle polling for you, so a single submit call is enough. Media creation is not supported.
create-bulk-actions
Add or upload captions (subtitles / closed captions / CC / SRT subtitle track) to a video for a specific language by supplying an SRT file or its contents. The language conforms to ISO-639-2 and is auto-detected if omitted. Use this when someone wants to add subtitles or a caption track to a media. Use update-captions to replace an existing track, purchase-captions to buy Wistia-generated English captions, get-captions to list tracks, or delete-captions to remove one.
create-captions
Create a new Wistia Channel — a customizable, embeddable video gallery (also called a content hub, video showcase, series, or playlist page) that groups videos into episodes for viewers to browse. Use this when someone wants to set up, add, start, or build a new channel or video gallery. Use update-channel to change an existing one, get-channels to list channels, or create-channel-episode to add videos to a channel.
create-channel
Create a channel collaborator — invite a contact to a channel with a specified role (admin or viewer). Use this when someone wants to share a channel, give access, or add a person to a channel by specifying their email address and role. Use get-channel-collaborators to list who has access to a channel or delete-channel-collaborator to revoke access.
create-channel-collaborator
Add a video to a Wistia Channel as a new episode — an individual video entry within a channel's embeddable video gallery or content hub. Use this when someone wants to add, insert, append, or put a video into a channel or video gallery. Requires an api token with "Read, update & delete anything" permission. Use create-channel to make the channel first, get-channels to find its hashed id, and publish-channel-episode to make the episode visible.
create-channel-episode
Create, add, or set up a new folder (previously called a "project") — a container that organizes your videos and audio files (media). Use this when someone wants to make, add, or create a new folder or project to group media. On success the Location HTTP header points to the new folder. Use update-folder to rename it, get-folders to list folders, delete-folder to remove one, copy-folder to duplicate one, or create-subfolder to nest a folder inside it.
create-folder
Create a folder sharing — grant a contact or contact group access/view permission to a folder (previously called a "project"). Use this when someone wants to share a folder, give access, or add a person or group to a folder by specifying the email of the person to share with plus other optional parameters. Use get-folder-sharings to list who a folder is shared with, update-folder-sharing to change a sharing's permission, or delete-folder-sharing to revoke access.
create-folder-sharing
Create a new media by trimming, cutting, or clipping parts off an existing video — produces a separate, shortened copy without modifying the source. By default the trims time ranges specify parts to remove; set keep_trims to true to instead specify the ranges to keep. Processing is asynchronous and returns a background_job_status object. Use this when someone wants to cut, clip, shorten, or trim a video into a new media. Currently only video files are supported.
create-media-from-trims
Create, add, set up, or nest a new subfolder within a folder (previously called a "project"). A subfolder is a nested folder inside a folder, used to further organize videos and audio files (media). Use this when someone wants to make, add, or create a subfolder inside a folder. The subfolder is created at the next available position. To create several subfolders at once, use create-bulk-actions with resource_type "subfolder" instead of calling this repeatedly. Use update-subfolder to rename it, get-subfolders to list subfolders, delete-subfolder to remove one, or get-folders to list the parent folders.
create-subfolder
Create, add, or make a new tag — a label or keyword used to organize and categorize media. Use this when someone wants to define a new tag in the account. To list existing tags use get-tags, delete-tag to remove one, or bulk-tag-media to apply tags to media files.
create-tags
Create a new webinar — a live or scheduled online video event / live stream that people register for and attend. Use this when someone wants to create, add, set up, or schedule a new webinar or live event. Use update-webinar to edit it, get-webinars to list webinars, delete-webinar to cancel one, or create-webinar-registration to register an attendee.
create-webinar
Create a webinar collaborator — invite a contact as a producer to a webinar. Use this when someone wants to share producer access to a webinar, give production access, or add a person to a webinar by specifying their email address. Viewers cannot be webinar collaborators. Use get-webinar-collaborators to list who has access to a webinar or delete-webinar-collaborator to revoke access.
create-webinar-collaborator
Register, sign up, or enroll a person (a registrant/attendee) for a webinar — a live or scheduled online video event — by providing their email, first name, and last name. Use this when someone wants to add an attendee to or register someone for a webinar or live event. Generates a unique visitor key and returns a personalized webinar URL for the registrant. Use get-webinars to find the webinar, or list-webinar-registrations to see existing registrants.
create-webinar-registration
Delete or remove the captions (subtitles / closed captions / CC / SRT subtitle track) from a video for a specified ISO-639-2 language code. Use this when someone wants to delete a subtitle or caption track from a media. Use create-captions to add a track, update-captions to replace one, or get-captions to list existing tracks.
delete-captions
Permanently delete (remove, destroy, tear down) a Wistia Channel — an embeddable video gallery, content hub, or video showcase page that groups videos into episodes. Identify it by its channelHashedId. This cannot be undone. Use this when someone wants to get rid of a channel or video gallery. Use get-channels to find the hashed id, update-channel to edit instead, or delete-channel-episode to remove a single video.
delete-channel
Delete a channel collaborator — revoke a contact's access to a channel. Use this when someone wants to remove a person's access to a channel, unshare a channel, or revoke permissions. Use get-channel-collaborators to list who has access to a channel or create-channel-collaborator to grant access.
delete-channel-collaborator
Permanently delete (remove, destroy, take out) a channel episode — an individual video entry within a Wistia Channel's embeddable video gallery or content hub. Identify it by its channelEpisodeHashedId; this cannot be undone. Requires an api token with "Read, update & delete anything" permission. Use this when someone wants to remove a video from a channel or video gallery. Use get-channel-episodes to find the hashed id, or un-publish-channel-episode to just hide it instead of deleting.
delete-channel-episode
Deletes all explicit customizations for a video, resetting it to default player behavior. Use this to clear all appearance, playback, engagement, and other settings at once.
delete-customizations
Delete or remove a folder (previously called a "project") — a container that organizes videos and audio files (media). Use this when someone wants to delete, remove, or get rid of a folder or project. Use get-folders to list folders first, create-folder to make a new one, update-folder to rename instead, or bulk-delete-subfolders to remove nested subfolders.
delete-folder
Delete a folder sharing — remove or revoke a contact's or contact group's access to a folder (previously called a "project"). Use this when someone wants to unshare a folder, revoke access, or remove a person or group's permission on a folder. Use get-folder-sharings to list current sharings, create-folder-sharing to grant access, or update-folder-sharing to change a sharing instead of removing it.
delete-folder-sharing
Delete or remove a localization (a translated, language-specific / dubbed version of a media) by its hashed ID. Use this when someone wants to remove a localized or translated variant of a video. Use create-localization to add one, gets-localizations to list them, or show-localization to view one.
delete-localization
Permanently delete a media (a video or audio file) from the account by its hashed_id. Use this when someone wants to delete, remove, trash, or destroy a video or audio file for good. This cannot be undone — to remove media reversibly use archive-media (and restore-media to bring it back), or move-media to relocate it instead.
delete-media
Delete (remove) an extended audio description (EAD) by its hashed id — the accessibility audio track that narrates on-screen visuals for blind and low-vision viewers. This permanently removes the EAD and cannot be undone. Use this when someone wants to delete or remove audio descriptions from a media. To look one up first use show-media-extended-audio-description, or get-media-extended-audio-descriptions to list them.
delete-media-extended-audio-description
Delete one subfolder from a folder (project) while keeping its media. The media moves to the folder's root level; only the subfolder is soft-deleted. To delete multiple subfolders and their media, use bulk-delete-subfolders.
delete-subfolder
Delete or remove a tag by name — a label or keyword used to organize and categorize media. This permanently removes the tag and cannot be undone. Use this when someone wants to get rid of a tag. To list existing tags use get-tags, or create-tags to make a new one.
delete-tag
Delete an existing webinar — a live or scheduled online video event / live stream — by its hashed ID. Use this when someone wants to delete, remove, cancel, or take down a webinar or live event. This permanently removes the webinar and cannot be undone. Use get-webinars to find a webinar, create-webinar to make one, or update-webinar to edit one instead.
delete-webinar
Delete a webinar collaborator — revoke a contact's producer access to a webinar. Use this when someone wants to remove a person's access to produce a webinar, unshare a webinar, or revoke permissions. Use get-webinar-collaborators to list who has access to a webinar or create-webinar-collaborator to grant access.
delete-webinar-collaborator
Get the current status of a Wistia background job by its hashed id (queued, started, finished, failed). Call this for any tool whose return value includes a background job status, to track the async operation it kicked off. A job is done when its status is "finished" or "failed". In UI-capable hosts, calling this once renders a live widget that watches the job for you and automatically sends you a message when it finishes or fails. Call it a single time, then wait for that message before continuing — do not call it again in a loop. In headless hosts there is no widget, so call it repeatedly to poll until the status is "finished" or "failed". Each call returns a single current-status snapshot. Jobs that carry typed detail also return it under `object.details`, keyed by `object.details.type`. A bulk operation (from create-bulk-actions or create-bulk-purchase) returns type "bulk_operation" with a `summary` of total/succeeded/failed counts for the whole batch, plus `results`, the per-action outcomes saying which records succeeded and why the others failed. Each entry carries `position` (its index in the submitted batch), `operation`, `resource_type`, `id` (the affected record, and for a successful create the newly created one), `status` ("succeeded" or "failed"), and `error` on the ones that failed. Read `summary` for whether the batch worked and `results` for what to do about it. `results` is capped at 100 entries: past that, failed actions are listed first because they are the ones worth acting on, `results_truncated` is true, and `results_omitted` counts what was left out. The uncapped list is available from the REST endpoint GET /modern/background_job_status/{id}.
get-background-job-status
List the brands in the account — the saved sets of branding options (colors, fonts, logos, border radius) used to style players and pages. The account-level default brand is marked with is_default. Supports pagination and sorting (by name, created, updated, or id). Use this when someone wants to see which brands exist and how each is configured.
get-brands
List, get, or find the caption tracks (subtitles / closed captions / CC / SRT subtitle tracks) belonging to the account, optionally narrowed to a specific media by hashed ID, with each track returned as JSON including its language. Use this when someone wants to see which subtitle or caption languages exist on a media. Use show-captions-file to fetch one track's text, create-captions to add one, or purchase-captions to buy Wistia-generated English captions.
get-captions
List, get, show, or browse the channel collaborators — the contacts and contact groups who have been granted access to a channel. Use this when someone wants to see who has access to a channel, list collaborators, or find who a channel is shared with, with optional sorting and pagination. Results are limited to collaborators the authenticated user is permitted to see: only account owners, managers, and channel admins can see the full list. Use create-channel-collaborator to grant access or delete-channel-collaborator to revoke access.
get-channel-collaborators
List, get, show, browse, or find channel episodes — the individual video entries within a Wistia Channel's embeddable video gallery or content hub. Filter by channel_id, media_id, title, or published state; supports pagination, sorting, and batch fetch by hashed_ids. Use this when someone wants to see which videos are in a channel or video gallery. Use get-channels to find a channel's hashed id, create-channel-episode to add a video, or publish-channel-episode / un-publish-channel-episode to control visibility.
get-channel-episodes
List, get, show, browse, or find all Wistia Channels in an account — each an embeddable video gallery, content hub, video showcase, or playlist page that groups videos into episodes. Supports pagination, sorting, and batch fetch by one or more hashed_ids. Use this when someone wants to see what channels or video galleries exist or look up a channel's hashed id. Use create-channel to make one, update-channel to edit, or get-channel-episodes to list a channel's videos.
get-channels
List, get, show, or browse the folder sharings — the contacts and contact groups who have been granted access to a folder (previously called a "project"). Use this when someone wants to see who a folder is shared with, list access permissions, or find sharings on a folder, with optional hashed-id filtering, sorting, and pagination. Use create-folder-sharing to grant access, update-folder-sharing to change a sharing, or delete-folder-sharing to revoke access.
get-folder-sharings
List, get, show, browse, or find folders (previously called "projects") belonging to the account — containers that organize videos and audio files (media). Use this when someone wants to list, get, show, browse, or find folders or projects, optionally filtering by hashed IDs and sorting/paginating the results. Use create-folder to add a new folder, update-folder to rename one, delete-folder to remove one, copy-folder to duplicate one, or get-subfolders to list folders nested inside a folder.
get-folders
List, get, or find all extended audio descriptions (EADs) in the account — the accessibility audio tracks that narrate on-screen visuals for blind and low-vision viewers. Supports pagination, filtering by hashed_ids, and sorting. Use this when someone wants to see existing audio descriptions. For a single one use show-media-extended-audio-description, or order-media-extended-audio-description to buy a new one.
get-media-extended-audio-descriptions
List, browse, or fetch media records (videos and audio files) in the account. Use this when someone wants a page of media, all media in a known folder, exact-name or exact-ID lookup, or structured filtering by folder, media type, tags, archived status, sorting, or pagination. Do not use this as the first step for keyword, topic, title, description, or transcript search; use the `search` tool for those content-finding requests, then use get-medias only if you need exact media records by hashed_id. For "all" or "how many" requests with structured filters, use `per_page: 100` and continue with `page` or `cursor` pagination while more results may exist. The default page size is 10, so never treat an unpaginated first response as a complete total. Returns a list of media records. In MCP responses, `per_page` is only the requested limit; use `returned_count` or the actual `content` length as the number of records returned in that response.
get-medias
List, get, show, browse, or find subfolders within a specific folder (previously called a "project"). A subfolder is a nested folder inside a folder that organizes videos and audio files (media). Use this when someone wants to list, get, show, or browse the subfolders inside a folder. You can use the hashed_ids filter to fetch a specific subfolder, plus sorting and pagination. Use create-subfolder to add a subfolder, update-subfolder to rename one, delete-subfolder to remove one, or get-folders to list the parent folders.
get-subfolders
List, get, or find the tags in the account — the labels or keywords used to organize and categorize media. Supports pagination and sorting (by name, created, updated, or taggings count). Use this when someone wants to see which tags exist. To make a new tag use create-tags, delete-tag to remove one, or bulk-tag-media to apply tags to media files.
get-tags
Internal. Return the persisted lifecycle status for a previous tool call so an MCP App can restore its UI state after a conversation refresh. Pass the _mcp_tool_call_id of the call whose status you want.
get-tool-status
Return short-lived authorization credentials for uploading media. Pass the folder_id (the hashed ID of the destination folder). In hosts that render MCP App UIs, the embedded uploader opened by upload-media-to-folder calls this automatically and there is no need to call it directly. Headless clients (no UI) can use the returned credentials to upload via a multipart POST to the upload_url returned by upload-media-to-folder: curl -X POST <upload_url> -H "Authorization: <authorization_scheme> <authorization_token>" -F "file=@/path/to/file.mp4" -F "project_id=<folder_id>" -F "name=<name>" The response of the multipart POST contains a hashed_id for the new media, viewable at the media_url_template returned by upload-media-to-folder.
get-upload-token
List, get, show, or browse the webinar collaborators — the contacts and contact groups who have been granted producer access to a webinar. Use this when someone wants to see who has access to produce a webinar, list producers, or find who a webinar is shared with, with optional sorting and pagination. Results are limited to collaborators the authenticated user is permitted to see: only account owners, managers, and the webinar's producers can see the list. Use create-webinar-collaborator to grant access or delete-webinar-collaborator to revoke access.
get-webinar-collaborators
List, get, show, or find webinars belonging to the account — live or scheduled online video events / live streams that people register for and attend. Supports pagination, sorting, and filtering by hashed IDs or started status, and can batch fetch specific webinars by hashed ID. Use this to look up or browse webinars. Use create-webinar to make one, update-webinar to edit one, delete-webinar to cancel one, or list-webinar-registrations to see who registered.
get-webinars
List, get, or find all localizations (translated, language-specific / dubbed versions) for a media, optionally including each one's transcript. Use this when someone wants to see which translated or localized language variants a video has. Use show-localization for details on one, create-localization to add one, or delete-localization to remove one.
gets-localizations
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Wistia alternatives on ChatGPT?
As of 2026-09-29, Wistia competes with Cloudinary, Smooth Bundle in ChatGPT Media Asset Management & CDN, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.