Skip to main content
Glama

api.video MCP by usefulapi

Server Details

Manage videos and live streams, inspect captions, players and webhooks, and read play analytics.

Ownership verified

The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.

If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.

Status
Unhealthy
Uptime
75.1% over 77 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
m190/usefulapi-mcp
GitHub Stars
0

TDQS

A3.7/5.0

Scored across 15 tools

Disambiguation5/5

Each tool targets a distinct resource+action pair (e.g. create_live_stream vs get_live_stream, get_video vs get_video_status vs get_video_analytics). The read/write markers and unique resources leave no realistic room for misselection.

Naming Consistency5/5

Every tool follows the identical apivideo_<verb>_<noun> snake_case pattern. Verbs (create/get/list/update/delete) and nouns are used predictably throughout with no style deviation.

Tool Count5/5

15 tools is well within the healthy range and each maps to a concrete endpoint, so none feel redundant or bloated. The set is scoped tightly to the core video/live-stream/analytics surface.

Completeness3/5

Videos have full CRUD, but live streams lack update/delete/stop, and captions, chapters, players, and webhooks are read-only (list only) despite being writable resources in api.video. These notable gaps will block common workflows.

Available Tools

15 tools
apivideo_create_live_streamCreate live stream (write)A
Destructive
Inspect

WRITE. Create a new live stream, returning a stream key and RTMP ingest URL to broadcast to. POST /live-streams.

NameRequiredDescriptionDefault
nameYesLive stream name. Required.
publicNoWhether the stream is public (default true) or private.
playerIdNoId of a custom player theme to attach.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations only carry destructiveHint=true, so the description must supply the rest. It does disclose the meaningful behavioral payoff (returns a stream key and RTMP ingest URL), which is real added value, but says nothing about permissions, quotas, or whether the created stream is immediately live — gaps for a creation tool with thin annotations.

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 short sentences, front-loaded with the write marker and the action before the endpoint. The 'POST /live-streams' fragment is marginally redundant but cheap and keeps it well under any length concern.

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?

No output schema exists, and the description compensates by naming the returned stream key and RTMP ingest URL — the key information an agent would otherwise lack. With 100% param coverage and a low-complexity flat schema, only auth/rate-limit context is missing.

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 description coverage is 100%, so name, public, and playerId are fully documented in the schema already. The description adds no parameter-level meaning beyond that, which is the expected baseline when the schema does the work.

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 and resource ('Create a new live stream') and additionally names the concrete artifacts returned — a stream key and RTMP ingest URL. This cleanly separates it from the get/list live-stream siblings without needing their schemas.

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 create-vs-read distinction is implied by the tool name and the 'WRITE.' marker, but the description never states when to choose this over siblings like list_live_streams or get_live_stream, nor any prerequisites (e.g. account/plan limits). Usage is inferable but not articulated.

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

apivideo_create_videoCreate video (write)A
Destructive
Inspect

WRITE. Create a new video object. If source (a public video URL) is provided, api.video ingests the video from that URL — recommended for hosted use, since raw file bytes cannot stream through MCP. POST /videos.

NameRequiredDescriptionDefault
tagsNoTags for the video.
titleYesVideo title. Required.
publicNoWhether the video is public (default true) or private.
sourceNoPublic URL of a video file to ingest from. Recommended over uploading bytes.
metadataNoKey/value metadata pairs (sent as [{key,value}]).
playerIdNoId of a custom player theme to attach.
panoramicNoWhether the video is a 360/panoramic video.
mp4SupportNoWhether to also generate a downloadable MP4.
descriptionNoVideo description.

TDQS

A4/5.0
Behavior4/5

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

Annotations only supply destructiveHint=true; the description adds real context beyond that: the 'WRITE' marker, the ingestion-from-URL behavior, and the platform limitation that raw file bytes cannot stream through MCP. It does not explain why the operation is flagged destructive, which is a minor gap.

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

Conciseness5/5

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

Three compact sentences, front-loaded with the WRITE marker and the action, followed by the most decision-relevant guidance. No filler or redundant restatement.

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?

