Skip to main content
Glama

Upload a whole slide from a URL

upload_slide_from_url

Copy a whole-slide file (.svs, .ndpi, or pyramidal .tif/.tiff up to 5 GB) from an https URL into Image Label and start its analysis in the background.

Instructions

Copy a whole-slide file (.svs, .ndpi, pyramidal .tif/.tiff, up to 5 GB) from an https URL into Image Label, and start its analysis in the background (see analyze_slide).

Input Schema

NameRequiredDescriptionDefault
urlYesPublic http(s) URL of a whole-slide file (.svs, .ndpi or pyramidal .tif / .ome.tif, up to 5 GB).
nameNoDisplay name; defaults to the file name in the URL.
analyzeNoStart a sample analysis (analyze_slide) as soon as the upload finishes.
categoryNoCategory to file the slide under (list_images filters by it).
max_tilesNoTiles to analyse for a sample (default 12 with cell types, 16 without).
cell_typesNoAlso type each nucleus (tumour, immune, connective tissue, dead, normal epithelial); default on for a sample, off for full coverage.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv0.8.1
    • addedInput schema / properties / analyze / description
      Added value: +"Start a sample analysis (analyze_slide) as soon as the upload finishes."
    • addedInput schema / properties / category / description
      Added value: +"Category to file the slide under (list_images filters by it)."
    • addedInput schema / properties / cell_types / description
      Added value: +"Also type each nucleus (tumour, immune, connective tissue, dead, normal epithelial); default on for a sample, off for full coverage."
    • addedInput schema / properties / max_tiles / description
      Added value: +"Tiles to analyse for a sample (default 12 with cell types, 16 without)."
    • addedInput schema / properties / name / description
      Added value: +"Display name; defaults to the file name in the URL."
    • addedInput schema / properties / url / description
      Added value: +"Public http(s) URL of a whole-slide file (.svs, .ndpi or pyramidal .tif / .ome.tif, up to 5 GB)."
  2. Addedv0.8.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true), so the description's added value is the async behavior: analysis is kicked off 'in the background' rather than returned inline, which an agent must know. It also bounds the operation with accepted formats and a 5 GB ceiling. It does not mention that repeat uploads are non-idempotent (duplicates), which annotations flag but the description never reinforces.

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 front-loaded sentence with the core action first and the side effect second; every clause carries information an agent needs. No padding or restatement of the title.

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 an output schema present, return values need no explanation, and all six parameters are fully described in the schema. The async nature of the analysis is disclosed. Gaps are minor but real: failure/partial-upload behavior and the duplicate-creation risk of a non-idempotent upload go unmentioned.

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 100% and every parameter is documented inline, so the schema carries the semantics. The description's format and size details largely restate the 'url' parameter's own description and add no syntax or behavioral nuance beyond it. Baseline 3 applies when the schema does the heavy lifting.

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 ('Copy ... from an https URL into Image Label') and a specific resource ('whole-slide file'), plus the side effect of starting analysis. The 'whole-slide' qualifier implicitly separates it from upload_image_from_url, but the sibling tools upload_slide and upload_image_from_url are never named, so the distinction is inferred 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 Guidelines3/5

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

Usage is implied by the file-type and size constraints (use this for large pyramidal slide formats from a remote URL), and it points to analyze_slide for the follow-on behavior. There is no explicit when-to-use vs. when-not guidance, and no mention of when to prefer the local-file sibling upload_slide.

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