Skip to main content
Glama

Show It Works

Server Details

Verification videos for AI coding agents: record the run, upload over MCP, share a viewer link.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation4/5

Each tool targets a distinct action or resource, and the upload lifecycle is clearly split between create and complete. The only mild overlap is between list_videos and search_videos, but search's semantic query and ranking make the intent sufficiently clear.

Naming Consistency5/5

All tools follow a consistent snake_case verb_noun pattern: create_, complete_, delete_, get_, list_, search_. The pattern is predictable and makes the toolset easy to navigate.

Tool Count5/5

Seven tools is a well-scoped size for a video recording management server. Each tool earns its place in the upload, retrieval, search, and deletion workflow without redundancy.

Completeness5/5

The server covers the full recording lifecycle: create upload, verify/publish, delete, retrieve public link, list recordings, list tasks, and search. There are no obvious dead ends or missing operations for the stated domain.

Available Tools

7 tools
complete_video_uploadCInspect

Verify an uploaded recording and publish it.

ParametersJSON Schema
NameRequiredDescriptionDefault
videoIdYes

TDQS

C2.9/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden of behavioral disclosure. It states the core action of verifying and publishing, but it does not disclose side effects, reversibility, permission requirements, failure behavior if verification fails, or whether publishing is permanent. For a state-changing tool this is a significant 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?

The description is a single, front-loaded sentence with no filler. Every word contributes to conveying the verb and object, making it easy for an agent to parse quickly.

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

Completeness2/5

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

The tool performs a mutating publish operation with no annotations and no output schema, yet the description omits workflow context, side effects, failure semantics, and any details about what 'verify' entails. It is too sparse to be fully complete for safe invocation, even though the tool is simple.

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?

The schema provides only videoId and has 0% description coverage, so the description must compensate. The phrase 'an uploaded recording' adds minimal context that videoId identifies the recording to verify and publish, but the description does not explain the ID's origin, format, or constraints. The single self-descriptive parameter keeps this from being a lower score.

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 uses a specific action ('Verify... and publish it') and identifies a clear resource ('an uploaded recording'). It also implies a distinct lifecycle phase from siblings like create_video_upload, though it does not explicitly name or exclude sibling tools.

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 guidance is given about when to call this tool versus alternatives. There is no mention of invoking it after create_video_upload, before get_video_link, or instead of delete_video. The workflow context is only implied by the sibling names and the phrase 'an uploaded recording.'

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

create_video_uploadBInspect

Write title, taskName, ownerContext and publicContext in English (code en, locale en-US) — this project's language — and follow that locale for dates and numbers. The answer says so when what you sent is not in it. Leave code, identifiers, commands and file paths exactly as they appear in the repository, and leave worktreeName as the checkout's own directory name rather than translating it. This creates a direct R2 upload for an MP4 or WebM recording, filed under the project this API key belongs to. Worktree and task are public; ownerContext is shown to project members only, never through the public link; publicContext is shown only when explicitly supplied as public-safe.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
byteSizeYes
filenameYes
mimeTypeYes
taskNameNoConcise public task name. Omit it if the task name is not safe to publish.
ownerContextNoDetailed context shown to every member of the project, never to public-link viewers.
worktreeNameNoPublic git worktree or repository name. Omit it if the real name is not safe to publish.
publicContextNoContext explicitly confirmed safe for anyone with the public viewer link. Never derive it from private context.
workspaceNameNoDeprecated alias for worktreeName, kept for agents on an older skill version.

TDQS

B3.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden, and it does substantial work: it discloses privacy boundaries (ownerContext visible only to project members, publicContext only when public-safe), the project scoping by API key, and the locale/language requirements. It does not cover the subsequent workflow or mutations, but it provides meaningful behavioral context beyond the schema.

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?

The description is a single dense paragraph that front-loads localization instructions before stating the core 'creates a direct R2 upload' behavior. The sentence 'The answer says so when what you sent is not in it' is vague and adds confusion. It is not excessively long, but it is not ideally structured or focused.

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

Completeness2/5

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