For a nine-parameter creation tool with 100% schema coverage and no output schema, the description covers the action, the key ingestion path, and the caller-side constraint. It stops short of noting what the created object returns or any permission/quota requirements.

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 description coverage is 100%, so all nine parameters are already self-documented. The description highlights `source` semantics (public URL, ingestion, recommended over byte upload), which largely restates the schema's own wording rather than adding new meaning.

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 and resource ('Create a new video object') and is unambiguously distinguishable from siblings like apivideo_get_video, apivideo_list_videos, and apivideo_update_video. The 'WRITE' prefix and POST /videos endpoint reinforce the operation class.

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 description gives a conditional usage hint for the `source` path (use a public URL instead of raw bytes) and explains the MCP transport constraint, but never states when to choose this tool over update_video or when creation is inappropriate. Usage is implied rather than explicit.

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

apivideo_delete_videoDelete video (write)A
Destructive
Inspect

WRITE. Permanently DELETE a video and all its assets. This cannot be undone. DELETE /videos/{videoId}.

NameRequiredDescriptionDefault
videoIdYesThe video id to permanently delete.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, so the safety profile is partly covered. The description adds genuinely new context beyond that: the deletion is permanent, cascades to 'all its assets,' and the underlying endpoint is DELETE /videos/{videoId}. It stops short of stating auth/permission requirements or what happens on a missing videoId.

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

Conciseness5/5

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

Three short fragments, front-loaded with the WRITE marker and the irreversible consequence before the endpoint. Every clause carries information; nothing is padded.

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

Completeness5/5

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

For a single-parameter destructive tool with no output schema, the description covers the essentials: destructiveness, cascade scope, irreversibility, and the endpoint. Nothing an agent needs to call it correctly is missing.

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?

Only one parameter, and schema description coverage is 100% — the schema already documents videoId as 'The video id to permanently delete.' The description restates the same idea and adds no format, sourcing, or validation detail, so the baseline 3 applies.

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 (DELETE) and resource (video), and adds scope: 'and all its assets.' An agent can distinguish it from apivideo_get_video, apivideo_update_video, and the create/list siblings without opening any schema.

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?

Usage is implied rather than stated — there is no explicit when-to-use vs. alternatives, and no mention of a non-destructive sibling (e.g., update or archive) for cases where removal is not intended. The 'This cannot be undone' warning gives useful decision context, but routing guidance is absent.

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

apivideo_get_live_streamGet live streamA
Read-only
Inspect

Get a single live stream object by id (stream key, RTMP ingest, player URL). Read-only. GET /live-streams/{liveStreamId}.

NameRequiredDescriptionDefault
liveStreamIdYesThe live stream id, e.g. li400mYKSgQ6xs7taUeSaEup.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's 'Read-only' is largely redundant reinforcement. It does add useful context by naming the returned content and the underlying endpoint GET /live-streams/{liveStreamId}, which confirms a non-mutating fetch, but adds nothing about error behavior or whether a missing id returns null vs error.

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?

Front-loaded with the verb and resource in one sentence, followed by two short fragments. Slightly padded by the redundant 'Read-only' and the raw endpoint spec, but overall tight and scannable.

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?

For a trivial one-parameter read with 100% schema coverage and no output schema, the description covers purpose, id-based retrieval, and highlights the meaningful returned fields, which compensates for the absent output schema. It is adequate, though it omits what happens on a bad or unknown id.

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 description coverage is 100% and the single liveStreamId parameter is fully documented with a format example, so the schema does the heavy lifting. The description only restates 'by id' and adds no format or constraint detail beyond it, matching the baseline.

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+resource ('Get a single live stream object by id'), and the word 'single' implicitly contrasts with the sibling apivideo_list_live_streams. It also names the concrete fields returned (stream key, RTMP ingest, player URL), so the agent knows exactly what this retrieves.

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 phrase 'by id' implies the lookup-by-identifier use case versus listing, but there is no explicit guidance on when to prefer this over apivideo_get_live_stream_analytics or apivideo_list_live_streams. Usage must be inferred from the name and scope.

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

