encoding_ask_bitmovin_encoding
ChatGPTInspect, 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
ChatGPTInspect, 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
ChatGPTAsk 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
ChatGPTAsk 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
ChatGPTFetch 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
ChatGPTFetch 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
ChatGPTSearch 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
ChatGPTSearch 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
ChatGPTPerform 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
ChatGPTPerform 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTView 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
ChatGPTView 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
ChatGPTquery 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
ChatGPTquery 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
ChatGPTquery 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
ChatGPTquery 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
ChatGPTRenders 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
ChatGPTRenders 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
ChatGPTCreate 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
ChatGPTCreate 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
ChatGPTAssociate 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
ChatGPTAssociate 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
ChatGPTDelete a stream and all its associated stream targets.
streamlab_deleteStream
ChatGPTDelete a stream and all its associated stream targets.
streamlab_deleteStreamTarget
ChatGPTRemove a test environment from a stream. Deletes the StreamTarget association.
streamlab_deleteStreamTarget
ChatGPTRemove a test environment from a stream. Deletes the StreamTarget association.
streamlab_getJobTestResults
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet 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
ChatGPTGet current usage and limits for Stream Lab - shows stream URL limits, active stream targets, monthly test executions, and subscription status.
streamlab_getLimits
ChatGPTGet current usage and limits for Stream Lab - shows stream URL limits, active stream targets, monthly test executions, and subscription status.
streamlab_getStream
ChatGPTGet details of a specific stream by ID.
streamlab_getStream
ChatGPTGet details of a specific stream by ID.
streamlab_getStreamTarget
ChatGPTGet details of a specific stream-target association by ID.
streamlab_getStreamTarget
ChatGPTGet details of a specific stream-target association by ID.
streamlab_listStreamTargets
ChatGPTList all test environments associated with a stream. Shows which browsers/devices will test this stream and whether regular tests are enabled.
streamlab_listStreamTargets
ChatGPTList all test environments associated with a stream. Shows which browsers/devices will test this stream and whether regular tests are enabled.
streamlab_listStreams
ChatGPTList all streams configured for testing. Streams are video content URLs (HLS/DASH manifests). Returns stream names, URLs, types, and IDs.
streamlab_listStreams
ChatGPTList all streams configured for testing. Streams are video content URLs (HLS/DASH manifests). Returns stream names, URLs, types, and IDs.
streamlab_listTargets
ChatGPTList 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
ChatGPTList 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
ChatGPTList 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
ChatGPTList 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
ChatGPTStart 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
ChatGPTStart 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
ChatGPTUpdate 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
ChatGPTUpdate 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
ChatGPTUpdate regular tests setting for a stream-target combination. Toggle automaticTestEnabled without recreating the stream target.
streamlab_updateStreamTarget
ChatGPTUpdate regular tests setting for a stream-target combination. Toggle automaticTestEnabled without recreating the stream target.