An MCP server for interacting with Linear's API, providing tools for managing issues, projects, and teams
npm install linear-mcpAn MCP server for interacting with Linear's API. This server provides a set of tools for managing Linear issues, projects, and teams through Cline.
1. Go to Linear: Settings > API > OAuth application > "Cline MCP"
2. Under "Developer Token", click "Create & copy token"
3. Select "Application" and copy the generated token
1. Open your Cline MCP settings file:
- macOS: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Windows: %APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Linux: ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
2. Add the Linear MCP server configuration:
``json`
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["linear-mcp"],
"env": {
"LINEAR_ACCESS_TOKEN": "your_linear_api_token_here"
},
"disabled": false,
"autoApprove": []
}
}
}
That's it! The server will be automatically downloaded and run through npx when needed.
Note: Replace your_linear_api_token_here with the API token you generated in step 1.
The server currently supports the following operations:
The following features are currently being worked on:
You can connect to multiple Linear workspaces by adding the Linear MCP server multiple times with different TOOL_PREFIX values. This allows you to work with separate Linear workspaces within the same Cline environment.
`json`
{
"mcpServers": {
"company1-linear": {
"command": "npx",
"args": ["linear-mcp"],
"env": {
"LINEAR_ACCESS_TOKEN": "your_company1_linear_token_here",
"TOOL_PREFIX": "company1"
},
"disabled": false,
"autoApprove": []
},
"company2-linear": {
"command": "npx",
"args": ["linear-mcp"],
"env": {
"LINEAR_ACCESS_TOKEN": "your_company2_linear_token_here",
"TOOL_PREFIX": "company2"
},
"disabled": false,
"autoApprove": []
},
"company3-linear": {
"command": "npx",
"args": ["linear-mcp"],
"env": {
"LINEAR_ACCESS_TOKEN": "your_company3_linear_token_here",
"TOOL_PREFIX": "company3"
},
"disabled": false,
"autoApprove": []
}
}
}
When you set a TOOL_PREFIX value:
1. All tool names are prefixed with it (e.g., company1_linear_create_issue)
2. Tool descriptions include the prefix (e.g., "For 'company1' Linear workspace: Create a new issue")
This makes it clear which workspace each tool is operating on and prevents conflicts between different Linear instances.
If you want to contribute to the development of this MCP server, follow these steps:
1. Clone the repository
2. Install dependencies:
`bash`
npm install
.env.example
3. Copy to .env:`
bash`
cp .env.example .env
.env
4. Add your Linear API token to :`
`
LINEAR_ACCESS_TOKEN=your_personal_access_token
`bashInstall dependencies
npm install
$3
Integration tests verify that authentication and API calls work correctly:
1. Set up authentication in
.env (PAT recommended for testing)
2. Run integration tests:
`bash
npm run test:integration
`For OAuth testing:
1. Configure OAuth credentials in
.env:
`
LINEAR_CLIENT_ID=your_oauth_client_id
LINEAR_CLIENT_SECRET=your_oauth_client_secret
LINEAR_REDIRECT_URI=http://localhost:3000/callback
`
2. Remove .skip from OAuth tests in src/__tests__/auth.integration.test.ts`