apivideo_get_live_stream_analyticsLive stream analytics (plays)B
Read-only
Inspect

Aggregated play analytics for live streams over a date range, grouped by a dimension. Read-only. GET /analytics/live-streams/plays.

NameRequiredDescriptionDefault
toNoEnd date yyyy-mm-dd (inclusive).
fromYesStart date yyyy-mm-dd (inclusive). Required.
filterNoFilter expression, e.g. "liveStreamId:li123".
pageSizeNoResults per page (max 100). Default 25.
dimensionYesDimension to group plays by.
currentPageNoPage number (1-based). Default 1.

TDQS

B3.1/5.0
Behavior2/5

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

The description repeats 'Read-only', which the readOnlyHint annotation already declares, adding no new behavioral context. It says nothing about pagination behavior (despite pageSize/currentPage params), whether empty date ranges are allowed, or auth needs, so it carries no extra information beyond the structured fields.

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

Conciseness3/5

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

It is short and front-loads the core purpose, but one of its three sentences restates the annotation ('Read-only') and another restates the endpoint path (GET /analytics/live-streams/plays), neither of which earns much space.

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?

With no output schema, the description could reasonably explain the return shape (aggregated metric values grouped by the chosen dimension) and the page-based pagination, but it does not. It is minimally adequate for a read-only analytics query whose safety profile is already covered by annotations.

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 description coverage is 100%, so the schema already documents from/to, filter, pageSize, currentPage, and the dimension enum. The description only restates that results are grouped by a dimension and bounded by a date range, adding no format or syntax detail beyond the schema.

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?

The description states a specific verb and resource ('Aggregated play analytics for live streams') plus scope (date range, grouped by dimension), which is enough to separate it from apivideo_get_video_analytics by resource type. It stops short of explicitly naming that sibling as the alternative, so it is clear but not fully differentiated.

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?

Usage is only implied: an agent can infer this is the tool for live-stream plays rather than video plays, but there is no explicit when-to-use statement, no mention of when to prefer apivideo_get_video_analytics, and no guidance on how the filter parameter should be scoped.

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

apivideo_get_videoGet videoA
Read-only
Inspect

Get a single video object by id (title, assets, player URL, status flags). Read-only. GET /videos/{videoId}.

NameRequiredDescriptionDefault
videoIdYesThe video id, e.g. vi4k0jvEUuaTdRAEjQ4Jfrgz.

TDQS

A3.6/5.0
Behavior3/5

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

readOnlyHint=true is already in the annotations, so 'Read-only' repeats structured data and earns no credit. The only added context is the underlying endpoint (GET /videos/{videoId}); nothing is said about not-found behavior, auth, or rate limits, though the annotation lowers the bar for a simple read.

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

Conciseness5/5

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

Three short clauses, front-loaded with purpose, then safety, then endpoint. No sentence is wasted and nothing important is buried.

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?

With no output schema, the parenthetical listing of returned fields (title, assets, player URL, status flags) usefully compensates, and the single required parameter is fully documented. Error behavior for an unknown id is the only notable omission.

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 description coverage is 100% and the schema already provides the videoId parameter along with a concrete example value. The description's 'by id' adds no syntax or format detail beyond the schema, so baseline 3 applies.

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 and resource ('Get a single video object by id') and enumerates what the object contains (title, assets, player URL, status flags), which separates it from list_videos and the analytics/status siblings. It stops short of naming those siblings explicitly, so it is clear but not fully differentiated.

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?

Usage is implied by 'by id' – the agent can infer this is the fetch-one-object path – but there is no statement of when to prefer it over apivideo_get_video_status, apivideo_get_video_analytics, or apivideo_list_videos, and no prerequisites are given.

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

apivideo_get_video_analyticsVideo analytics (plays)A
Read-only
Inspect

Aggregated play analytics for videos over a date range, grouped by a dimension. Read-only. GET /analytics/videos/plays.

