Linear MCP server

Integrates with Linear's project management API to enable creation, viewing, updating, and management of projects, initiatives, and issues for holistic workflow support.
Back to servers
Setup instructions
Provider
Sam Finan
Release date
Feb 15, 2025
Language
TypeScript
Stats
6 stars

The Linear MCP Server enables seamless integration with the Linear API through Model Context Protocol, allowing you to manage initiatives, projects, issues, and relationships directly through Claude. This implementation offers comprehensive project management capabilities with features for prioritization and relationship tracking.

Installation

To install the Linear MCP Server, follow these steps:

  1. Add server configuration to Claude Desktop.

Note: Claude doesn't work well with nvm environments. Make sure to reference the Node version with its absolute path.

{
  "mcpServers": {
    "linear": {
      "command": "/Users/USERNAME/.nvm/versions/node/v22.13.0/bin/node",
      "args": [
        "--experimental-strip-types",
        "/absolute/path/to/repo/index.ts"
      ],
      "env": {
        "LINEAR_API_KEY": "your_linear_api_key_here"
      }
    }
  }
}
  1. Replace /Users/USERNAME/.nvm/versions/node/v22.13.0/bin/node with your actual Node path
  2. Replace /absolute/path/to/repo/index.ts with the actual path to the repository's index.ts file
  3. Set your Linear API key in the environment variables

Available Tools

Project Management

  • create-project - Create a new Linear project
  • view-project - View a Linear project by ID
  • update-project - Update a Linear project

Initiative Management

  • create-initiative - Create a new Linear initiative
  • view-initiative - View a Linear initiative by ID
  • update-initiative - Update a Linear initiative

Issue Management

  • create-issue - Create a new Linear issue
  • view-issue - View a Linear issue by ID
  • update-issue - Update a Linear issue
  • search-issues - Search Linear issues

Issue Relations

  • create-issue-relation - Create a relation between two issues (blocks, duplicates, etc.)
  • view-issue-relations - View all relations for a given issue
  • delete-issue-relation - Delete a relation between two issues

Usage Example

Here's an example of breaking down a large issue into multiple smaller issues with relationships:

User:
Break the Implement Contact API Endpoints issue into multiple issues, one for each endpoint

Claude:
I'll break down the API endpoints issue into separate issues for each endpoint and create the appropriate relationships.

Claude will create separate issues through the MCP server:

  1. GET /contacts (List)
  2. GET /contacts/:id (Single)
  3. POST /contacts (Create)
  4. PUT /contacts/:id (Update)
  5. DELETE /contacts/:id (Delete)

It will then establish relationships between these issues:

View result from create-issue-relation from linear (local)

Claude will also manage dependencies between issues, for example, making all endpoint issues dependent on a "TypeScript Models" issue being completed first.

This allows for complex project management workflows directly through your Claude interface, with the MCP server handling all communication with Linear behind the scenes.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "linear" '{"command":"/Users/USERNAME/.nvm/versions/node/v22.13.0/bin/node","args":["--experimental-strip-types","/absolute/path/to/repo/index.ts"],"env":{"LINEAR_API_KEY":"your_linear_api_key_here"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "linear": {
            "command": "/Users/USERNAME/.nvm/versions/node/v22.13.0/bin/node",
            "args": [
                "--experimental-strip-types",
                "/absolute/path/to/repo/index.ts"
            ],
            "env": {
                "LINEAR_API_KEY": "your_linear_api_key_here"
            }
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "linear": {
            "command": "/Users/USERNAME/.nvm/versions/node/v22.13.0/bin/node",
            "args": [
                "--experimental-strip-types",
                "/absolute/path/to/repo/index.ts"
            ],
            "env": {
                "LINEAR_API_KEY": "your_linear_api_key_here"
            }
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later