The description never mentions what the tool returns, how to use the result to upload the video bytes, or that complete_video_upload likely must be called next. With no output schema and a sibling named complete_video_upload, this omission leaves an agent guessing about the required workflow.

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 coverage is only 56%, and the description compensates by adding real semantics for taskName, worktreeName, ownerContext, and publicContext: it explains what is public, what is private, when publicContext should be supplied, and how worktreeName should be derived. It does not add much for required parameters like filename, mimeType, or byteSize, but the schema already documents their ranges and enum.

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 that it 'creates a direct R2 upload for an MP4 or WebM recording, filed under the project this API key belongs to,' which clearly identifies the action and resource. It does not explicitly differentiate itself from siblings like complete_video_upload or get_video_link, but the 'creates' language and MIME-type scope make the primary purpose clear.

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 guidance on when to choose this tool over complete_video_upload or search_videos, nor does it mention the likely two-step flow of creating then completing an upload. Sibling names exist in context, but the description itself never references them or gives exclusion criteria.

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

delete_videoAInspect

Permanently delete a recording.

ParametersJSON Schema
NameRequiredDescriptionDefault
videoIdYes

TDQS

A3.6/5.0
Behavior3/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. It clearly discloses that deletion is permanent (irreversible), which is a critical behavioral trait. It does not detail other side effects, but for a delete tool this is the key behavior.

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?

A single sentence with no filler. It is front-loaded with the action and its permanence, and every word earns its place.

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 one-parameter, no-output-schema delete tool, the description covers the essential purpose and irreversibility. The schema provides the required parameter. It lacks return-value or error details, but those are less critical for a simple destructive action.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not mention videoId at all. The only clue is the parameter name itself, which is self-explanatory but not elaborated. The description fails to compensate for the missing schema documentation.

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?

The description states a specific verb ('permanently delete') on a specific resource ('a recording'). Among the sibling tools, only this one performs deletion, so it is immediately distinguishable.

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 intent is clear—use this tool when you need to permanently remove a recording. However, it provides no explicit guidance on when not to use it or any alternatives, leaving usage to be inferred.

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

list_tasksAInspect

List the task names already used in this API key's project, so you can reuse an existing one instead of inventing a near-duplicate. Copy taskName verbatim into create_video_upload. Names are folded case-insensitively and on whitespace, so one entry can cover several spellings, listed as variants. recordingCount is how many recordings carry the task right now, and untagged counts the recordings filed under no task at all. A name is listed while at least one of its recordings is still inside its retention window — 14 to 60 days after upload depending on the project's plan — and once the last of them reaches that deadline the name goes from this list with it. firstUsedAt/lastUsedAt are upload times. Only your own uploads are counted by default; pass mine: false to count every project member's. Without query, entries come back most-recently-used first, truncated means more names exist than limit returned, and totalTasks says how many. Other optional filters: taskName (substring), createdAfter/createdBefore (ISO timestamps), limit. A filter narrows the recordings that are counted, so the counts and dates then describe that window rather than the project's whole history. Optional query instead returns the tasks of the recordings that best match a description of the work, ordered by match quality — only the best-matching recordings nominate a task, so that answer is a shortlist rather than the project's whole vocabulary, totalTasks and truncated describe just those tasks, and untagged is omitted. The counts and dates of a task shown that way still cover every one of its recordings, not only the matching ones. query matches by meaning in any language, and a query in English (code en, locale en-US) — this project's language — also matches on wording.

ParametersJSON Schema
NameRequiredDescriptionDefault
mineNoCount only your own uploads. Defaults to true; pass false to include every project member's recordings.
limitNo
queryNo
taskNameNoSubstring of a task name, matched case-insensitively.
createdAfterNo
createdBeforeNo

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations present, the description carries the full behavioral burden and does so extensively. It discloses case/whitespace folding and variants, the 14–60 day retention window, default scoping to the caller's uploads, sort ordering, truncation semantics, and the nuanced counting behavior when filters or query are used. This goes well beyond a simple 'list' label.

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 long, but nearly every sentence carries useful information and the most important purpose is front-loaded in the first sentence. It would benefit from light structural formatting, such as separating query behavior from filter behavior, but there is little redundancy given the complexity of the tool.

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?

Despite having no output schema, the description thoroughly explains the response-relevant concepts: variants, recordingCount, untagged, firstUsedAt/lastUsedAt, truncated, and totalTasks. It also covers default ordering, retention-based visibility, and query-mode differences, giving an agent enough context to invoke the tool correctly and interpret its results even without an explicit response schema.

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

Parameters5/5

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

Schema description coverage is only 33%, so the description must compensate — and it does. It explains limit via truncation semantics, query via semantic matching and shortlist behavior, createdAfter/createdBefore as ISO timestamps affecting scope, and mine's default and override. It also adds meaning to taskName by explaining substring matching and normalized folding.

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?