NameRequiredDescriptionDefault
toNoEnd date yyyy-mm-dd (inclusive).
fromYesStart date yyyy-mm-dd (inclusive). Required.
filterNoFilter expression, e.g. "videoId:vi123".
pageSizeNoResults per page (max 100). Default 25.
dimensionYesDimension to group plays by.
currentPageNoPage number (1-based). Default 1.

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, so the description's 'Read-only' line largely repeats structured data. It adds the aggregation semantics and the endpoint path, but discloses nothing about pagination behavior, rate limits, or how the aggregation is returned.

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

Conciseness5/5

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

Two short sentences, front-loaded with the core purpose before the read-only and endpoint details. No wasted words and nothing buried.

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?

With a fully-described 6-parameter schema and readOnlyHint annotation, the description covers what an agent needs to invoke the tool. The main gap is the absent output schema: since the return format (aggregated counts bucketed per dimension value) is never described, the agent must infer the response shape.

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 description coverage is 100%, so all six parameters (from, to, filter, pageSize, dimension, currentPage) are already documented in the schema, including the enum values for dimension. The description adds only the high-level notion of date-range plus dimension grouping, which is baseline-level value at this coverage.

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 resource (aggregated play analytics for videos), scope (date range), and grouping behavior (by a dimension), plus the underlying endpoint. It implicitly distinguishes itself from the sibling apivideo_get_live_stream_analytics by scoping to videos, but never names that sibling explicitly.

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?

Usage is implied by the specificity of the purpose — an agent can infer this is for aggregated play metrics rather than raw video data. However, there is no explicit when-to-use, no when-not-to-use, and no routing between this and apivideo_get_live_stream_analytics.

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

apivideo_get_video_statusGet video statusA
Read-only
Inspect

Get encoding and ingest status for a video (upload progress, encoding qualities, playability). Read-only. GET /videos/{videoId}/status.

NameRequiredDescriptionDefault
videoIdYesThe video id.

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, and the description merely restates 'Read-only' rather than adding new safety context. It does contribute behaviorally useful detail by naming what the status payload contains and giving the underlying endpoint path, which partially compensates for the absent output schema.

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

Conciseness5/5

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

Two compact sentences with the purpose and return facets front-loaded, followed by the safety note and endpoint. Nothing is redundant or padding.

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?

For a single-parameter read tool with readOnlyHint annotations and no output schema, the description covers purpose, return contents, and endpoint adequately. It only lacks explicit guidance on when to prefer it over apivideo_get_video, and details like polling behavior for in-progress encoding.

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?

There is a single parameter with 100% schema description coverage, so the schema already carries the semantics and the baseline is 3. The description only implies that videoId is a path segment via 'GET /videos/{videoId}/status', adding no format or sourcing guidance beyond the schema.

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?

The description pairs a specific verb (get) with a specific resource and scope (encoding and ingest status), and the parenthetical enumerates the returned facets (upload progress, encoding qualities, playability). This distinguishes it in substance from apivideo_get_video and apivideo_get_video_analytics, though it never names a sibling explicitly.

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?

Usage is implied by the scope: reach for this when you need encoding/ingest state rather than full metadata. There is no explicit when-to-use statement, no when-not, and no named alternative, so the agent must infer the routing from the sibling list.

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

apivideo_list_captionsList captionsA
Read-only
Inspect

List caption tracks for a video (language, source URL, default flag). Read-only. GET /videos/{videoId}/captions.

NameRequiredDescriptionDefault
videoIdYesThe video id.
pageSizeNoResults per page (max 100). Default 25.
currentPageNoPage number (1-based). Default 1.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description's 'Read-only' is largely redundant. It does add the underlying HTTP route (GET /videos/{videoId}/captions), which is mild extra context, but it says nothing about pagination behavior or result ordering beyond what the schema implies.

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

Conciseness5/5

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

Two tightly written sentences with no filler; the core purpose and returned fields are front-loaded before the safety and route notes. Every sentence earns its place.

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?

