Linear
Integra com sistemas de gerenciamento de projetos Linear.
Documentação
MCP Linear
Um servidor Model Context Protocol (MCP) para a API GraphQL do Linear, construído para fluxos de trabalho reais de gerenciamento de projetos — não apenas operações básicas de CRUD de issues.
Recursos
O MCP Linear conecta assistentes de IA ao Linear implementando o protocolo MCP. Com ele, você pode:
- Recuperar issues, projetos, equipes, ciclos, marcos, roadmaps, clientes, necessidades de clientes e documentos de workspace/projeto/iniciativa/equipe/release/ciclo
- Criar e atualizar issues, alterar status, atribuir e comentar
- Gerenciar projetos, ciclos de vida completos de atualização de projetos e iniciativas com detecção de diffs, marcos, roadmaps, visualizações salvas e favoritos
- Criar e gerenciar webhooks do workspace, incluindo atualizações e rotação de segredos de assinatura
- Preparar manifestos de aplicativos OAuth e URLs de autorização, tokens de credenciais de cliente com escopo de issue, ou gerenciar aplicativos OAuth filhos quando autenticado como um aplicativo OAuth gerenciador
- Trabalhar com modelos, campos personalizados e anexos
- Trabalhar com registros de clientes, status/níveis de clientes e necessidades de clientes vinculadas a issues ou projetos
- Ler notificações, assinaturas, sessões, auditorias e integrações sem sair do MCP
- Inspecionar limites de taxa e saúde do servidor antes de executar sessões pesadas de planejamento
Consulte TOOLS.md para o inventário completo.
Recursos e prompts nativos do MCP
O servidor expõe recursos e prompts do MCP além das ferramentas, incluindo:
- Recursos:
linear://viewer,linear://organization,linear://teams,linear://projects,linear://project/{id},linear://project/{id}/issues,linear://project/{id}/documents,linear://issue/{id},linear://document/{id},linear://roadmap/{id},linear://milestone/{id},linear://rate-limit - Prompts:
summarize-project-status,draft-project-update,triage-issue,summarize-document
Exemplos de prompts
Depois de conectado, você pode usar prompts como:
- "Mostre todas as minhas issues do Linear"
- "Crie uma nova issue intitulada 'Corrigir bug de login' na equipe Frontend"
- "Altere o status da issue FE-123 para 'Em andamento'"
- "Atribua a issue BE-456 a John Smith"
- "Mostre todas as issues abertas neste projeto agrupadas por marco e ciclo"
- "Elabore uma atualização semanal do projeto com base no estado atual do Linear"
- "Encontre os documentos mais recentes relacionados a um projeto e resuma as principais decisões"
- "Mostre os documentos e links fixados na página inicial desta equipe"
- "Crie um documento para ENG-123 com metadados de ordenação de recursos"
- "Obtenha o diff mais recente da atualização do projeto e arquive uma atualização desatualizada"
- "Mostre as necessidades de clientes deste projeto e marque as importantes"
- "Crie uma atualização de iniciativa e oculte o diff gerado do corpo da atualização"
- "Prepare um aplicativo OAuth privado para meu pipeline de issues do GitHub com credenciais de cliente habilitadas"
- "Emita um token de credenciais de cliente com escopo restrito para esse pipeline do GitHub"
- "Crie um webhook para eventos de Issue e Comment e depois rotacione o segredo de assinatura"
Instalação
Autenticação
Chave de API pessoal (padrão)
- Faça login na sua conta Linear em linear.app
- Clique no avatar da sua organização (canto superior esquerdo)
- Selecione Configurações
- Navegue até Segurança e acesso na barra lateral esquerda
- Em Chaves de API pessoais, clique em Nova chave de API
- Dê um nome à sua chave (por exemplo,
MCP Linear Integration) - Copie o token de API gerado e armazene-o com segurança — você não poderá vê-lo novamente
As chaves de API pessoais suportam as ferramentas normais do Linear e de webhooks do workspace. Elas não podem chamar a API alfa de aplicativos OAuth filhos gerenciados do Linear, pois essa API exige que o chamador seja, ele próprio, um aplicativo OAuth. Com uma chave de API pessoal, linear_generateOAuthApplicationSetup ainda prepara um manifesto oficial e uma URL de configuração do Linear pré-preenchida para um administrador confirmar.
Token de acesso OAuth (aplicativos OAuth gerenciados)
Para permitir que o MCP realmente crie e gerencie aplicativos OAuth filhos, autentique-o com um token de acesso pertencente a um aplicativo OAuth do Linear elegível para gerenciar esses aplicativos filhos:
export LINEAR_OAUTH_ACCESS_TOKEN=YOUR_OAUTH_ACCESS_TOKEN
mcp-linear
Ou passe --oauth-token YOUR_OAUTH_ACCESS_TOKEN. Credenciais explícitas de linha de comando têm precedência sobre variáveis de ambiente; quando ambos os tipos de credenciais de ambiente estão presentes, a autenticação OAuth é selecionada. Consulte a documentação OAuth e os manifestos de aplicativos OAuth do Linear.
Cada processo do servidor MCP usa uma credencial do Linear. Se o token do aplicativo gerenciador usar actor=app (que não pode receber admin) e você também precisar de ferramentas de webhook do workspace com escopo de administrador, configure duas entradas de servidor MCP: uma com o token OAuth gerenciador para operações de aplicativos filhos e outra com a chave de API pessoal de um administrador do workspace para webhooks do workspace. Um token OAuth de ator de usuário com admin pode cobrir o lado do webhook.
Os escopos OAuth são selecionados quando uma URL de autorização ou token de credenciais de cliente é solicitado; eles não são campos mutáveis em um aplicativo OAuth. O MCP valida os escopos atuais do Linear, prepara URLs de autorização e pode emitir tokens de ator de aplicativo com linear_createOAuthClientCredentialsToken. Para pipelines hospedados no GitHub, habilite a concessão client_credentials e solicite o escopo útil mais restrito, como issues:create.
Tokens de credenciais de cliente normalmente expiram após 30 dias e não possuem token de atualização. O Linear permite múltiplos tokens ativos apenas enquanto usam o mesmo conjunto de escopos; solicitar um conjunto de escopos diferente revoga os tokens de ator de aplicativo existentes. A ferramenta de token, portanto, exige tanto confirmSecretExposure: true quanto confirmScopeChangeRisk: true.
Criar um aplicativo OAuth e rotacionar segredos OAuth ou de webhook retorna material secreto de uso único por meio do MCP. Essas ferramentas exigem confirmSecretExposure: true; mova os valores retornados diretamente para um gerenciador de segredos, como os segredos do GitHub Actions, e não os cole no controle de versão ou em logs.
As URLs de webhook devem ser endpoints HTTPS publicamente acessíveis. A validação rejeita credenciais em URLs e destinos óbvios de loopback, rede privada, link-local e nomes de host locais.
Instalação via add-mcp (Recomendado)
add-mcp instala o servidor no Claude Code, Cursor, Codex, VS Code, Claude Desktop e muitos outros agentes compatíveis com MCP com um único comando:
npx add-mcp @tacticlaunch/mcp-linear --env LINEAR_API_TOKEN=YOUR_LINEAR_API_TOKEN
Adicione -g para instalar globalmente em vez de no projeto atual. Consulte a documentação do add-mcp para a lista completa de agentes e flags.
Configuração manual
Adicione o seguinte ao seu arquivo de configurações do MCP:
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["-y", "@tacticlaunch/mcp-linear"],
"env": {
"LINEAR_API_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Locais de configuração específicos do cliente
- Cursor:
~/.cursor/mcp.json - Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json - Extensão Claude VSCode:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - GoMCP:
~/.config/gomcp/config.yaml
Execução manual
Pré-requisitos:
- Node.js (v20+)
- NPM ou Yarn
- Chave de API pessoal do Linear ou token de acesso OAuth
# Install globally
npm install -g @tacticlaunch/mcp-linear
# Or clone and install locally
git clone https://github.com/tacticlaunch/mcp-linear.git
cd mcp-linear
npm install
npm link # Makes the package available globally
Executando o servidor
Execute o servidor com seu token de API do Linear:
mcp-linear --token YOUR_LINEAR_API_TOKEN
Ou com o token de acesso de um aplicativo OAuth gerenciador:
mcp-linear --oauth-token YOUR_OAUTH_ACCESS_TOKEN
Ou defina o token no seu ambiente e execute sem argumentos:
export LINEAR_API_TOKEN=YOUR_LINEAR_API_TOKEN
mcp-linear
Validação
O caminho de validação padrão é:
npm test
npm run build
npm test executa testes unitários Jest e um teste de fumaça do SDK oficial do MCP contra o servidor stdio compilado, cobrindo o registro de ferramentas, recursos e prompts, além da emissão de esquemas compatíveis com o host.
Desenvolvimento
Consulte DEVELOPMENT.md para detalhes de desenvolvimento local.
Links
tacticlaunch/cursor-memory-bank — Se você é um desenvolvedor que deseja aprimorar seu fluxo de trabalho com o Cursor, considere experimentá-lo.
Licença
Este projeto é licenciado sob a Licença MIT — consulte o arquivo LICENSE para obter detalhes.