MCP App Store

Overview

Connect ChatGPT to a single Bitmovin MCP Server covering every product. Analyze Observability data, stream video with Player, manage Encoding jobs, run Stream Lab tests, and much more — all using natural language. With MCP Apps, visualize QoE metrics through interactive charts and stream DASH or HLS playback directly in the chat.

Tools

encoding_ask_bitmovin_encoding

ChatGPT
Inspect, debug, and create Bitmovin encodings. Can list and inspect encodings, streams, muxings, codec configs, inputs, and outputs (with status/name filters and error details), and can generate YAML encoding templates for VOD and Live workflows (codec, resolution, encoding mode, output format, DRM, multi-audio, AISA ad insertion, SCTE-35, Dolby Atmos, SRT live, etc.). Uses Bitmovin API key from x-api-key header if provided.

encoding_ask_bitmovin_encoding

ChatGPT
Inspect, debug, and create Bitmovin encodings. Can list and inspect encodings, streams, muxings, codec configs, inputs, and outputs (with status/name filters and error details), and can generate YAML encoding templates for VOD and Live workflows (codec, resolution, encoding mode, output format, DRM, multi-audio, AISA ad insertion, SCTE-35, Dolby Atmos, SRT live, etc.). Uses Bitmovin API key from x-api-key header if provided.

general_docs_ask_bitmovin_docs

ChatGPT
Ask a question about Bitmovin products and APIs and SDKs and documentation. Provide product and platform when known to avoid mixed cross-product or cross-platform results. The agent searches official Bitmovin documentation and the Bitmovin Community Forum (community.bitmovin.com) for real-world user experiences and known issues. Can also answer questions about streaming and encoding specifications (HLS and DASH and CMAF and codec standards). Returns an answer with source citations and states the product/platform scope used.

general_docs_ask_bitmovin_docs

ChatGPT
Ask a question about Bitmovin products and APIs and SDKs and documentation. Provide product and platform when known to avoid mixed cross-product or cross-platform results. The agent searches official Bitmovin documentation and the Bitmovin Community Forum (community.bitmovin.com) for real-world user experiences and known issues. Can also answer questions about streaming and encoding specifications (HLS and DASH and CMAF and codec standards). Returns an answer with source citations and states the product/platform scope used.

general_docs_fetch_docs_page

ChatGPT
Fetch the full content of a Bitmovin documentation page as markdown. Use when search_bitmovin_docs returns a relevant URL but the answer is incomplete — especially for table-heavy or list-heavy pages.

general_docs_fetch_docs_page

ChatGPT
Fetch the full content of a Bitmovin documentation page as markdown. Use when search_bitmovin_docs returns a relevant URL but the answer is incomplete — especially for table-heavy or list-heavy pages.

general_docs_search_bitmovin_sdk_examples

ChatGPT
Search all public Bitmovin GitHub repositories for code samples. Covers Player samples (web and iOS and Android and Roku and Tizen and webOS), Player SDKs (UI and React Native and Flutter and React), Player integrations (Conviva and ComScore and Adobe and Yospace and MediaTailor and Nielsen and Akamai and CMCD and Cast), Encoding API SDKs (Java and Python and JavaScript and Go and PHP and .NET), Analytics Collectors (Android and iOS and Roku), and Streams. Use for any Bitmovin code-sample question.

general_docs_search_bitmovin_sdk_examples

ChatGPT
Search all public Bitmovin GitHub repositories for code samples. Covers Player samples (web and iOS and Android and Roku and Tizen and webOS), Player SDKs (UI and React Native and Flutter and React), Player integrations (Conviva and ComScore and Adobe and Yospace and MediaTailor and Nielsen and Akamai and CMCD and Cast), Encoding API SDKs (Java and Python and JavaScript and Go and PHP and .NET), Analytics Collectors (Android and iOS and Roku), and Streams. Use for any Bitmovin code-sample question.

observability_analyzeImpression

ChatGPT
Perform comprehensive analysis of an impression's playback session, including static properties, aggregated metrics, state transition timeline, and AI-powered interpretation of the session quality. Use this for deep-dive troubleshooting and detailed session understanding.