For a simple read-only list endpoint, the description plus annotations and a fully documented schema cover what an agent needs. The brief mention of returned fields partially compensates for the absent output schema, though it does not describe pagination or total-count semantics.

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 description coverage is 100%, so videoId, pageSize, and currentPage are already documented with defaults and bounds. The parenthetical list in the description refers to response fields rather than parameters, so it adds no parameter meaning beyond the schema. Baseline 3 applies.

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 and resource ('List caption tracks for a video') and even enumerates the returned fields (language, source URL, default flag). This distinguishes it cleanly from siblings like apivideo_list_chapters and apivideo_get_video without needing to open any schema.

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?

Usage is implied by 'for a video' with a required videoId, but there is no explicit when-to-use guidance, no statement of prerequisites (e.g. auth/permissions), and no named alternative to compare against. Adequate but with clear gaps.

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

apivideo_list_chaptersList chaptersB
Read-only
Inspect

List chapter tracks for a video. Read-only. GET /videos/{videoId}/chapters.

NameRequiredDescriptionDefault
videoIdYesThe video id.
pageSizeNoResults per page (max 100). Default 25.
currentPageNoPage number (1-based). Default 1.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so 'Read-only' in the description is largely redundant, though it reinforces the safety profile. The added GET endpoint is minor context but the description says nothing about pagination behavior, result ordering, or scope limits, which is the kind of detail that would earn credit beyond the annotations.

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?

Three short fragments, front-loaded with the core action and free of filler. The 'Read-only' clause repeats the annotation and the endpoint fragment is marginal, slightly reducing signal density.

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?

For a simple read-only list tool, annotations cover safety and the schema covers all inputs, so the description needn't explain the response. It lacks only notes on pagination semantics (already partly in schema) and any scope constraints, leaving it nearly complete.

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 description coverage is 100%, with all three parameters (videoId, pageSize, currentPage) documented including defaults and max values. The description adds no parameter meaning beyond the schema, so the baseline 3 applies.

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 and resource ('List chapter tracks for a video'), which is unambiguous and distinguishable from siblings like apivideo_list_captions or apivideo_list_videos by the 'chapters' resource. It stops short of explicitly naming when to prefer it over related list tools, so it's clear but not sibling-differentiating at the highest level.

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

Usage Guidelines2/5

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

The description gives no when-to-use context, no prerequisites (e.g., that the video must exist or be owned), and no comparison to alternatives. 'Read-only' hints at the safe-read context but is not usage guidance.

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

apivideo_list_live_streamsList live streamsB
Read-only
Inspect

List live streams in the account, with optional filters (streamKey, name) and sorting. Read-only. GET /live-streams.

NameRequiredDescriptionDefault
nameNoFilter by live stream name (substring).
sortByNoField to sort by.
pageSizeNoResults per page (max 100). Default 25.
sortOrderNoSort direction.
streamKeyNoFilter by exact stream key.
currentPageNoPage number (1-based). Default 1.

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, and the description's 'Read-only' merely restates it. Beyond that it adds only the HTTP endpoint ('GET /live-streams'), disclosing nothing about pagination behavior, default result sets, or account-scoping rules that the annotations don't already cover.

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?

Three short sentences, front-loaded with the core purpose, no padding or filler. The only waste is the redundant 'Read-only' clause, which duplicates the annotation.

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?

With six optional parameters, no output schema, and no annotations describing return shape, the description leaves the result structure and pagination semantics (pageSize default 25, currentPage 1-based) entirely to the schema. Adequate to invoke the tool, but thin for a tool whose only job is returning a paged collection.

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 description coverage is 100%, so every parameter is already documented in the schema. The description names two filters (streamKey, name) and mentions sorting, which mirrors rather than extends the schema — the correct baseline of 3 when the schema does the heavy lifting.

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 and resource ('List live streams in the account') with the added scope of optional filters and sorting, which separates it from the singular apivideo_get_live_stream. It does not name any sibling outright, but the list-vs-get distinction is inferable from the plural resource.

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?

