/linear | Type: Application | PCID required: Yes
Tools
| Tool | Description |
|---|---|
linear_create_attachment | Create an attachment (link) for an existing issue. The URL acts as an idempotent identifier - creating the same URL on the same issue will update the existing attachment. |
linear_create_comment | Add a comment to an issue |
linear_create_issue | Create a new issue in Linear |
linear_create_label | Create a new label for organizing issues |
linear_create_trigger | Create a Linear webhook that will send events |
linear_delete_issue | Delete an existing issue |
linear_delete_trigger | Delete a Linear webhook |
linear_download_file | Download a file from Linear’s authenticated storage (uploads.linear.app). Use this to download images embedded in issue descriptions. The image URLs are found in markdown format like |
linear_get_attachment_by_id | Retrieve an attachment by its ID, including the associated issue information |
linear_get_attachments_by_url | Retrieve all attachments with a specific URL. Useful for finding attachments and their associated issues by URL. |
linear_get_current_user | Get information about the authenticated user |
linear_get_issue_by_id | Retrieve a specific issue by its ID |
linear_get_issues | Retrieve a list of issues with optional filtering |
linear_get_labels | Retrieve labels for filtering and organization |
linear_get_projects | Retrieve a list of projects |
linear_get_team_issues | Retrieve issues for a specific team |
linear_get_teams | Retrieve a list of teams |
linear_get_users | Retrieve team members for assignment |
linear_get_workflow_states | Retrieve workflow states for teams |
linear_list_trigger_capabilities | List available trigger types that can be created for Linear webhooks |
linear_update_issue | Update an existing issue |
linear_update_trigger | Update an existing Linear webhook (can update label and event types) |
linear_create_attachment
Create an attachment (link) for an existing issue. The URL acts as an idempotent identifier - creating the same URL on the same issue will update the existing attachment. Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
issueId | string | Yes | — | Issue ID to attach the link to |
url | string | Yes | — | URL of the link to attach (acts as idempotent identifier) |
title | string | No | — | Title for the attachment |
subtitle | string | No | — | Subtitle for the attachment |
iconUrl | string | No | — | Icon URL for the attachment (must be png or jpg format) |
metadata | object | No | — | Key-value metadata to store with the attachment |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"issueId": {
"type": "string",
"description": "Issue ID to attach the link to"
},
"url": {
"type": "string",
"description": "URL of the link to attach (acts as idempotent identifier)"
},
"title": {
"type": "string",
"description": "Title for the attachment"
},
"subtitle": {
"type": "string",
"description": "Subtitle for the attachment"
},
"iconUrl": {
"type": "string",
"description": "Icon URL for the attachment (must be png or jpg format)"
},
"metadata": {
"type": "object",
"additionalProperties": true,
"description": "Key-value metadata to store with the attachment"
}
},
"required": [
"PCID",
"issueId",
"url"
]
}
linear_create_comment
Add a comment to an issue Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
body | string | Yes | — | Comment text |
issueId | string | Yes | — | Issue ID to comment on |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"body": {
"type": "string",
"description": "Comment text"
},
"issueId": {
"type": "string",
"description": "Issue ID to comment on"
}
},
"required": [
"PCID",
"body",
"issueId"
]
}
linear_create_issue
Create a new issue in Linear Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
title | string | Yes | — | Issue title |
description | string | No | — | Issue description |
teamId | string | Yes | — | Team ID where the issue will be created. Tip: Use linear_get_teams to discover available teams. |
projectId | string | No | — | Project ID to associate the issue with. Tip: Use linear_get_projects to discover available projects. |
priority | number | No | — | Priority level (1-4) |
assigneeId | string | No | — | User ID to assign the issue to. Tip: Use linear_get_users to find available users. |
labelIds | string[] | No | — | Array of label IDs to apply. Tip: Use linear_get_labels to discover available labels. |
stateId | string | No | — | Workflow state ID. Tip: Use linear_get_workflow_states to find available states for the team. |
estimate | number | No | — | Estimate in story points |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"title": {
"type": "string",
"description": "Issue title"
},
"description": {
"type": "string",
"description": "Issue description"
},
"teamId": {
"type": "string",
"description": "Team ID where the issue will be created. Tip: Use linear_get_teams to discover available teams."
},
"projectId": {
"type": "string",
"description": "Project ID to associate the issue with. Tip: Use linear_get_projects to discover available projects."
},
"priority": {
"type": "number",
"description": "Priority level (1-4)"
},
"assigneeId": {
"type": "string",
"description": "User ID to assign the issue to. Tip: Use linear_get_users to find available users."
},
"labelIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of label IDs to apply. Tip: Use linear_get_labels to discover available labels."
},
"stateId": {
"type": "string",
"description": "Workflow state ID. Tip: Use linear_get_workflow_states to find available states for the team."
},
"estimate": {
"type": "number",
"description": "Estimate in story points"
}
},
"required": [
"PCID",
"title",
"teamId"
]
}
linear_create_label
Create a new label for organizing issues Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
name | string | Yes | — | Label name |
color | string | No | — | Label color as hex code (e.g., “#ff0000”). If not provided, Linear will assign a default color. |
description | string | No | — | Label description |
teamId | string | No | — | Team ID to scope the label to a specific team. If not provided, creates a workspace-level label. Tip: Use linear_get_teams to find team IDs. |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"name": {
"type": "string",
"description": "Label name"
},
"color": {
"type": "string",
"description": "Label color as hex code (e.g., \"#ff0000\"). If not provided, Linear will assign a default color."
},
"description": {
"type": "string",
"description": "Label description"
},
"teamId": {
"type": "string",
"description": "Team ID to scope the label to a specific team. If not provided, creates a workspace-level label. Tip: Use linear_get_teams to find team IDs."
}
},
"required": [
"PCID",
"name"
]
}
linear_create_trigger
Create a Linear webhook that will send events Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
triggerType | string | Yes | — | Type of trigger to create |
webhookUrl | string | Yes | — | The webhook URL where Linear should send events |
label | string | Yes | — | Label/name for the Linear webhook |
resourceTypes | any | Yes | — | Event types to subscribe to. Supports multiple formats: PascalCase (IssueLabel), lowercase (issuelabel), kebab-case (issue-label), or snake_case (issue_label). Common types: Issue, Comment, Project, IssueLabel, WorkflowState. Duplicates are automatically removed. Can be passed as JSON string array or array. |
filter | any | Yes | — | Optional filter for events. Can include teamId (e.g., {“teamId”: “team-id”}) to limit webhook to a specific team. If not provided, webhook will listen to all public teams. Tip: Use linear_get_teams to discover available team IDs. |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"triggerType": {
"type": "string",
"enum": [
"linear_issue_events"
],
"description": "Type of trigger to create"
},
"webhookUrl": {
"type": "string",
"description": "The webhook URL where Linear should send events"
},
"label": {
"type": "string",
"description": "Label/name for the Linear webhook"
},
"resourceTypes": {
"type": "effects",
"description": "Event types to subscribe to. Supports multiple formats: PascalCase (IssueLabel), lowercase (issuelabel), kebab-case (issue-label), or snake_case (issue_label). Common types: Issue, Comment, Project, IssueLabel, WorkflowState. Duplicates are automatically removed. Can be passed as JSON string array or array."
},
"filter": {
"type": "effects",
"description": "Optional filter for events. Can include teamId (e.g., {\"teamId\": \"team-id\"}) to limit webhook to a specific team. If not provided, webhook will listen to all public teams. Tip: Use linear_get_teams to discover available team IDs."
}
},
"required": [
"PCID",
"triggerType",
"webhookUrl",
"label",
"resourceTypes",
"filter"
]
}
linear_delete_issue
Delete an existing issue Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
issueId | string | Yes | — | Issue ID to delete |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"issueId": {
"type": "string",
"description": "Issue ID to delete"
}
},
"required": [
"PCID",
"issueId"
]
}
linear_delete_trigger
Delete a Linear webhook Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
triggerId | string | Yes | — | The ID of the webhook to delete |
webhookId | string | No | — | Optional webhook ID to delete (if not provided, will be retrieved from metadata) |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"triggerId": {
"type": "string",
"description": "The ID of the webhook to delete"
},
"webhookId": {
"type": "string",
"description": "Optional webhook ID to delete (if not provided, will be retrieved from metadata)"
}
},
"required": [
"PCID",
"triggerId"
]
}
linear_download_file
Download a file from Linear’s authenticated storage (uploads.linear.app). Use this to download images embedded in issue descriptions. The image URLs are found in markdown format like| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
url | string | Yes | — | The full URL to download (must be an https://uploads.linear.app/ URL). Found in issue descriptions as markdown image references. |
stream | boolean | No | true | RECOMMENDED: true (default). Returns downloadUrl + auth headers for streaming. Set to false only for small files (<2MB) requiring immediate base64 content. |
extractText | boolean | No | true | Automatically extracts text from supported formats (PDF, DOCX, PPTX, XLSX) and includes it in the response. Set to false to skip extraction. |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"url": {
"type": "string",
"description": "The full URL to download (must be an https://uploads.linear.app/ URL). Found in issue descriptions as markdown image references."
},
"stream": {
"type": "boolean",
"default": true,
"description": "RECOMMENDED: true (default). Returns downloadUrl + auth headers for streaming. Set to false only for small files (<2MB) requiring immediate base64 content."
},
"extractText": {
"type": "boolean",
"default": true,
"description": "Automatically extracts text from supported formats (PDF, DOCX, PPTX, XLSX) and includes it in the response. Set to false to skip extraction."
}
},
"required": [
"PCID",
"url"
]
}
linear_get_attachment_by_id
Retrieve an attachment by its ID, including the associated issue information Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
id | string | Yes | — | Attachment ID to retrieve |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"id": {
"type": "string",
"description": "Attachment ID to retrieve"
}
},
"required": [
"PCID",
"id"
]
}
linear_get_attachments_by_url
Retrieve all attachments with a specific URL. Useful for finding attachments and their associated issues by URL. Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
url | string | Yes | — | URL to search for attachments |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"url": {
"type": "string",
"description": "URL to search for attachments"
}
},
"required": [
"PCID",
"url"
]
}
linear_get_current_user
Get information about the authenticated userShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
}
},
"required": [
"PCID"
]
}
linear_get_issue_by_id
Retrieve a specific issue by its ID Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
id | string | Yes | — | Issue ID to retrieve |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"id": {
"type": "string",
"description": "Issue ID to retrieve"
}
},
"required": [
"PCID",
"id"
]
}
linear_get_issues
Retrieve a list of issues with optional filtering Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
filter | object | No | — | Optional filter object for issues |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"filter": {
"type": "object",
"additionalProperties": true,
"description": "Optional filter object for issues"
}
},
"required": [
"PCID"
]
}
linear_get_labels
Retrieve labels for filtering and organizationShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
}
},
"required": [
"PCID"
]
}
linear_get_projects
Retrieve a list of projectsShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
}
},
"required": [
"PCID"
]
}
linear_get_team_issues
Retrieve issues for a specific team Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
teamId | string | Yes | — | Team ID to get issues for |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"teamId": {
"type": "string",
"description": "Team ID to get issues for"
}
},
"required": [
"PCID",
"teamId"
]
}
linear_get_teams
Retrieve a list of teamsShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
}
},
"required": [
"PCID"
]
}
linear_get_users
Retrieve team members for assignmentShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
}
},
"required": [
"PCID"
]
}
linear_get_workflow_states
Retrieve workflow states for teamsShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
}
},
"required": [
"PCID"
]
}
linear_list_trigger_capabilities
List available trigger types that can be created for Linear webhooksShow inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID (optional for this operation)"
}
}
}
linear_update_issue
Update an existing issue Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
issueId | string | Yes | — | Issue ID to update |
title | string | No | — | New issue title |
description | string | No | — | New issue description |
priority | number | No | — | New priority level (1-4) |
stateId | string | No | — | New workflow state ID. Tip: Use linear_get_workflow_states to find available states. |
assigneeId | string | No | — | New assignee user ID. Tip: Use linear_get_users to find available users. |
labelIds | string[] | No | — | New array of label IDs. Tip: Use linear_get_labels to discover available labels. |
estimate | number | No | — | New estimate in story points |
projectId | string | No | — | Project ID to add the issue to. Tip: Use linear_get_projects to find available projects. |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"issueId": {
"type": "string",
"description": "Issue ID to update"
},
"title": {
"type": "string",
"description": "New issue title"
},
"description": {
"type": "string",
"description": "New issue description"
},
"priority": {
"type": "number",
"description": "New priority level (1-4)"
},
"stateId": {
"type": "string",
"description": "New workflow state ID. Tip: Use linear_get_workflow_states to find available states."
},
"assigneeId": {
"type": "string",
"description": "New assignee user ID. Tip: Use linear_get_users to find available users."
},
"labelIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "New array of label IDs. Tip: Use linear_get_labels to discover available labels."
},
"estimate": {
"type": "number",
"description": "New estimate in story points"
},
"projectId": {
"type": "string",
"description": "Project ID to add the issue to. Tip: Use linear_get_projects to find available projects."
}
},
"required": [
"PCID",
"issueId"
]
}
linear_update_trigger
Update an existing Linear webhook (can update label and event types) Parameters:| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
webhookId | string | Yes | — | The ID of the webhook to update |
label | string | No | — | New label for the webhook |
resourceTypes | any | Yes | — | New event types to subscribe to. Supports multiple formats: PascalCase (IssueLabel), lowercase (issuelabel), kebab-case (issue-label), or snake_case (issue_label). Duplicates are automatically removed. Can be passed as JSON string array or array. |
Show inputSchema
Show inputSchema
{
"type": "object",
"properties": {
"PCID": {
"type": "string",
"description": "Pink Connect ID"
},
"webhookId": {
"type": "string",
"description": "The ID of the webhook to update"
},
"label": {
"type": "string",
"description": "New label for the webhook"
},
"resourceTypes": {
"type": "effects",
"description": "New event types to subscribe to. Supports multiple formats: PascalCase (IssueLabel), lowercase (issuelabel), kebab-case (issue-label), or snake_case (issue_label). Duplicates are automatically removed. Can be passed as JSON string array or array."
}
},
"required": [
"PCID",
"webhookId",
"resourceTypes"
]
}