observability_analyzeImpression

ChatGPT
Perform comprehensive analysis of an impression's playback session, including static properties, aggregated metrics, state transition timeline, and AI-powered interpretation of the session quality. Use this for deep-dive troubleshooting and detailed session understanding.

observability_getAvailableFilters

ChatGPT
Get a list of available filter categories with their supported operators. Use this to check available filter attributes before applying filters in query or queryGroupBy.

observability_getAvailableFilters

ChatGPT
Get a list of available filter categories with their supported operators. Use this to check available filter attributes before applying filters in query or queryGroupBy.

observability_getAvailableMetrics

ChatGPT
Get a list of available metrics with their supported aggregation methods. Use this before calling query or queryGroupBy to check the correct metric keyword.

observability_getAvailableMetrics

ChatGPT
Get a list of available metrics with their supported aggregation methods. Use this before calling query or queryGroupBy to check the correct metric keyword.

observability_getImpressionOverview

ChatGPT
Get a high-level summary of an impression's playback session, including static session properties (device, location, player) and aggregated metrics (total played time, buffering, video quality). Use this for quick session inspection.

observability_getImpressionOverview

ChatGPT
Get a high-level summary of an impression's playback session, including static session properties (device, location, player) and aggregated metrics (total played time, buffering, video quality). Use this for quick session inspection.

observability_peekAllLicenses

ChatGPT
View a summary of all available licenses with their recent play counts and percentage distribution. Use this to understand what licenses exist and their relative usage. When a user asks about licenses by ranking (e.g., 'biggest', 'most active', 'first'), use this to identify which license matches that criteria before querying.

observability_peekAllLicenses

ChatGPT
View a summary of all available licenses with their recent play counts and percentage distribution. Use this to understand what licenses exist and their relative usage. When a user asks about licenses by ranking (e.g., 'biggest', 'most active', 'first'), use this to identify which license matches that criteria before querying.

observability_query

ChatGPT
query timeseries metric. IMPORTANT: Before using this tool, you must: 1) Use the 'getAvailableMetrics' tool / 'metrics://available' resource to check the correct metric keyword - commonly used names may be mapped differently in the API (e.g., 'plays' is actually 'impression_id'). 2) Ensure you have a licenseKey. If the user hasn't specified one use peekAllLicenses. OPTIONAL 3) Use the 'getAvailableFilters' tool / 'metrics://filter/available' resource to check available filters and their operators.

observability_query

ChatGPT
query timeseries metric. IMPORTANT: Before using this tool, you must: 1) Use the 'getAvailableMetrics' tool / 'metrics://available' resource to check the correct metric keyword - commonly used names may be mapped differently in the API (e.g., 'plays' is actually 'impression_id'). 2) Ensure you have a licenseKey. If the user hasn't specified one use peekAllLicenses. OPTIONAL 3) Use the 'getAvailableFilters' tool / 'metrics://filter/available' resource to check available filters and their operators.

observability_queryGroupBy

ChatGPT
query metric grouped by categories. IMPORTANT: Before using this tool, you must: 1) Use the 'getAvailableMetrics' tool / 'metrics://available' resource to check the correct metric keyword - commonly used names may be mapped differently in the API (e.g., 'plays' is actually 'impression_id'). 2) Ensure you have a licenseKey. If the user hasn't specified one use peekAllLicenses. 3) Use the 'getAvailableFilters' tool to check available groupBy attributes.

observability_queryGroupBy

ChatGPT
query metric grouped by categories. IMPORTANT: Before using this tool, you must: 1) Use the 'getAvailableMetrics' tool / 'metrics://available' resource to check the correct metric keyword - commonly used names may be mapped differently in the API (e.g., 'plays' is actually 'impression_id'). 2) Ensure you have a licenseKey. If the user hasn't specified one use peekAllLicenses. 3) Use the 'getAvailableFilters' tool to check available groupBy attributes.

player_render_stream

