Skip to main content
Glama

Alto

Server Details

Send a finished video with one tracked link per recipient, and see who watched and how far.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A3.5/5.0

Scored across 8 tools

Disambiguation4/5

Most tools target clearly distinct resources and actions, but the upload surface includes create_upload, complete_upload, and upload_video, which could be confused without reading descriptions. The analytics tools get_moments and list_viewers also overlap in watching metrics but differ in granularity.

Naming Consistency5/5

All tool names use consistent snake_case with a predictable verb_noun pattern: complete_upload, create_link, create_upload, get_moments, list_links, list_videos, list_viewers, upload_video. There are no mixed conventions or vague standalone verbs.

Tool Count5/5

Eight tools is well-scoped for a video upload, sharing, and analytics service. Each tool has a distinct role in the workflow, and the count avoids both thinness and bloat.

Completeness3/5

Core workflows for uploading videos, creating tracked links, and listing viewers/analytics are present. However, there are notable lifecycle gaps: no update or delete operations for videos or links, and no explicit tool to disable a link despite statuses like disabled/expired being listed.

Available Tools

8 tools
complete_uploadFinish an upload and send itAInspect

Join the parts of an upload started with create_upload, create the video, and make one tracked link per recipient. Returns the video, its share link and each recipient's link.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe readable part of the link, optional.
partsYesEvery part's { part, etag }, from the PUTs.
titleYesWhat the prospect sees, e.g. "Fleet QA for Acme Logistics".
durationNoLength in seconds. Needed unless Alto can measure the file.
uploadIdYes
recipientsNoWho to send it to: one tracked link each. Strings like "Dana Whitfield <dana@acme.example>", or objects { name, email, company, title, note }.
descriptionNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so mutation is known. The description usefully adds that it creates both a video and per-recipient tracked links and returns them, but it does not warn about the non-idempotent behavior (re-running could create duplicate videos/links), which is the most consequential trait an agent needs here.

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: the first front-loads the action sequence, the second states the return values. Nothing is wasted.

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 description helpfully enumerates the return payload (video, share link, recipient links), which is what an agent needs for downstream chaining. It stops short of covering retry/non-idempotency and the duration fallback condition ('unless Alto can measure the file') that the schema alone hints at.

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 71%, so the schema documents most parameters itself. The description adds meaning only for 'recipients' via 'one tracked link each', leaving uploadId, parts, title, duration, and slug to the schema — adequate but not compensating for the uncovered remainder.

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 three concrete actions (join parts, create the video, mint one tracked link per recipient) with a specific verb+resource, and explicitly ties itself to the sibling create_upload as the originating step. An agent can distinguish it from create_link, create_upload, and upload_video 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 Guidelines4/5

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

The phrase 'an upload started with create_upload' makes the prerequisite workflow clear, so an agent knows this is the terminating step of a multi-part upload. It does not, however, address when to prefer this over the create_link sibling for single-link cases, nor any failure/retry conditions.

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

create_uploadStart an uploadAInspect

Start uploading a finished video (MP4, MOV or WebM) in parts. Returns an uploadId and one URL per part: PUT each part's exact bytes to its URL with the same Authorization header, keep the etag each PUT answers, then call complete_upload. Parts are partBytes long except the last.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesvideo/mp4, video/quicktime or video/webm.
bytesYesThe file's size in bytes.
durationNoLength in seconds, if known.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare non-readonly, non-idempotent, non-destructive. The description adds real behavioral context beyond them: the Authorization header must be reused on each PUT, the etag from each PUT must be retained, and the part-byte sizing rule. It does not say whether repeated calls create duplicate sessions or how long the uploadId stays valid.

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?

One dense paragraph, front-loaded with what the tool does and what it returns, followed by the required client steps. Every clause carries information; only the undefined 'partBytes' reference adds noise.

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 description usefully explains the return (uploadId plus one URL per part) and the complete workflow. Minor gaps remain around session lifetime, part size origin, and how this differs from the sibling upload_video.

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 type, bytes and duration are already documented. The description adds the partSize rule ('partBytes long except the last'), but partBytes is never defined as an input parameter, which leaves it ambiguous where that value comes from. 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 ('Start uploading a finished video') plus the accepted formats and the return shape (uploadId and per-part URLs). It clearly positions itself as the multipart-session opener in the upload flow, but it never distinguishes itself from the sibling upload_video, which an agent could easily confuse with this tool.

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?

Gives a clear procedural context: use this to start a part-based upload, then PUT each part's bytes, then call complete_upload. It routes to the follow-up sibling by name, but offers no explicit when-not guidance (e.g. small files or the single-shot upload_video).

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

get_momentsHow a video landedC
Read-onlyIdempotent
Inspect

Plays, how much people watched, how far each chapter reached and which one was rewatched, and where the most viewers left. Part of Pro's full API.

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNoOnly plays in this window: 90m, 24h, 7d, 2w.
videoIdYes

TDQS

C2.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds a useful access requirement by noting this is 'Part of Pro's full API,' implying a plan restriction. It does not disclose rate limits, return format, or pagination, but with annotations carrying the safety burden, a 3 is appropriate.

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 short and front-loads the measurable outcomes, which is good. However, the trailing sentence 'Part of Pro's full API' is marketing filler that does not help an agent invoke the tool correctly, and the opening lacks a clear action verb. It is concise but not maximally structured.

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 helpfully previews the returned metrics, which is the strongest part of the definition. But it omits any guidance on the required videoId parameter, the optional time-window parameter, and what the response structure looks like. For a read-only analytics tool with only two parameters, the description is adequate but leaves clear gaps.

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 only 50%: the 'since' parameter is documented in the schema, but 'videoId' has no description anywhere. The tool description never mentions either parameter or how to scope the query, so it does not compensate for the coverage gap. Given the sparse description and 2-parameter schema, the description adds no parameter-level value.

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

Purpose3/5

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

The description lists the specific metrics returned (plays, watch depth, chapter reach, rewatches, drop-off) but never supplies a clear verb or states that this tool retrieves per-moment/chapter analytics for a given video. 'Moments' is never defined, and the title 'How a video landed' is vague. It does distinguish itself from the upload/link/list siblings, so it avoids confusion, but the core purpose remains implied rather than stated.

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 when-to-use guidance or alternatives are given. The only contextual clue is 'Part of Pro's full API,' which hints at a subscription prerequisite but does not explain when an agent should call this tool instead of, say, list_videos or list_viewers. The agent is left to infer usage entirely from the returned-metrics list.

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

list_videosYour videosB
Read-onlyIdempotent
Inspect

Your library, newest first, with each video's id, title, share link and totals.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world behavior, so the safety profile is covered. The description adds useful behavioral context by disclosing sort order and the returned fields, though it says nothing about pagination or result-size limits.

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?

One front-loaded sentence that leads with the resource, then the ordering, then the return fields. Efficient with no filler, though extremely terse.

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 carries the return-value burden and does name the fields (id, title, share link, totals) plus sort order. For a zero-param read-only list with annotations covering safety, this is essentially complete.

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 tool takes no parameters, so there is nothing to disambiguate; baseline 4 applies. Schema description coverage is 100% and the empty schema is consistent with the parameterless description.

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 ('Your library' / list videos) and adds scope detail ('newest first, with each video's id, title, share link and totals'). It doesn't name a sibling, but 'library' and 'videos' implicitly separate it from list_links and list_viewers.

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 when-to-use guidance and no exclusions versus the sibling list_* tools. The agent must infer that this is the unfiltered personal library listing, with nothing routing it away from list_links or list_viewers.

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

list_viewersWho watchedB
Read-onlyIdempotent
Inspect

Everyone who opened one of your links: recipients, people their links were forwarded to, and anonymous viewers, with how much they watched and whether they're watching now.

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNo

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorld=false, so the safety profile is covered. The description usefully discloses the breadth of returned data (anonymous viewers included, live 'watching now' status), but says nothing about the filter's behavioral effect, result size, or pagination.

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?

One front-loaded sentence that leads with the core resource ('Everyone who opened one of your links') and then enumerates the useful detail. Efficient, though the comma-segmented clause stack is slightly dense.

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 description does the work of explaining what comes back (viewer types, watch amount, live status), which is appropriate for a read-only list tool. The only real omission is any explanation of the filter parameter.

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?

There is a single filter parameter with enum values (watching, engaged, dropped) and 0% schema description coverage, yet the description never mentions it or what the three states mean. The enum names are somewhat self-evident but the description does not compensate for the coverage gap.

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 resource and scope: everyone who opened one of your links, broken down by recipient, forwarded, and anonymous viewers, plus watch depth and live status. An agent can tell this is a viewer/engagement listing tool, though it never explicitly contrasts itself with siblings like list_links or get_moments.

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?

There is no when-to-use guidance, no statement of prerequisites, and no named alternative for filtering or exploring related data. The agent must infer entirely from the name and one enum parameter that this is the viewer-detail view.

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

upload_videoUpload from a URL and send itAInspect

Upload a finished video that is already online (an https URL Alto can download, up to 2 GB), create it, and make one tracked link per recipient. For a file on your machine, use create_upload.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesAn https URL of the video file.
slugNo
titleYes
durationNoLength in seconds. Needed unless Alto can measure the file.
recipientsNoWho to send it to: one tracked link each. Strings like "Dana Whitfield <dana@acme.example>", or objects { name, email, company, title, note }.
descriptionNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations declare non-read-only, open-world, non-idempotent. The description adds real context beyond that: the 2 GB cap, that the URL must be https and downloadable by Alto, and the side effect of creating one tracked link per recipient. It does not cover failure modes or whether emails are actually dispatched.

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 sentences, zero waste, with the core purpose front-loaded and the sibling routing rule trailing. Every clause carries 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?

For a 6-param creation tool with no output schema, the description covers the key inputs and side effects. Minor gap: it implies but does not state whether recipients are notified/emailed, which matters for a tool whose title says 'send it'.

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 50%; url and recipients are documented, while slug, title, duration, and description are not. The description reinforces url constraints (https, 2 GB) and the per-recipient link semantics, which is useful, but it does not compensate for the undocumented slug/duration/description parameters.

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 (upload a finished video that is already online), the mechanism (URL Alto downloads), and the downstream effect (create it, one tracked link per recipient). It explicitly distinguishes itself from the sibling create_upload for local files.

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?

Names the alternative explicitly (create_upload) and the exact condition that selects it (a file on your machine). The agent knows which of the two upload paths to pick without inspecting either schema.

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. 8 tool updates
    • First observedcomplete_upload
    • First observedcreate_link
    • First observedcreate_upload
    • First observedget_moments
    • First observedlist_links
    • First observedlist_videos
    • First observedlist_viewers
    • First observedupload_video

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources