LINEAR_CREATE_ISSUE- Create a new issue in a Linear team.
- Key inputs:
team_id(required),title(required),description(Markdown),state_id,assignee_id,project_id,label_ids,subscriber_ids,priority(integer 0–4),estimate(integer ≥ 0).
LINEAR_GET_ISSUES- Retrieve a list of issues with optional server-side filters.
- Key inputs:
team_id,state_id,assignee_id,project_id,label_ids(matches issues containing any of the given labels),updated_after/updated_before(ISO 8601, e.g.2024-01-01T00:00:00Z),first(1–100, default 20).
LINEAR_UPDATE_ISSUE- Update fields on an existing issue. At least one update field must be provided.
- Key inputs:
issue_id(required), plus any oftitle,description,state_id,assignee_id,project_id,label_ids,subscriber_ids,priority,estimate.
LINEAR_ADD_ISSUE_COMMENT- Add a comment to an issue — useful for triage context or workflow notifications.
- Key inputs:
issue_id(required),comment_body(required, Markdown).
LINEAR_LIST_TEAMS- Fetch teams to look up their internal IDs, names, and keys.
- Key inputs:
first(1–100, default 20).
LINEAR_GET_PROJECT_PROGRESS- Retrieve a project’s progress and status, including scope, completed scope, health, milestones, members, and recent project updates.
- Key inputs:
project_id(required).
Connect with a Linear API key
All Linear tools authenticate with a personal API key (OAuth is not supported). Generate one in Linear under Settings → Security & access → Personal API keys, then store it as aLINEAR_API_KEY secret in your workspace.
Each step takes a single config field:
Note: Treat API keys as sensitive information and never commit them to public repositories.
Create an issue
Fetch your teams once to find the internal team ID, then create an issue in that team:Read issues and project progress
Collect issues updated in the past week and the current project status, then summarize with an AI step:Notes
- IDs, not names: All references (
team_id,state_id,assignee_id,project_id,label_ids) are Linear’s internal identifiers. UseLINEAR_LIST_TEAMSandLINEAR_GET_ISSUESto discover them. - List inputs:
label_idsandsubscriber_idsaccept a JSON array (e.g.["id1", "id2"]) or a comma-separated string (id1, id2). - Updates replace lists: In
LINEAR_UPDATE_ISSUE,label_idsandsubscriber_idsreplace the existing lists rather than appending to them. - Fields cannot be cleared: Empty values are ignored on update, so you cannot blank out a title or description — only overwrite it.
LINEAR_UPDATE_ISSUEfails if no update field is provided. - Pagination:
LINEAR_GET_ISSUESandLINEAR_LIST_TEAMSreturn at most 100 items per run. ApageInfoobject (hasNextPage,endCursor) is returned, but there is no cursor input, so only the first page is retrievable in a single step. Narrow results with filters instead. - Error handling:
LINEAR_GET_PROJECT_PROGRESSreturns anerrorobject in its output instead of failing the step when the request fails.