Project workspace

get-work-item-attachments-tool

List the files attached to a work item, with short-lived download URLs the AI client can fetch directly.

Returns one row per file uploaded into the work item's attachments media collection, with a download URL that the calling client can fetch over plain HTTP. Useful when the work item description or a comment references an image or document and the AI client needs the file content itself, not just the file name.

URLs are short-lived: on cloud storage (R2 / MinIO / S3) they are pre-signed and require no further auth, on local-disk development environments they resolve to the auth-protected /media/{id} route — which only accepts a logged-in session, so dev URLs are mostly useful for the in-app UI and not for an external MCP client.

Inputs

NameTypeRequiredDescription
work_item_keystringyesIssue key of the work item (e.g. ACM-123).
url_lifetime_minutesintegernoLifetime in minutes for the signed URLs, 1–60. Default 15. Ignored on local-disk dev environments.

Permissions

  • project_management::view_backlog.

Example

{
  "work_item_key": "ACM-123",
  "url_lifetime_minutes": 30
}

Response

{
  "work_item": { "id": 42, "issue_key": "ACM-123", "title": "Stripe SDK upgrade" },
  "data": [
    {
      "id": 9012,
      "name": "stripe-migration-plan.pdf",
      "mime_type": "application/pdf",
      "size": 184320,
      "disk": "tenant",
      "collection": "attachments",
      "url": "https://tenant-bucket.r2.cloudflarestorage.com/…?X-Amz-Signature=…",
      "created_at": "2026-05-18T14:02:17+00:00"
    }
  ],
  "total": 1,
  "url_expires_at": "2026-05-21T08:32:00+00:00"
}

Errors

  • An unknown work_item_key returns a validation error.
  • A url_lifetime_minutes outside 1–60 returns a validation error.
  • A caller without project_management::view_backlog receives an authorization error.

On this page