> ## Documentation Index
> Fetch the complete documentation index at: https://docs.toolshed.philo.ventures/llms.txt
> Use this file to discover all available pages before exploring further.

# Linear Plugin

> Linear issue tracking operations.

**Plugin ID:** `linear` | **Auth:** OAuth2 (provider id `linear`) | **Scopes:** `read`, `write`

Handlers call Linear's GraphQL API at `https://api.linear.app/graphql` via a small `linearGraphQL()` helper. List uses an `Issues($first, $filter)` query (filter assembled from `teamId` / `projectId` when provided); create uses an `IssueCreate($input)` mutation and returns the issue's `id` / `identifier` / `url`. The destructive create tool elicits user approval before submitting.

## Tools

### linear.issues.list

**Name:** List Issues

List issues from Linear, optionally filtered by team or project.

| Parameter   | Type      | Required | Default | Description          |
| ----------- | --------- | -------- | ------- | -------------------- |
| `teamId`    | `string`  | No       | --      | Filter by team       |
| `projectId` | `string`  | No       | --      | Filter by project    |
| `limit`     | `integer` | No       | `25`    | Max issues to return |

**Output:**

```json theme={null}
{
  "issues": [
    {
      "id": "issue-001",
      "identifier": "ENG-42",
      "title": "Fix authentication flow",
      "state": "In Progress",
      "url": "https://linear.app/team/issue/ENG-42"
    }
  ]
}
```

***

### linear.issues.create

**Name:** Create Issue | **Destructive:** Yes

Create a new issue in Linear. Requires user approval.

| Parameter     | Type      | Required | Description                  |
| ------------- | --------- | -------- | ---------------------------- |
| `teamId`      | `string`  | Yes      | Team to create the issue in  |
| `title`       | `string`  | Yes      | Issue title                  |
| `description` | `string`  | No       | Issue description (markdown) |
| `projectId`   | `string`  | No       | Project to associate with    |
| `priority`    | `integer` | No       | Priority level (0-4)         |

**Output:**

```json theme={null}
{
  "id": "issue-002",
  "identifier": "ENG-43",
  "url": "https://linear.app/team/issue/ENG-43"
}
```
