linear · Capability

Linear GraphQL API

Linear's public GraphQL API provides full access to create, read, update, and query issues, projects, cycles, roadmaps, and teams. It is the same API Linear uses internally for its own applications, supporting pagination, filtering, attachments, and file uploads.

Run with Naftiko LinearAPI

What You Can Do

POST
Executegraphqlquery — Execute a GraphQL query or mutation
/graphql
POST
Uploadfile — Upload a file attachment
/graphql/upload

MCP Tools

executegraphqlquery

Execute a GraphQL query or mutation

uploadfile

Upload a file attachment

Capability Spec

linear-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Linear GraphQL API
  description: Linear's public GraphQL API provides full access to create, read, update, and query issues, projects, cycles,
    roadmaps, and teams. It is the same API Linear uses internally for its own applications, supporting pagination, filtering,
    attachments, and file uploads.
  tags:
  - Linear
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: linear
    baseUri: https://api.linear.app/graphql
    description: Linear GraphQL API HTTP API.
    authentication:
      type: bearer
      token: '{{LINEAR_TOKEN}}'
    resources:
    - name: graphql
      path: /graphql
      operations:
      - name: executegraphqlquery
        method: POST
        description: Execute a GraphQL query or mutation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: graphql-upload
      path: /graphql/upload
      operations:
      - name: uploadfile
        method: POST
        description: Upload a file attachment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: linear-rest
    description: REST adapter for Linear GraphQL API.
    resources:
    - path: /graphql
      name: executegraphqlquery
      operations:
      - method: POST
        name: executegraphqlquery
        description: Execute a GraphQL query or mutation
        call: linear.executegraphqlquery
        outputParameters:
        - type: object
          mapping: $.
    - path: /graphql/upload
      name: uploadfile
      operations:
      - method: POST
        name: uploadfile
        description: Upload a file attachment
        call: linear.uploadfile
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: linear-mcp
    transport: http
    description: MCP adapter for Linear GraphQL API for AI agent use.
    tools:
    - name: executegraphqlquery
      description: Execute a GraphQL query or mutation
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: linear.executegraphqlquery
      outputParameters:
      - type: object
        mapping: $.
    - name: uploadfile
      description: Upload a file attachment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: linear.uploadfile
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    LINEAR_TOKEN: LINEAR_TOKEN