Skip to main content
Glama

Find Media By Embed Location

find_media_by_embed_location
Read-onlyIdempotent

Find Wistia media embedded at a URL and return hashed IDs ranked by plays for a date range, so you can fetch analytics for content at that location.

Instructions

Find the media embedded at a given URL. Returns the hashed IDs of the account's media that recorded activity at that embed location during the date range, ranked by plays. The resulting hashed IDs can be passed to other endpoints, such as Show Account Top Content's hashed_ids[] filter, to fetch analytics for those media.

The domain of embed_url is always matched exactly. Its path is matched exactly by default, or as a prefix with path_match=prefix (e.g. /pricing also matching /pricing/plans). A path that is empty or / is ignored, returning media across all paths on the domain.

Embed location data is retained for 6 months; a start_date older than that returns a 422 error. When start_date and end_date are omitted, the full 6-month queryable window is used.

Requires api token with one of the following permissions

Read detailed stats

Tokens with the "Act with a team member's permissions" permission (all:delegate_to_contact_permissions scope) can also be used. Requests made with such a token are authorized using the permissions of the contact assigned to the token. Read-only account operation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
accountNoNamed private Wistia account; selects credentials, not a remote account ID.
end_dateNoEnd date for the analytics period in ISO 8601 format (YYYY-MM-DD). Exclusive — the range ends before the beginning of this date. Defaults to tomorrow, so today's activity is included.
per_pageNoNumber of media hashed IDs to return (max 1000).
embed_urlYesThe URL of the page to look up, e.g. `https://example.com/pricing`. The protocol is optional (https is assumed), so `example.com/pricing` also works.
path_matchNoHow to match the path of `embed_url` against embed locations. `exact` requires the path to match exactly; `prefix` matches any embed path starting with it.exact
start_dateNoStart date for the analytics period in ISO 8601 format (YYYY-MM-DD). Inclusive — the range starts at the beginning of this date. Must be within the last 6 months. Defaults to 6 months ago, the start of the queryable window.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so safety and idempotency are covered. The description adds valuable non-obvious behavior: exact domain matching, path matching rules, the empty-path special case, the 6-month retention window, and the 422 error for older start dates. It does not detail pagination or output ordering beyond 'ranked by plays'.

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?

The description is front-loaded with the core purpose, then organized into clear paragraphs covering matching rules and date constraints. It is slightly verbose in places (e.g., repeating the 6-month window) but every sentence contributes useful information.

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

Completeness4/5

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

Given the complexity of URL matching and date-range behavior, the description covers the essential semantics well, including retention limits and error conditions. It lacks details on return format (no output schema) and pagination, but annotations and schema fill some gaps.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema by explaining exact vs prefix path matching with an example, the empty/root-path special case, and the 6-month date constraint. It omits details on per_page and account parameters, which the schema already covers.

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

Purpose5/5

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

States a specific verb (Find) and resource (media by embed location), and immediately clarifies that it returns hashed IDs of media that recorded activity at an embed URL, not the media objects themselves. This distinguishes it from siblings like get_media or get_media_embed_locations, which fetch analytics rather than media IDs.

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

Usage Guidelines4/5

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

Clearly indicates when to use it (looking up media tied to an embed URL) and points to a downstream use case (passing hashed IDs to Show Account Top Content's hashed_ids[] filter). However, it does not explicitly name or contrast with alternatives like get_media_embed_locations, which also covers embed location data.

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

Deploy Server

Other Tools