Usage is implied by the plural/list framing — this is the browse-and-filter operation versus get_live_stream for a single item — but the description never states when to prefer this over siblings or what prerequisites exist. No exclusions or alternatives are given, leaving the agent to infer the distinction.

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

apivideo_list_playersList playersB
Read-only
Inspect

List customized player themes in the account. Read-only. GET /players.

NameRequiredDescriptionDefault
sortByNoField to sort by.
pageSizeNoResults per page (max 100). Default 25.
sortOrderNoSort direction.
currentPageNoPage number (1-based). Default 1.

TDQS

B3.2/5.0
Behavior3/5

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

The 'Read-only' phrase merely restates the readOnlyHint=true annotation and earns no credit. The only added behavioral fact is the GET /players endpoint. Pagination behavior, sort defaults, and account scoping are left to the schema, so with annotations covering safety this is a minimal addition.

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?

Three compact fragments with no filler, front-loading the resource. It is appropriately short for a simple list endpoint, though the 'Read-only. GET /players.' trailer adds little to the first 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 read-only list with no output schema and complete param documentation, the description is adequate but thin. It does not resolve the players/player-themes naming and says nothing about what the response contains, though the absence of an output schema makes that omission less costly.

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 description coverage is 100% with all four optional paging/sorting params fully documented and two enums typed, so the baseline of 3 applies. The description adds no param syntax or default detail beyond the schema.

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 (List) and resource (customized player themes) plus the underlying endpoint. Minor inconsistency: the tool is named list_players but the description calls the resource 'player themes', which an agent must reconcile. No siblings target players, so no sibling differentiation is needed.

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

Usage Guidelines2/5

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

No statement of when to use this tool or under what conditions (e.g., paging through large accounts, filtering). It only gives the HTTP verb, leaving usage entirely to inference. There are no direct alternatives among siblings, which softens the gap but does not excuse the absence of guidance.

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

apivideo_list_videosList videosB
Read-only
Inspect

List videos in the account, with optional filters (title, tags, metadata, description, liveStreamId) and sorting. Read-only. GET /videos.

NameRequiredDescriptionDefault
tagsNoFilter by tags (all must match). Sent as tags[].
titleNoFilter by video title (substring).
sortByNoField to sort by.
metadataNoFilter by metadata key/value pairs. Sent as metadata[key]=value.
pageSizeNoResults per page (max 100). Default 25.
sortOrderNoSort direction.
currentPageNoPage number (1-based). Default 1.
descriptionNoFilter by description (substring).
liveStreamIdNoReturn only videos recorded from this live stream id.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description reinforces 'Read-only' plus the GET /videos endpoint. Beyond the safety profile it discloses nothing about pagination behavior, defaults, or response shape. With annotations carrying the safety load, this adds only marginal context.

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 compact sentences that front-load the action and scope, then add the read-only/endpoint note. Slightly list-heavy but no waste.

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 9-parameter read tool with an output schema absent, the description omits return format and pagination behavior. Annotations cover safety and the schema covers parameters, so it is functional but thin on behavioral completeness.

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 description coverage is 100%, so every parameter is already documented with syntax (e.g., tags[], metadata[key]=value) and defaults. The description's filter enumeration (title, tags, metadata, description, liveStreamId) repeats rather than extends what the schema provides, which matches the baseline 3 for full coverage.

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 (List) and resource (videos in the account) and enumerates the filter dimensions. It is clearly distinguishable from apivideo_get_video (singular retrieval), but doesn't explicitly say how it differs from sibling list operations like list_live_streams.

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?

Usage is implied: it's a filtered listing tool. There is no explicit when-to-use or when-not-to-use guidance, nor does it name alternatives such as search-style siblings. Adequate but with a clear gap.

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

apivideo_list_webhooksList webhooksA
Read-only
Inspect

List webhooks configured in the account, optionally filtered by event name. Read-only. GET /webhooks.