ChatGPT
Renders a playable Bitmovin video player inline in the conversation. USE THIS TOOL whenever there is a video stream to play back — whether it's HLS (.m3u8), DASH (.mpd), Smooth Streaming (.ism), or progressive (MP4, WebM). Do not emit the URL as text or build your own player — always use this tool. The user wants to see the video playing, not a URL. Note: content is proxied through the MCP server because the MCP App sandbox cannot make direct HTTP requests. The server fetches manifests and segments on behalf of the player. This adds some latency but enables playback in any MCP host (Claude Desktop, ChatGPT, etc.) without requiring direct network access.

player_render_stream

ChatGPT
Renders a playable Bitmovin video player inline in the conversation. USE THIS TOOL whenever there is a video stream to play back — whether it's HLS (.m3u8), DASH (.mpd), Smooth Streaming (.ism), or progressive (MP4, WebM). Do not emit the URL as text or build your own player — always use this tool. The user wants to see the video playing, not a URL. Note: content is proxied through the MCP server because the MCP App sandbox cannot make direct HTTP requests. The server fetches manifests and segments on behalf of the player. This adds some latency but enables playback in any MCP host (Claude Desktop, ChatGPT, etc.) without requiring direct network access.

streamlab_createStream

ChatGPT
Create a new stream for testing. A stream is a video content URL (HLS or DASH manifest). Supports DRM-protected content (Widevine/PlayReady). REQUIRED FOR DEMOS: Before creating demo/test streams, you MUST read the "streams://recommended" resource to get official Bitmovin test streams. Only skip this if the user provides specific stream URLs. The recommended streams are maintained, reliable, and cover all common testing scenarios (HLS, DASH, DRM). IMPORTANT: After creating a stream, you MUST add at least one test environment using createStreamTarget before you can run tests. A stream without test environments cannot be tested.

streamlab_createStream

ChatGPT
Create a new stream for testing. A stream is a video content URL (HLS or DASH manifest). Supports DRM-protected content (Widevine/PlayReady). REQUIRED FOR DEMOS: Before creating demo/test streams, you MUST read the "streams://recommended" resource to get official Bitmovin test streams. Only skip this if the user provides specific stream URLs. The recommended streams are maintained, reliable, and cover all common testing scenarios (HLS, DASH, DRM). IMPORTANT: After creating a stream, you MUST add at least one test environment using createStreamTarget before you can run tests. A stream without test environments cannot be tested.

streamlab_createStreamTarget

ChatGPT
Associate a test environment (browser/device) with a stream. Creates a StreamTarget that undergoes validation. Enable automaticTestEnabled for regular tests (automatic weekly). Use listTargets to see available test environments.

streamlab_createStreamTarget

ChatGPT
Associate a test environment (browser/device) with a stream. Creates a StreamTarget that undergoes validation. Enable automaticTestEnabled for regular tests (automatic weekly). Use listTargets to see available test environments.

streamlab_deleteStream

ChatGPT
Delete a stream and all its associated stream targets.

streamlab_deleteStream

ChatGPT
Delete a stream and all its associated stream targets.

streamlab_deleteStreamTarget

ChatGPT
Remove a test environment from a stream. Deletes the StreamTarget association.

streamlab_deleteStreamTarget

ChatGPT
Remove a test environment from a stream. Deletes the StreamTarget association.

streamlab_getJobTestResults

ChatGPT
Get detailed test case results for a specific job. Shows individual test cases (playback initiation, seeking, etc.) with their status, description, and failure details if any.

streamlab_getJobTestResults

ChatGPT
Get detailed test case results for a specific job. Shows individual test cases (playback initiation, seeking, etc.) with their status, description, and failure details if any.

streamlab_getJobs

ChatGPT
Get test jobs for a stream-target combination. Returns jobs ordered by creation date (newest first). By default (onlySucceeded=true), only returns succeeded jobs ("finished" or "notified" status) for backwards compatibility. "notified" means the job succeeded and an email was sent. Set onlySucceeded=false to get all jobs including in-progress ones for monitoring. Use this to monitor test execution and retrieve results after tests complete.

