Skip to main content
Glama

Import a file from a URL

fetch_asset

Pull an image, video, audio file or PDF at a public URL into the media library as a media key. A fetched file is reference material until you know you may republish it. Free: nothing is charged. Needs the write scope.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "url": "<url>"
    },
    "name": "fetch_asset"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlYesThe absolute URL of the file itself, not the page around it.
purposeNoWhy you want it. 'publish-candidate' commits you to stating the rights argument in the plan.
budgetUsdNoOptional: the most this call may spend, in dollars, default 2, max 10.

Output Schema

NameRequiredDescriptionDefault
toolYes
mediaYes
outputNoThe tool's own result, shaped by the tool.
chargedUsdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.8/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false, openWorldHint=true), the description adds the write-scope requirement and a rights caveat that the import does not itself grant republishing rights. The statement 'Free: nothing is charged' sits awkwardly against the budgetUsd parameter (default 2, max 10), which implies a spend cap, creating mild ambiguity about cost behavior.

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 that front-load what the tool does, then the rights caveat, then cost and auth. Nothing is padded, though the 'Free: nothing is charged' line is potentially misleading given the budgetUsd parameter and would be better clarified or dropped.

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?

An output schema exists, so return values need no explanation; the description still covers the artifact produced (a media key), the auth scope, the cost posture, and the rights caveat. For a three-parameter import tool that is sufficient for an agent to call it correctly.

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 url, purpose, and budgetUsd are already documented, including the enum meaning. The description reinforces the 'media key' output but adds no new syntax, defaults, or format detail beyond the schema, so the baseline of 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?

The description opens with a specific verb and resource ('Pull an image, video, audio file or PDF at a public URL into the media library as a media key') and names the accepted file types plus the resulting artifact. It does not explicitly distinguish itself from near-neighbours such as find_photo, generate_image, or references_add, so an agent must infer the difference from the wording alone.

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?

'A fetched file is reference material until you know you may republish it' gives real guidance on the consequences of importing, and 'Needs the write scope' sets a precondition. However, there is no explicit when-to-use versus alternatives guidance (e.g., fetch an existing URL vs. generate or search for media), leaving selection between siblings implicit.

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.