Skip to main content
Glama
MediaShareORG

YourImageShare

Official

Upload an image or video

upload_image

Upload an image or video and get back three shareable links: a raw storage link, an embeddable link, and a shareable page link. Accepts common image formats and video from a local path or base64 data.

Instructions

Upload an image or video to YourImageShare and get back a shareable link. Accepts JPG, PNG, GIF, WEBP, AVIF, BMP, TIFF, HEIC/HEIF images and MP4, WEBM, AVI video, 100KB-200MB. Provide path for a file on disk this server can read, or base64 + filename for in-memory content (e.g. no local filesystem access) - never both. Returns three different URLs for the same upload (see output fields): a raw storage link, a direct embeddable link, and a shareable page link - pick whichever fits where it's going. Errors (oversized/unsupported file, bad API key, rate limit) come back as a normal tool error, not a thrown exception.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathNoLocal file path to upload.
base64NoBase64-encoded file contents. Requires `filename`.
filenameNoFilename to use. Required with `base64`; inferred from `path` otherwise.
expiresInNoAuto-delete after this many seconds (60 to 2,592,000 = 30 days). Omit for a permanent upload.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesUnique identifier for this upload. Pass to delete_upload to remove it.
srcYesDirect/embeddable file URL - use this for <img>/<video> src attributes.
pathYesRaw storage URL - the literal file, e.g. i.yourimageshare.com/xxx.webp.
typeYes
directYesThe shareable page URL (title, description, comments, share buttons). Despite the field name, this is NOT a direct file link - use `src` for that.
expires_atYesISO 8601 auto-delete timestamp, or null if the upload never expires.
Install Server

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=false, destructiveHint=false), the description discloses important behavior: it creates an upload, returns three distinct URL types, supports optional auto-deletion via expiresIn, and returns errors as normal tool errors rather than exceptions. This gives the agent a clear behavioral model without contradicting 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.

Conciseness5/5

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

The description is dense but every sentence contributes: accepted types, size limits, input modes, mutual exclusivity, return URL purposes, and error behavior. It is front-loaded with the core purpose and then details the constraints. No filler or redundant restating of the title.

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 tool with 4 optional-looking parameters, practical constraints, an output schema, and no explicit required fields, the description fully compensates. It clarifies the real requirement (either path or base64+filename), describes what the agent can expect as output, and covers failure modes. The agent can invoke this tool correctly with minimal additional inference.

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?

Although schema description coverage is 100%, the description adds critical semantic constraints not visible in the schema: path and base64+filename are mutually exclusive, filename is required with base64 but inferred from path, and expiresIn controls auto-deletion. It also explains what the return URLs mean, adding value beyond the raw parameter definitions.

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 and resource: 'Upload an image or video to YourImageShare and get back a shareable link.' It clearly distinguishes this tool from its siblings list_uploads and delete_upload by focusing on the creation/upload action rather than listing or deleting.

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 gives clear context for when to use this tool: uploading images/videos, with accepted formats and size range. It also explains the two input modes (path vs base64+filename) and when each is appropriate, including the 'never both' rule. It doesn't explicitly name sibling alternatives for when-not-to-use, but the upload vs list/delete distinction is obvious.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MediaShareORG/yourimageshare'

If you have feedback or need assistance with the MCP directory API, please join our Discord server