Skip to main content
Glama
ebrindley
by ebrindley

Cursor: get artifact download URL

cursor_get_artifact_url
Read-onlyIdempotent

Get a presigned URL to download a specific artifact from a Cursor Cloud Agent session, valid for 15 minutes, using the artifact path from cursor_list_artifacts.

Instructions

Mint a 15-minute presigned download URL for one artifact path from cursor_list_artifacts.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesArtifact path exactly as cursor_list_artifacts returned it.
agentIdYesAgent id, in `bc-<uuid>` form.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
expiresAtNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare the operation as read-only, idempotent, and non-destructive. The description adds valuable behavioral detail: the generated URL expires in 15 minutes, and it applies to exactly one artifact path. This goes beyond annotation scope and gives the agent timing and scope knowledge.

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 sentence that front-loads the core action (minting a 15-minute presigned URL) and immediately ties it to the source tool. Every word earns its place; there is zero filler or redundancy.

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?

The tool is simple with two well-documented parameters, an output schema is present (so return format is covered), and the description covers the essential behavioral aspect (time-limited URL). No critical operational guidance is missing for an agent to correctly invoke this tool.

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 both parameters are fully documented. The description adds semantic value by referencing 'as cursor_list_artifacts returned it,' clarifying that the path must match the exact output of the listing tool, which is not stated in the schema. This is a meaningful addition beyond the schema.

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 ('Mint'), a precise resource (a 15-minute presigned download URL), and scopes it to a single artifact path sourced from cursor_list_artifacts. This clearly differentiates it from sibling tools like cursor_get_agent or cursor_list_artifacts, and avoids any tautology.

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 'from cursor_list_artifacts' explicitly indicates the prerequisite step: the agent must first call cursor_list_artifacts to obtain a valid path. While it doesn't spell out when not to use this tool or name alternatives, the context is clear that this is the download step after listing. It conveys usage context well, though lacks explicit exclusionary guidance.

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