linear_list_issues

Pack: linear · Endpoint: https://gateway.pipeworx.io/linear/mcp

Browse issues in your Linear workspace, filtered by TEAM, DATE RANGE, state, priority, assignee, project, cycle, or labels \u2014 alone or combined. filter is Linear’s own IssueFilter, so anything IssueFilter expresses works here: filter one team ({“team”:{“key”:{“eq”:“ENG”}}}), a date window ({“updatedAt”:{“gte”:“-P2W”}}), or several DIFFERENT filter sets at once via or. Returns issue ID, title, state, priority, assignee, and URL, newest-updated first.

Parameters

NameTypeRequiredDescription
filterstring,objectnoOptional Linear IssueFilter, passed straight through to the issues query. Send it as an object, or as a JSON string — both work.
TEAMunknownno
DATEunknownno
nowunknownno
STATEunknownno
firstnumbernoNumber of issues to return (default 20, max 50)

Example call

Arguments

{
  "first": 20
}

curl

curl -X POST https://gateway.pipeworx.io/linear/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"linear_list_issues","arguments":{"first":20}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('linear_list_issues', {
  "first": 20
});

More examples

{
  "filter": "{\"state\":{\"name\":{\"eq\":\"In Progress\"}}}",
  "first": 10
}
{
  "filter": "{\"team\":{\"key\":{\"eq\":\"ENG\"}},\"updatedAt\":{\"gte\":\"-P2W\"}}",
  "first": 25
}
{
  "filter": "{\"or\":[{\"team\":{\"key\":{\"eq\":\"ENG\"}},\"state\":{\"name\":{\"eq\":\"In Progress\"}}},{\"team\":{\"key\":{\"eq\":\"DES\"}},\"state\":{\"name\":{\"eq\":\"Backlog\"}}}]}",
  "first": 50
}

Response shape

Always returns: issues

FieldTypeDescription
issuesarrayList of issues matching the filter
Full JSON Schema
{
  "type": "object",
  "properties": {
    "issues": {
      "type": "array",
      "description": "List of issues matching the filter",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Issue ID"
          },
          "identifier": {
            "type": "string",
            "description": "Issue identifier (e.g., ABC-123)"
          },
          "title": {
            "type": "string",
            "description": "Issue title"
          },
          "state": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "State name"
              }
            }
          },
          "priority": {
            "type": "number",
            "description": "Priority level"
          },
          "priorityLabel": {
            "type": "string",
            "description": "Human-readable priority label"
          },
          "assignee": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Assignee name"
              },
              "email": {
                "type": "string",
                "description": "Assignee email"
              }
            }
          },
          "url": {
            "type": "string",
            "description": "Issue URL"
          },
          "createdAt": {
            "type": "string",
            "description": "Creation timestamp"
          },
          "updatedAt": {
            "type": "string",
            "description": "Last update timestamp"
          }
        }
      }
    }
  },
  "required": [
    "issues"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "linear": {
      "url": "https://gateway.pipeworx.io/linear/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 10, 2026