Skip to main content
Glama

get_work_item_attachment_download_url

Generate a time-limited presigned URL for a work item attachment, enabling direct download without authentication by supplying project, work item, and attachment IDs.

Instructions

Get a presigned download URL for a work item attachment.

Returns a time-limited URL (typically valid ~1 hour) that can be opened directly in a browser or downloaded with any HTTP client — no Plane authentication required on the URL itself.

Use list_work_item_attachments first to get attachment IDs and names.

Args: project_id: UUID of the project work_item_id: UUID of the work item attachment_id: UUID of the attachment

Returns: Dict with: download_url (presigned S3 URL), attachment_id, name.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYes
work_item_idYes
attachment_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses that the URL is time-limited (~1 hour), requires no Plane authentication on the URL itself, and works in browsers or HTTP clients. It also describes the return structure. This is strong transparency, though it could note that API authentication is still required to obtain the URL or add error handling details.

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 concise, well-organized, and front-loaded with the primary purpose. It uses a clean structure with introductory sentence, usage note, Args, and Returns sections. No superfluous language — every sentence adds value.

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?

Given the tool is a simple URL fetcher with 3 parameters and no formal output schema, the description fully covers the necessary context: what it does, the prerequisite step, parameter meanings, return shape, and key behavioral details (time limit, no auth on URL). It is complete enough for an agent to invoke correctly without additional documentation.

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?

The input schema provides no descriptions (0% coverage), so the description's Args section is essential. It lists all three parameters with clear semantic comments ('UUID of the project', 'UUID of the work item', 'UUID of the attachment'). This adds meaning beyond bare schema names, though it could further explain how to obtain each (e.g., via list_work_items), which is done only implicitly.

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 clearly states 'Get a presigned download URL for a work item attachment' — a specific verb, resource, and output. It distinguishes this tool from siblings like read_work_item_attachment (which likely returns content) and upload_work_item_attachment_from_url by emphasizing it provides a URL for direct download.

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 explicitly instructs 'Use list_work_item_attachments first to get attachment IDs and names,' providing a clear prerequisite. It also explains the URL's behavior (browser or HTTP client, no Plane auth required). It does not explicitly mention when not to use this tool or compare with alternatives, but the context is sufficient for basic guidance.

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

Install Server

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/leigangzhang/plane-mcp-server-adapter'

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