# Linear tools (https://www.shipfox.io/docs/integrations/linear/tools)

Description: Look up the Linear tools, selectors, permissions, inputs, and outputs available to tool steps and agent steps.

This reference lists the shipped Linear tool catalog. See the [Linear
overview](https://www.shipfox.io/docs/integrations/linear) for authentication and setup.

## Selectors [#selectors]

A tool step names one standalone tool id, such as `get_issue`, in its `tool`
field. An agent step lists standalone selectors in its `integrations:` block.
For the field contracts, see [Tool step
fields](https://www.shipfox.io/docs/reference/workflow-schema#tool-step-fields) and [Agent integration
fields](https://www.shipfox.io/docs/reference/workflow-schema#agent-integration-fields).

## Tool catalog [#tool-catalog]

The catalog uses Linear's OAuth scopes. Read tools require `read` access. Write
tools require `write` access.

### attachments

#### `get_attachment`

Retrieve a Linear attachment by ID.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_attachment`](https://www.shipfox.io/docs/integrations/linear/tools#get_attachment)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Attachment ID |

#### `extract_images`

Extract and fetch images from markdown content.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`extract_images`](https://www.shipfox.io/docs/integrations/linear/tools#extract_images)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `markdown` | string | Required | Markdown content containing image references |

#### `create_attachment`

Upload a tiny file through the MCP worker and attach it to a Linear issue.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`create_attachment`](https://www.shipfox.io/docs/integrations/linear/tools#create_attachment)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `base64Content` | string | Required | Deprecated base64-encoded file content to upload |
| `contentType` | string | Required | MIME type for the upload |
| `filename` | string | Required | Filename for the upload |
| `issue` | string | Required | Issue ID or identifier |
| `sha256` | string | Required | Expected SHA-256 hex digest of the decoded file bytes |
| `size` | number | Optional | Expected decoded file size in bytes |
| `subtitle` | string | Optional | Attachment subtitle |
| `title` | string | Optional | Attachment title |

#### `create_attachment_from_upload`

Link an already-uploaded Linear asset URL to an existing issue as an attachment.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`create_attachment_from_upload`](https://www.shipfox.io/docs/integrations/linear/tools#create_attachment_from_upload)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `assetUrl` | string | Required | Linear upload asset URL returned by prepare_attachment_upload |
| `issue` | string | Required | Issue ID or identifier |
| `subtitle` | string | Optional | Attachment subtitle |
| `title` | string | Optional | Attachment title |

#### `prepare_attachment_upload`

Prepare a direct Linear file upload for an existing issue.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`prepare_attachment_upload`](https://www.shipfox.io/docs/integrations/linear/tools#prepare_attachment_upload)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `contentType` | string | Required | MIME type for the upload |
| `filename` | string | Required | Filename for the upload |
| `issue` | string | Required | Issue ID or identifier |
| `size` | number | Required | Exact file size in bytes |
| `subtitle` | string | Optional | Suggested attachment subtitle for the finalize step |
| `title` | string | Optional | Suggested attachment title for the finalize step |

#### `delete_attachment`

Delete a Linear attachment.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`delete_attachment`](https://www.shipfox.io/docs/integrations/linear/tools#delete_attachment)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Attachment ID |

### agents

#### `get_agent_skill`

Retrieve a Linear Agent skill by ID, including its full markdown instructions.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_agent_skill`](https://www.shipfox.io/docs/integrations/linear/tools#get_agent_skill)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Agent skill ID |

#### `list_agent_skills`

List Linear Agent skills available to the authenticated user.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_agent_skills`](https://www.shipfox.io/docs/integrations/linear/tools#list_agent_skills)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |

### diffs

#### `get_diff`

Look up a Linear diff by review URL, GitHub PR URL, identifier, UUID, or slug.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_diff`](https://www.shipfox.io/docs/integrations/linear/tools#get_diff)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `urlOrId` | string | Required | Linear review URL, diff slug, pull request ID, Linear identifier, or GitHub PR URL |

#### `get_diff_threads`

Look up Linear diff threads by review URL, GitHub PR URL, identifier, UUID, or slug.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_diff_threads`](https://www.shipfox.io/docs/integrations/linear/tools#get_diff_threads)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `resolved` | boolean | Optional | Filter returned threads by resolved state |
| `threadId` | string | Optional | Top-level thread or comment ID to return |
| `urlOrId` | string | Required | Linear review URL, diff slug, pull request ID, Linear identifier, or GitHub PR URL |

#### `list_diffs`

List Linear diff pull requests visible to the authenticated user.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_diffs`](https://www.shipfox.io/docs/integrations/linear/tools#list_diffs)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `owner` | string | Optional | Repository owner |
| `query` | string | Optional | Search by title, branch, PR number, or bare slug |
| `repo` | string | Optional | Repository name |
| `status` | string | Optional | Pull request status |

### documents

#### `get_document`

Retrieve a Linear document by ID or slug.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_document`](https://www.shipfox.io/docs/integrations/linear/tools#get_document)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Document ID or slug |

#### `list_documents`

List documents in the Linear workspace.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_documents`](https://www.shipfox.io/docs/integrations/linear/tools#list_documents)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `creatorId` | string | Optional | Creator ID |
| `includeArchived` | boolean | Optional | Include archived documents |
| `initiativeId` | string | Optional | Initiative ID |
| `projectId` | string | Optional | Project ID |
| `query` | string | Optional | Search query |
| `teamId` | string | Optional | Team ID |

#### `save_document`

Create or update a Linear document.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`save_document`](https://www.shipfox.io/docs/integrations/linear/tools#save_document)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `color` | string | Optional | Hex color |
| `content` | string | Optional | Document content as Markdown |
| `cycle` | string | Optional | Cycle name, number, or ID |
| `icon` | string | Optional | Icon name or emoji code |
| `id` | string | Optional | Document ID or slug |
| `initiative` | string | Optional | Initiative name or ID |
| `issue` | string | Optional | Issue ID or identifier |
| `project` | string | Optional | Project name, ID, or slug |
| `team` | string | Optional | Team name or ID |
| `title` | string | Optional | Document title |

### issues

#### `get_issue`

Retrieve detailed information about a Linear issue.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_issue`](https://www.shipfox.io/docs/integrations/linear/tools#get_issue)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Issue ID or identifier |
| `includeCustomerNeeds` | boolean | Optional | Include associated customer needs |
| `includeRelations` | boolean | Optional | Include blocking, related, and duplicate relations |
| `includeReleases` | boolean | Optional | Include associated releases |

#### `list_issues`

List Linear issues visible to the authenticated connection.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_issues`](https://www.shipfox.io/docs/integrations/linear/tools#list_issues)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `assignee` | string \| null | Optional |  |
| `cycle` | string | Optional | Cycle name, number, or ID |
| `delegate` | string | Optional | Agent name or ID |
| `includeArchived` | boolean | Optional | Include archived issues |
| `label` | string | Optional | Label name or ID |
| `parentId` | string | Optional | Parent issue ID or identifier |
| `priority` | number | Optional | 0=None, 1=Urgent, 2=High, 3=Medium, 4=Low |
| `project` | string | Optional | Project name, ID, or slug |
| `query` | string | Optional | Search issue title or description |
| `release` | string | Optional | Release ID or slug |
| `state` | string | Optional | State type, name, or ID |
| `team` | string | Optional | Team name or ID |

#### `list_issue_labels`

List issue labels in a Linear workspace or team.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_issue_labels`](https://www.shipfox.io/docs/integrations/linear/tools#list_issue_labels)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `name` | string | Optional | Filter by label name |
| `team` | string | Optional | Team name or ID |

#### `list_issue_statuses`

List available issue statuses in a Linear team.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_issue_statuses`](https://www.shipfox.io/docs/integrations/linear/tools#list_issue_statuses)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `team` | string | Required | Team name or ID |

#### `get_issue_status`

Retrieve detailed information about an issue status by name or ID.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_issue_status`](https://www.shipfox.io/docs/integrations/linear/tools#get_issue_status)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Status ID |
| `name` | string | Required | Status name |
| `team` | string | Required | Team name or ID |

#### `save_issue`

Create or update a Linear issue.

**Sensitivity:** write.

**Sensitive:** No.

**Required permissions:** `write`

**Selector tokens:** [`save_issue`](https://www.shipfox.io/docs/integrations/linear/tools#save_issue)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `addReleases` | array | Optional |  |
| `assignee` | string \| null | Optional |  |
| `blockedBy` | array | Optional |  |
| `blocks` | array | Optional |  |
| `cycle` | string \| null | Optional |  |
| `delegate` | string \| null | Optional |  |
| `description` | string | Optional | Issue description as Markdown |
| `dueDate` | string | Optional | Due date in ISO format |
| `duplicateOf` | string \| null | Optional |  |
| `estimate` | number \| null | Optional | Issue estimate value |
| `id` | string | Optional | Issue ID or identifier |
| `labels` | array | Optional |  |
| `links` | array | Optional |  |
| `milestone` | string | Optional | Milestone name or ID |
| `parentId` | string \| null | Optional |  |
| `priority` | number | Optional | 0=None, 1=Urgent, 2=High, 3=Medium, 4=Low |
| `project` | string \| null | Optional |  |
| `relatedTo` | array | Optional |  |
| `removeBlockedBy` | array | Optional |  |
| `removeBlocks` | array | Optional |  |
| `removeRelatedTo` | array | Optional |  |
| `removeReleases` | array | Optional |  |
| `setReleases` | array | Optional |  |
| `state` | string | Optional | State type, name, or ID |
| `team` | string | Optional | Team name or ID |
| `title` | string | Optional | Issue title |

#### `create_issue_label`

Create a new Linear issue label.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`create_issue_label`](https://www.shipfox.io/docs/integrations/linear/tools#create_issue_label)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `color` | string | Optional | Hex color code |
| `description` | string | Optional | Label description |
| `isGroup` | boolean | Optional | Is label group |
| `name` | string | Required | Label name |
| `parent` | string | Optional | Parent label group name |
| `teamId` | string | Optional | Team UUID |

### comments

#### `list_comments`

List comments on a Linear issue, project, initiative, document, or milestone.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_comments`](https://www.shipfox.io/docs/integrations/linear/tools#list_comments)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `documentId` | string | Optional | Document ID or slug |
| `initiativeId` | string | Optional | Initiative name or ID |
| `issueId` | string | Optional | Issue ID or identifier |
| `milestoneId` | string | Optional | Milestone UUID |
| `projectId` | string | Optional | Project name, ID, or slug |

#### `save_comment`

Create or update a comment on a Linear issue, project, initiative, document, or milestone.

**Sensitivity:** write.

**Sensitive:** No.

**Required permissions:** `write`

**Selector tokens:** [`save_comment`](https://www.shipfox.io/docs/integrations/linear/tools#save_comment)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `body` | string | Required | Comment body as Markdown |
| `documentId` | string | Optional | Document ID or slug |
| `id` | string | Optional | Comment ID |
| `initiativeId` | string | Optional | Initiative name or ID |
| `issueId` | string | Optional | Issue ID or identifier |
| `milestoneId` | string | Optional | Milestone UUID |
| `parentId` | string | Optional | Parent comment ID |
| `projectId` | string | Optional | Project name, ID, or slug |

#### `delete_comment`

Delete a Linear comment.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`delete_comment`](https://www.shipfox.io/docs/integrations/linear/tools#delete_comment)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Comment ID |

### workspace

#### `list_teams`

List teams in the Linear workspace.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_teams`](https://www.shipfox.io/docs/integrations/linear/tools#list_teams)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `includeArchived` | boolean | Optional | Include archived teams |
| `query` | string | Optional | Search query |

#### `get_team`

Retrieve detailed information about a Linear team.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_team`](https://www.shipfox.io/docs/integrations/linear/tools#get_team)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `query` | string | Required | Team UUID, key, or name |

#### `list_users`

Retrieve users in the Linear workspace.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_users`](https://www.shipfox.io/docs/integrations/linear/tools#list_users)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `query` | string | Optional | Filter by name or email |
| `team` | string | Optional | Team name or ID |

#### `get_user`

Retrieve details of a specific Linear user.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_user`](https://www.shipfox.io/docs/integrations/linear/tools#get_user)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `query` | string | Required | User ID, name, email, or "me" |

### projects

#### `list_projects`

List projects in the Linear workspace.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_projects`](https://www.shipfox.io/docs/integrations/linear/tools#list_projects)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `includeArchived` | boolean | Optional | Include archived projects |
| `includeMembers` | boolean | Optional | Include project members |
| `includeMilestones` | boolean | Optional | Include milestones |
| `initiative` | string | Optional | Initiative name or ID |
| `label` | string | Optional | Label name or ID |
| `member` | string | Optional | User ID, name, email, or "me" |
| `query` | string | Optional | Search project name |
| `state` | string | Optional | State type, name, or ID |
| `team` | string | Optional | Team name or ID |

#### `get_project`

Retrieve details of a specific Linear project.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_project`](https://www.shipfox.io/docs/integrations/linear/tools#get_project)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `includeMembers` | boolean | Optional | Include project members |
| `includeMilestones` | boolean | Optional | Include milestones |
| `includeResources` | boolean | Optional | Include documents, links, and attachments |
| `query` | string | Required | Project name, ID, or slug |

#### `list_project_labels`

List project labels in the Linear workspace.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_project_labels`](https://www.shipfox.io/docs/integrations/linear/tools#list_project_labels)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `name` | string | Optional | Filter by label name |

#### `list_milestones`

List milestones in a Linear project.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_milestones`](https://www.shipfox.io/docs/integrations/linear/tools#list_milestones)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `project` | string | Required | Project name, ID, or slug |

#### `get_milestone`

Retrieve details of a Linear milestone by ID or name.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_milestone`](https://www.shipfox.io/docs/integrations/linear/tools#get_milestone)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `project` | string | Required | Project name, ID, or slug |
| `query` | string | Required | Milestone name or ID |

#### `get_status_updates`

List or retrieve project or initiative status updates.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_status_updates`](https://www.shipfox.io/docs/integrations/linear/tools#get_status_updates)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `id` | string | Optional | Status update ID |
| `includeArchived` | boolean | Optional | Include archived updates |
| `initiative` | string | Optional | Initiative name or ID |
| `project` | string | Optional | Project name, ID, or slug |
| `type` | string: `project`, `initiative` | Required | Status update type |
| `user` | string | Optional | User ID, name, email, or "me" |

#### `save_project`

Create or update a Linear project.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`save_project`](https://www.shipfox.io/docs/integrations/linear/tools#save_project)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `addInitiatives` | array | Optional |  |
| `addTeams` | array | Optional |  |
| `color` | string | Optional | Hex color |
| `description` | string | Optional | Project description as Markdown |
| `icon` | string | Optional | Icon name or emoji code |
| `id` | string | Optional | Project ID |
| `labels` | array | Optional |  |
| `lead` | string \| null | Optional |  |
| `name` | string | Optional | Project name |
| `priority` | number | Optional | 0=None, 1=Urgent, 2=High, 3=Medium, 4=Low |
| `removeInitiatives` | array | Optional |  |
| `removeTeams` | array | Optional |  |
| `setInitiatives` | array | Optional |  |
| `setTeams` | array | Optional |  |
| `startDate` | string | Optional | Start date in ISO format |
| `startDateResolution` | string: `halfYear`, `month`, `quarter`, `year` | Optional | Start date resolution |
| `state` | string | Optional | Project state |
| `summary` | string | Optional | Short summary |
| `targetDate` | string | Optional | Target date in ISO format |
| `targetDateResolution` | string: `halfYear`, `month`, `quarter`, `year` | Optional | Target date resolution |

#### `save_milestone`

Create or update a Linear milestone in a project.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`save_milestone`](https://www.shipfox.io/docs/integrations/linear/tools#save_milestone)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `description` | string | Optional | Milestone description |
| `id` | string | Optional | Milestone name or ID |
| `name` | string | Optional | Milestone name |
| `project` | string | Required | Project name, ID, or slug |
| `targetDate` | string \| null | Optional |  |

#### `save_status_update`

Create or update a project or initiative status update.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`save_status_update`](https://www.shipfox.io/docs/integrations/linear/tools#save_status_update)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `body` | string | Optional | Status update body as Markdown |
| `health` | string: `onTrack`, `atRisk`, `offTrack` | Optional | Status update health |
| `id` | string | Optional | Status update ID |
| `initiative` | string | Optional | Initiative name or ID |
| `isDiffHidden` | boolean | Optional | Hide diff with previous update |
| `project` | string | Optional | Project name, ID, or slug |
| `type` | string: `project`, `initiative` | Required | Status update type |

#### `delete_status_update`

Delete or archive a Linear project or initiative status update.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`delete_status_update`](https://www.shipfox.io/docs/integrations/linear/tools#delete_status_update)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Status update ID |
| `type` | string: `project`, `initiative` | Required | Status update type |

### releases

#### `get_release`

Retrieve details of a Linear release by ID or slug.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_release`](https://www.shipfox.io/docs/integrations/linear/tools#get_release)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Release ID or slug |
| `includeReleaseNotes` | boolean | Optional | Include associated release notes |

#### `list_release_pipelines`

List release pipelines in the Linear workspace.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_release_pipelines`](https://www.shipfox.io/docs/integrations/linear/tools#list_release_pipelines)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `includeArchived` | boolean | Optional | Include archived release pipelines |
| `includeStages` | boolean | Optional | Include each pipeline stages |
| `includeTeams` | boolean | Optional | Include each pipeline teams |
| `isProduction` | boolean | Optional | Filter by production pipeline flag |
| `query` | string | Optional | Search pipeline name |
| `team` | string | Optional | Team name or ID |
| `type` | string: `continuous`, `scheduled` | Optional | Pipeline type |

#### `list_releases`

List releases in the workspace, with optional filtering by pipeline, stage, version, and text.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_releases`](https://www.shipfox.io/docs/integrations/linear/tools#list_releases)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `hasReleaseNotes` | boolean | Optional | Filter to releases that do or do not have release notes |
| `includeArchived` | boolean | Optional | Include archived releases |
| `includeReleaseNotes` | boolean | Optional | Include associated release notes |
| `pipeline` | string | Optional | Release pipeline ID, slug, or exact name |
| `query` | string | Optional | Search release name or version |
| `stage` | string | Optional | Release stage ID or exact name |
| `stageType` | string: `planned`, `started`, `completed`, `canceled` | Optional | Stage lifecycle type |
| `version` | string | Optional | Exact version match |

#### `save_release`

Create or update a Linear release.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`save_release`](https://www.shipfox.io/docs/integrations/linear/tools#save_release)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `commitSha` | string | Optional | Commit SHA associated with the release |
| `completedAt` | string \| null | Optional | Completed timestamp in ISO DateTime format |
| `createdAt` | string | Optional | Import or create timestamp in ISO DateTime format |
| `description` | string | Optional | Release description |
| `id` | string | Optional | Release ID or slug to update |
| `name` | string | Optional | Release name |
| `pipeline` | string | Optional | Release pipeline ID, slug, or exact name |
| `stage` | string | Optional | Release stage ID, exact name, or lifecycle type within the pipeline |
| `startDate` | string \| null | Optional | Estimated start date in ISO YYYY-MM-DD format |
| `startedAt` | string \| null | Optional | Started timestamp in ISO DateTime format |
| `targetDate` | string \| null | Optional | Estimated completion date in ISO YYYY-MM-DD format |
| `version` | string | Optional | Version identifier |

### release notes

#### `get_release_note`

Retrieve Linear release notes by ID or slug, including markdown content.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`get_release_note`](https://www.shipfox.io/docs/integrations/linear/tools#get_release_note)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `id` | string | Required | Release notes ID or slug |
| `includeReleases` | boolean | Optional | Include associated releases |

#### `list_release_notes`

List release notes in the workspace, optionally filtered by pipeline or release.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_release_notes`](https://www.shipfox.io/docs/integrations/linear/tools#list_release_notes)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | Optional | Next page cursor |
| `limit` | number | Optional | Maximum number of results to return |
| `orderBy` | string: `createdAt`, `updatedAt` | Optional | Sort order |
| `createdAt` | string | Optional | ISO-8601 date or duration filter |
| `updatedAt` | string | Optional | ISO-8601 date or duration filter |
| `includeArchived` | boolean | Optional | Include archived release notes |
| `includeContent` | boolean | Optional | Include markdown release notes content |
| `includeReleases` | boolean | Optional | Include associated releases |
| `pipeline` | string | Optional | Release pipeline ID, slug, or exact name |
| `query` | string | Optional | Search release notes title |
| `release` | string | Optional | Release ID or slug |

#### `save_release_note`

Create or update Linear release notes.

**Sensitivity:** write.

**Sensitive:** Yes.

**Required permissions:** `write`

**Selector tokens:** [`save_release_note`](https://www.shipfox.io/docs/integrations/linear/tools#save_release_note)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `content` | string | Optional | Release notes content as Markdown |
| `id` | string | Optional | Release notes ID or slug to update |
| `pipeline` | string | Optional | Release pipeline ID, slug, or exact name |
| `rangeFromRelease` | string | Optional | Oldest release ID or slug in the note range |
| `rangeToRelease` | string | Optional | Newest release ID or slug in the note range |
| `releases` | array | Optional |  |
| `title` | string | Optional | Release notes title |

### cycles

#### `list_cycles`

Retrieve cycles for a specific Linear team.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`list_cycles`](https://www.shipfox.io/docs/integrations/linear/tools#list_cycles)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `teamId` | string | Required | Team ID |
| `type` | string: `current`, `previous`, `next` | Optional | Cycle filter |

### documentation

#### `search_documentation`

Search Linear's documentation to learn about features and usage.

**Sensitivity:** read.

**Sensitive:** No.

**Required permissions:** `read`

**Selector tokens:** [`search_documentation`](https://www.shipfox.io/docs/integrations/linear/tools#search_documentation)

##### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `page` | number | Optional | Page number |
| `query` | string | Required | Search query |