trackmcp
Back to directory
timottowitz

linear-mcp

View on GitHub

a private MCP server for accessing Linear

0 stars TypeScriptOthers Updated May 9, 2025

Documentation

Linear MCP Server

An MCP server for interacting with Linear's API. This server provides a set of tools for managing Linear issues, projects, and teams through Cline.

Setup Guide

1. Environment Setup

1. Clone the repository

2. Install dependencies:

bash
npm install

3. Copy `.env.example` to `.env`:

bash
cp .env.example .env

2. Authentication

The server supports two authentication methods:

1. Go to Linear Settings

2. Navigate to the "Security & access" section

3. Find the "Personal API keys" section

4. Click "New API key"

5. Give the key a descriptive label (e.g. "Cline MCP")

6. Copy the generated token immediately

7. Add the token to your `.env` file:

code
LINEAR_API_KEY=your_api_key

OAuth Flow (Alternative) *NOT IMPLEMENTED*

1. Create an OAuth application at https://linear.app/settings/api/applications

2. Configure OAuth environment variables in `.env`:

code
LINEAR_CLIENT_ID=your_oauth_client_id
   LINEAR_CLIENT_SECRET=your_oauth_client_secret
   LINEAR_REDIRECT_URI=http://localhost:3000/callback

3. Running the Server

1. Build the server:

bash
npm run build

2. Start the server:

bash
npm start

4. Cline Integration

1. Open your Cline MCP settings file:

    2. Add the Linear MCP server configuration:

    json
    {
         "mcpServers": {
           "linear": {
             "command": "node",
             "args": ["/path/to/linear-mcp/build/index.js"],
             "env": {
               "LINEAR_API_KEY": "your_personal_access_token"
             },
             "disabled": false,
             "autoApprove": []
           }
         }
       }

    Available Actions

    The server currently supports the following operations:

    Issue Management

    • ✅ Create issues with full field support (title, description, team, project, etc.)
    • ✅ Update existing issues (priority, description, etc.)
    • ✅ Delete issues (single or bulk deletion)
    • ✅ Search issues with filtering
    • ✅ Associate issues with projects
    • ✅ Create parent/child issue relationships

    Project Management

    • ✅ Create projects with associated issues
    • ✅ Get project information
    • ✅ Associate issues with projects

    Team Management

    • ✅ Get team information (with states and workflow details)
    • ✅ Access team states and labels

    Authentication

    • ✅ API Key authentication
    • ✅ Secure token storage

    Batch Operations

    • ✅ Bulk issue creation
    • ✅ Bulk issue deletion

    Bulk Updates (In Testing)

    • 🚧 Bulk issue updates (parallel processing implemented, needs testing)

    Features in Development

    The following features are currently being worked on:

    Issue Management

    • 🚧 Comment functionality (add/edit comments, threading)
    • 🚧 Complex search filters
    • 🚧 Pagination support for large result sets

    Metadata Operations

    • 🚧 Label management (create/update/assign)
    • 🚧 Cycle/milestone management

    Project Management

    • 🚧 Project template support
    • 🚧 Advanced project operations

    Authentication

    • 🚧 OAuth flow with automatic token refresh

    Performance & Security

    • 🚧 Rate limiting
    • 🚧 Detailed logging
    • 🚧 Load testing and optimization

    Development

    bash
    # Install dependencies
    npm install
    
    # Run tests
    npm test
    
    # Run integration tests (requires LINEAR_API_KEY)
    npm run test:integration
    
    # Build the server
    npm run build
    
    # Start the server
    npm start

    Integration Testing

    Integration tests verify that authentication and API calls work correctly:

    1. Set up authentication (API Key recommended for testing)

    2. Run integration tests:

    bash
    npm run test:integration

    For OAuth testing:

    1. Configure OAuth credentials in `.env`

    2. Remove `.skip` from OAuth tests in `src/__tests__/auth.integration.test.ts`

    3. Run integration tests

    Frequently asked questions

    What is linear-mcp?

    linear-mcp is a private MCP server for accessing Linear

    How do I install linear-mcp?

    Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

    Is linear-mcp open source?

    Yes — it is hosted on GitHub at https://github.com/timottowitz/linear-mcp.

    Related MCP tools

    Run your own MCP server? See who uses it and what to fix.

    Measure it with TrackMCP