streamlab_getJobs

ChatGPT
Get test jobs for a stream-target combination. Returns jobs ordered by creation date (newest first). By default (onlySucceeded=true), only returns succeeded jobs ("finished" or "notified" status) for backwards compatibility. "notified" means the job succeeded and an email was sent. Set onlySucceeded=false to get all jobs including in-progress ones for monitoring. Use this to monitor test execution and retrieve results after tests complete.

streamlab_getLimits

ChatGPT
Get current usage and limits for Stream Lab - shows stream URL limits, active stream targets, monthly test executions, and subscription status.

streamlab_getLimits

ChatGPT
Get current usage and limits for Stream Lab - shows stream URL limits, active stream targets, monthly test executions, and subscription status.

streamlab_getStream

ChatGPT
Get details of a specific stream by ID.

streamlab_getStream

ChatGPT
Get details of a specific stream by ID.

streamlab_getStreamTarget

ChatGPT
Get details of a specific stream-target association by ID.

streamlab_getStreamTarget

ChatGPT
Get details of a specific stream-target association by ID.

streamlab_listStreamTargets

ChatGPT
List all test environments associated with a stream. Shows which browsers/devices will test this stream and whether regular tests are enabled.

streamlab_listStreamTargets

ChatGPT
List all test environments associated with a stream. Shows which browsers/devices will test this stream and whether regular tests are enabled.

streamlab_listStreams

ChatGPT
List all streams configured for testing. Streams are video content URLs (HLS/DASH manifests). Returns stream names, URLs, types, and IDs.

streamlab_listStreams

ChatGPT
List all streams configured for testing. Streams are video content URLs (HLS/DASH manifests). Returns stream names, URLs, types, and IDs.

streamlab_listTargets

ChatGPT
List all available test environments (browsers and devices). Use this to see where you can run tests - Chrome on Windows, Safari on macOS, etc.

streamlab_listTargets

ChatGPT
List all available test environments (browsers and devices). Use this to see where you can run tests - Chrome on Windows, Safari on macOS, etc.

streamlab_listVpnLocations

ChatGPT
List available VPN locations for geo-restricted stream testing. Use these location IDs when creating streams that need to be accessed from specific regions.

streamlab_listVpnLocations

ChatGPT
List available VPN locations for geo-restricted stream testing. Use these location IDs when creating streams that need to be accessed from specific regions.

streamlab_runTest

ChatGPT
Start a manual test (on-demand) for a stream-target combination. Manual tests are triggered immediately and count against your monthly limit (20/month). The stream must be validated on this test environment first.

streamlab_runTest

ChatGPT
Start a manual test (on-demand) for a stream-target combination. Manual tests are triggered immediately and count against your monthly limit (20/month). The stream must be validated on this test environment first.

streamlab_updateStream

ChatGPT
Update an existing stream configuration. You can modify: name, URL, stream type (hls/dash), VPN location, or DRM settings. To REMOVE optional settings: vpnLocationId="" (empty string removes VPN), drmType="none" (removes DRM protection), drmLicenseUrl="" (empty string removes license URL), drmHeaders={} (empty object removes all headers). Omit fields to keep current values.

streamlab_updateStream

ChatGPT
Update an existing stream configuration. You can modify: name, URL, stream type (hls/dash), VPN location, or DRM settings. To REMOVE optional settings: vpnLocationId="" (empty string removes VPN), drmType="none" (removes DRM protection), drmLicenseUrl="" (empty string removes license URL), drmHeaders={} (empty object removes all headers). Omit fields to keep current values.

streamlab_updateStreamTarget

ChatGPT
Update regular tests setting for a stream-target combination. Toggle automaticTestEnabled without recreating the stream target.

streamlab_updateStreamTarget

ChatGPT
Update regular tests setting for a stream-target combination. Toggle automaticTestEnabled without recreating the stream target.

Capabilities

InteractiveWrites

Example Prompts

Click any prompt to copy it.

App Stats

56

Tools

4

Prompts

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily