Skip to main content
Glama

Upload media into your Soclo library

soclo_media
Idempotent

Upload media from a public https:// URL into your Soclo Library for use with soclo_post_publish. Pass url, optional filename and contentType (image/* or video/); Soclo fetches, validates and stores the file and returns the owned assetId (also searchable via soclo_library_search). Pass a stable requestId so retries return the same asset without uploading twice; reusing a requestId with different content is refused, a failed attempt replays its named error (use a new requestId to try again), and re-uploading the same URL reuses the existing copy. Refuses non-https URLs, IP literals, localhost, private/internal networks (including redirects), files over 50 MB, and bytes that do not match the declared image/ or video/* contentType. Needs publish:post.

Input Schema

NameRequiredDescriptionDefault
urlYesA public https:// URL to the media file.
filenameNoDefaults to "upload" if omitted.
requestIdNoStable id for this exact upload. REUSE it on a retry so the media is never uploaded twice. Omit to have Soclo derive one from the source.
contentTypeYesMust be image/… or video/…, e.g. image/jpeg or video/mp4, and must match the file’s real bytes.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, idempotentHint=true, openWorldHint=true): it explains requestId retry semantics, what happens on requestId reuse with different content, error replay on failed attempts, URL-dedupe behavior, the refusal list (non-https, IP literals, localhost, private networks including redirects, >50 MB, contentType/byte mismatch) and the required publish:post scope.

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?

Purpose is front-loaded in the first clause, and every subsequent clause carries distinct operational information (idempotency, refusals, scope) with no filler. It is a single dense run-on paragraph, which is heavier than ideal but not padded.

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 4-param, no-output-schema mutation tool, the description supplies the return value (owned assetId), idempotency contract, validation limits and auth scope. The main remaining gap is that it never disambiguates from the similarly named soclo_library_upload sibling.

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 100%, so the baseline is 3; the description adds real meaning on top by tying requestId to retry/replay/conflict behavior and explaining that contentType must match the file's actual bytes. It adds little about filename, but the schema already covers it.

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 (Upload) plus resource (media) and destination (Soclo Library), and names a downstream consumer (soclo_post_publish). It does not, however, distinguish itself from the near-identically named sibling soclo_library_upload, so the agent gets no help disambiguating the two.

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 clear usage context: the asset is intended for soclo_post_publish and can be located later via soclo_library_search. It offers no when-not guidance and never addresses the soclo_library_upload sibling, so the alternative-selection case is left to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources