Skip to main content
Glama
real-browser-mcp-server
by codeiva11

media_extractor

Extract and control page media: find video, audio, HLS, DASH, and download URLs across iframes; play, pause, seek, decode URLs, or batch-extract.

Instructions

Extract and control media from the current page. Supports 6 actions: extract (find video/audio/HLS/DASH/download URLs including nested iframes), list_iframes, switch_iframe, player_control (play/pause/seek/sources via player API), decode_url (inspect converted string and token formats), batch_extract.

Input Schema

NameRequiredDescriptionDefault
deepNoAlso scan inline scripts and data attributes
urlsNoList of URLs for batch_extract action
asyncNoFor batch_extract only: run as a background job — returns a jobId immediately instead of blocking; poll async_job for the result.
indexNoiframe index number
typesNoMedia types to find: video, audio, hls, dash, download, iframes
actionNoextract
qualityNobest
selectorNoiframe CSS selector
decoderIVNoOptional secondary parameter (for custom conversion)
aiOptimizeNoSelect extraction strategy automatically
decoderKeyNoOptional transformation parameter (for custom conversion)
decoderTypeNoConversion type: auto-detect, url, base64, or customauto
encodedDataNoString data to convert (for decode_url action)
playerActionNoinfo
searchIframesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv3.3.14
    • addedInput schema / properties / async
      Added value: +{
      +  "default": false,
      +  "description": "For batch_extract only: run as a background job — returns a jobId immediately instead of blocking; poll async_job for the result.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / urls / maxItems
      Added value: +50
  2. First observedv3.2.13

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden, yet it says nothing about state mutation (switch_iframe changes frame context, player_control alters playback), permissions, side effects, or how batch_extract behaves without the async flag. 'Including nested iframes' and 'via player API' are the only behavioral hints for a 6-action, 15-param tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose followed by a compact action enumeration. Dense but every clause adds information; only mild density cost from packing six actions into one sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with six distinct action modes, 15 params and no annotations or output schema, the description covers the action menu but not per-action parameter applicability or what each action returns. It is enough to pick an action, but not enough to call the more complex modes (player_control, decode_url, batch_extract) confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 73%, so the schema documents most parameters (deep, async, types, selector, encodedData, etc.) and the baseline is 3. The description adds meaning by mapping actions to capabilities, but it does not clarify which parameters apply to which action, nor does it explain the undocumented enum values (quality, playerAction) or decoderKey/decoderIV semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Extract and control media from the current page') and enumerates all six actions with what each does, so an agent can map intent to action. It does not explicitly differentiate from plausible siblings like extract_data or network_recorder, which keeps it from a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical glosses for each action (e.g. 'player_control (play/pause/seek/sources)', 'decode_url (inspect converted string and token formats)') imply when each sub-mode applies. However, there is no explicit when-to-use guidance versus siblings like extract_data or network_recorder, and no exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.