NameRequiredDescriptionDefault
eventsNoFilter by event name, e.g. "video.encoding.quality.completed".
pageSizeNoResults per page (max 100). Default 25.
currentPageNoPage number (1-based). Default 1.

TDQS

A3.7/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, so 'Read-only' is a repetition of structured data rather than new information. It adds only the account-wide listing scope and the 'GET /webhooks' endpoint, but discloses nothing about pagination behavior or return shape beyond what the schema already provides.

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?

Three short clauses, front-loaded with the purpose and no wasted preamble. The trailing 'GET /webhooks' is redundant REST detail that a tool caller cannot act on, which mildly dilutes the otherwise efficient structure.

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?

For a simple read-only list endpoint with annotations covering safety, a fully described schema, and no output schema requirement, the description covers purpose, scope, and filter adequately. Additional pagination guidance would be the only marginal improvement.

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 description coverage is 100%, so all three parameters (events, pageSize, currentPage) are already documented with examples and defaults. The description merely echoes the event filter and adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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 (List) and resource (webhooks) plus the scope ('configured in the account') and the optional filter dimension. No sibling in the provided list competes with the webhooks resource, so an agent can identify this tool unambiguously.

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 description implies when the tool is used ('List webhooks configured in the account, optionally filtered by event name') but gives no explicit when-to-use versus alternatives, no prerequisites, and no pointer to related tools such as a create/delete webhook counterpart.

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

apivideo_update_videoUpdate video (write)A
Destructive
Inspect

WRITE. Update fields on an existing video. Only the provided fields are changed. PATCH /videos/{videoId}.

NameRequiredDescriptionDefault
tagsNoReplacement tag list.
titleNoNew title.
publicNoNew public/private flag.
videoIdYesThe video id to update.
metadataNoReplacement metadata (sent as [{key,value}]).
playerIdNoPlayer theme id to attach.
panoramicNoNew panoramic flag.
descriptionNoNew description.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations supply destructiveHint=true only, so the description's disclosure that unlisted fields are left intact is genuinely useful context that tempers a naive full-replacement assumption. It still does not say what the call returns, whether changes are immediately applied, or whether permissions beyond a normal API key are needed.

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

Conciseness5/5

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

Four short fragments with the operation type front-loaded as 'WRITE', the mutation target next, and the partial-update rule before the endpoint. No sentence is wasted.

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 an 8-parameter mutation tool with only a destructiveHint annotation and no output schema, the definition is minimally adequate: the write nature and partial-update behavior are covered, but response shape, side effects on linked resources, and error/permission conditions are absent.

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 description coverage is 100%, so every one of the 8 parameters is documented in the schema, including the replacement semantics of tags and metadata. The description adds no syntax, defaulting, or format detail beyond the schema, so the baseline 3 applies.

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 (update), resource (video), scope (existing video), and the exact HTTP operation (PATCH /videos/{videoId}). This inherently separates it from apivideo_create_video, apivideo_delete_video, and apivideo_get_video, so an agent can route to it without opening a schema.

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?

'Only the provided fields are changed' implies partial-update usage, and the leading 'WRITE' flags it as a mutation. However, no explicit when-to-use/when-not guidance or named alternative (e.g., create vs update vs delete) is given, leaving routing to inference.

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage videos on PlayVideo, including collections, videos, webhooks, embed settings, API keys, and account management.
    5 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables an AI assistant to run cloud live streaming end to end: starting and stopping broadcasts, reordering playback queues, searching and organizing the media library, planning stream schedules, and managing multistream destinations. It connects over a remote Streamable HTTP endpoint secured with OAuth or a personal access token, applying the same validation, ownership rules, and rate limits as the public REST API.
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to manage Vimeo video libraries through natural language, including bulk folder operations, transcripts, chapters, captions, showcases, tags, privacy, and embed presets.
    43
    10 npm
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Manage a YouTube channel through official Google APIs — videos, comments, playlists, live broadcasts, captions, and analytics — plus an auditable giveaway suite for comment-entry giveaways with deterministic winner drawing.
    51
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.