The description opens with a specific action and resource: 'List the task names already used in this API key's project.' It then gives the motivating purpose (reuse an existing task name instead of inventing a near-duplicate) and names the downstream tool, create_video_upload, which clearly distinguishes this tool's role from its sibling video-management tools.

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?

The description clearly states when to use the tool — to find and reuse an existing taskName before calling create_video_upload. It also explains how different modes are selected (plain filters versus semantic query). It does not explicitly contrast this tool with list_videos or search_videos, but the task-focused purpose and the cross-reference to create_video_upload provide clear context without needing exclusions.

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

list_videosAInspect

List the recordings in this API key's project, including dashboard reviewer comments and viewed status. Expired recordings are omitted; each row's retainUntil is when that recording and its public link are deleted, and firstViewedAt is when someone first played the public link, or null if nobody has. Ignore expiresAt, which is upload-authorization plumbing and always reads as past on a published recording.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral disclosure burden and handles it well. It explains that expired recordings are omitted, defines retainUntil as the deletion time for the recording and its public link, clarifies that firstViewedAt is null until first playback, and explicitly warns to ignore expiresAt as misleading plumbing.

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 three sentences with no filler, and each sentence earns its place: the first states scope, the second explains row-field semantics, and the third prevents a likely misinterpretation. It is dense but appropriately sized for the behavioral details it must convey.

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?

There is no output schema, so the description rightly supplies return semantics for key fields and the omission of expired recordings. It could add pagination or ordering behavior, but for a parameterless list endpoint the description is largely sufficient for correct invocation and interpretation.

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?

The input schema has zero parameters and full schema coverage, so there are no parameter semantics for the description to add. The baseline of 4 applies because parameter documentation is effectively irrelevant for this parameterless tool.

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?

The description opens with a specific verb and resource, 'List the recordings in this API key's project,' and enumerates what is included (dashboard reviewer comments and viewed status). This clearly differentiates it from search_videos and list_tasks as a project-wide listing operation.

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 to use it: to retrieve all non-expired recordings for the current API key's project, with expiration behavior clarified. However, it never explicitly contrasts itself with siblings like search_videos or list_tasks, so an agent must infer the selection criteria rather than being told directly.

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

search_videosAInspect

Find recordings in this API key's project by meaning as well as by wording — describe what the session was about, or name a task, and the closest recordings come back ranked. Use it before inventing a new TASK value, to find the recordings an earlier session already filed under one. Optional filters: taskName (substring), mine (only your own uploads — unlike list_tasks, this one searches every project member's recordings unless you pass it), createdAfter/createdBefore (ISO timestamps) and limit. Expired recordings are never returned. A query in any language works, because matching is semantic; this project works in English (code en, locale en-US), and a query in that language also matches on wording, which is the more precise half.

ParametersJSON Schema
NameRequiredDescriptionDefault
mineNo
limitNo
queryYes
taskNameNoConcise public task name. Omit it if the task name is not safe to publish.
createdAfterNo
createdBeforeNo

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses that expired recordings are never returned, that matching is semantic and language-dependent, and that results are ranked. This goes beyond basic operation, though it could specify the return shape more precisely.

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 a single paragraph that is front-loaded with purpose, then usage, then filters. It's longer than average but every sentence contributes, covering rationale, filters, and caveats.

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 there is no output schema, the description explains ranking and expired exclusion, but doesn't describe result format. It covers language nuances and filter semantics, making it fairly complete for a search tool.

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 coverage is only 17% (taskName). The description explains all optional filters: taskName substring matching, mine's behavior, createdAfter/Before ISO timestamps, and limit. It adds meaning beyond the schema, though it doesn't detail the query parameter's constraints.

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?

The description clearly states it finds recordings by meaning and wording, and explicitly contrasts with list_tasks, which searches only your own uploads. This differentiates it from siblings.

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

Usage Guidelines5/5

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

It explicitly says to use it before inventing a new TASK value, and it notes that unlike list_tasks, it searches all project members' recordings unless 'mine' is passed. This provides clear when-to-use and when-not guidance.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updates
    • First observedcomplete_video_upload
    • First observedcreate_video_upload
    • First observeddelete_video
    • First observedget_video_link
    • First observedlist_tasks
    • First observedlist_videos
    • First observedsearch_videos

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources