The catalogue/Linear

Linear

app.linear

Manage issues, projects, and labels in Linear

API keyproductivityRead the source↗
Version2.0.0
Categoryproductivity
AuthAPI key
Tools20
Transportstdio
LicenceMIT
01

What it does

The app, in its own words.

Linear issue tracking - list, create, update issues, manage projects, labels, teams and users

linearissuestasksproject-management
02

Tools

20 tools the agent can call.

Every one is declared with typed parameters and returns structured results, so the host can render them instead of narrating them.

  • linear-add-commentAdd a comment to a Linear issue. Returns curated { id, body, authorId, authorName, issueId, url, createdAt }. Not retryable. Params: issueId, body, fields?, includeRaw.
  • linear-add-issues-to-projectAttach one or more Linear issues to a project. Returns { projectId, added, failed, results: [{ issueId, identifier?, success, error? }] }.
  • linear-add-labels-to-issueAdd labels to a Linear issue (deduped server-side against existing labels). Returns { issueId, added, total, labelIds }.
  • linear-archive-issueArchive a Linear issue (soft delete). Reversible via un-archive. Returns { success, issueId }.
  • linear-create-issueCreate a Linear issue. Returns curated { id, identifier, title, url, status, priority, assignee, team, createdAt, updatedAt }. Not retryable (no idempotency key). Params: title, teamId, description?, assigneeId?, priority?, projectId?, labelIds?, stateId?, parentId? (UUID or "TER-123"), fields?, includeRaw.
  • linear-create-labelCreate a Linear label. Returns curated { id, name, color, description }. Not retryable. Params: name, teamId, color?, description?, fields?, includeRaw.
  • linear-create-projectCreate a Linear project. Returns curated project shape. Not retryable (no idempotency key). Params: name, teamIds, description?, leadId?, startDate?, targetDate?, fields?, includeRaw.
  • linear-delete-issuePermanently delete a Linear issue. Irreversible. Returns { success, issueId }.
  • linear-delete-labelPermanently delete a Linear label. Irreversible. Returns { success, labelId }.
  • linear-get-issueRetrieve a Linear issue by UUID or identifier (e.g. "TER-123"). Returns curated { id, identifier, title, url, status, priority, assignee, team, project, cycle, labels, description, createdAt, updatedAt }. Params: issueId, fields?, includeRaw.
  • linear-list-issuesList Linear issues with optional filters. Returns curated rows { id, identifier, title, url, status, priority, assignee, team, createdAt, updatedAt }. Params: teamId?, status?, assigneeId?, priority?, limit (1-100, def 50), startCursor, fields?, includeRaw.
  • linear-list-labelsList Linear labels. Returns curated rows { id, name, color, description, isGroup, parentId }. Params: teamId?, limit (1-100, def 50), startCursor, fields?, includeRaw.
  • linear-list-projectsList Linear projects. Returns curated rows { id, name, url, state, icon, color, progress, startDate, targetDate, createdAt, updatedAt }. Params: teamId?, limit (1-100, def 50), startCursor, fields?, includeRaw.
  • linear-list-teamsList Linear teams. Returns curated rows { id, name, key, icon, color, description, private }. Params: limit (1-100, def 50), startCursor, fields?, includeRaw.
  • linear-list-usersList Linear workspace users. Optionally filters by team membership. Returns curated rows { id, name, displayName, email, avatarUrl, active, admin }. Params: teamId?, limit (1-100, def 50), startCursor, fields?, includeRaw.
  • linear-list-workflow-statesList workflow states for a team. Returns curated rows { id, name, type, color, position, description }. Params: teamId, limit (1-100, def 50), startCursor, fields?, includeRaw.
  • linear-remove-issues-from-projectDetach one or more Linear issues from their project. Returns { removed, failed, results: [{ issueId, identifier?, success, error? }] }.
  • linear-remove-labels-from-issueRemove labels from a Linear issue. Returns { issueId, removed, total, labelIds }.
  • linear-update-issueUpdate a Linear issue. Returns curated updated issue. Idempotent per-field — safe to retry. Params: issueId, title?, description?, stateId?, assigneeId?, priority?, projectId?, labelIds?, estimate?, dueDate?, fields?, includeRaw.
  • linear-update-labelUpdate a Linear label. Returns curated updated label. Idempotent per-field. Params: labelId, name?, color?, description?, fields?, includeRaw.
03

Auth and permissions

What it asks for.

Declared in the manifest, in advance. The app cannot reach anything it did not ask for here.

User secrets

API_KEY

Reading further

The manifest and the source for Linear live in the monorepo, alongside the other apps.

Read the source↗Back to the catalogue→

Linear · Agent Apps