Linear MCP Server

by cosmix

Integrations

  • Allows access to Linear's issue tracking system, enabling users to create, update, search, and delete issues, add comments, retrieve projects and team information, manage labels, and track parent/child relationships among issues.

Servidor MCP lineal

Una implementación de servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso al sistema de seguimiento de problemas de Linear a través de una interfaz estandarizada.

Características

  • Cree nuevos problemas y subproblemas con soporte de etiquetas
  • Recuperar la lista de proyectos lineales
  • Recuperar las actualizaciones del proyecto
  • Crear una nueva actualización de proyecto con el estado de salud
  • Actualizar los problemas existentes con la modificación completa del campo
  • Eliminar problema con la validación
  • Autoasignar problemas usando la palabra clave "yo"
  • Búsqueda avanzada con las potentes capacidades de filtrado de Linear
  • Filtrar problemas por ciclo (actual, siguiente, anterior o ciclo específico por UUID o número)
  • Agregar comentarios a los problemas con la compatibilidad con Markdown
  • Consulta de problemas lineales por ID o clave con relaciones opcionales
  • Problemas de búsqueda mediante consultas personalizadas con metadatos mejorados
  • Operaciones de tipo seguro utilizando el SDK oficial de Linear
  • Manejo integral de errores
  • Manejo del límite de velocidad
  • Transformación de datos limpios
  • Seguimiento de la relación padre/hijo con herencia de equipo
  • Gestión y sincronización de etiquetas

Prerrequisitos

  • Tiempo de ejecución de Bun (v1.0.0 o superior)
  • Cuenta lineal con acceso API

Variables de entorno

LINEAR_API_KEY=your_api_key # Your Linear API token

Instalación y configuración

1. Clonar el repositorio:

git clone [repository-url] cd linear-mcp

2. Instalar dependencias y compilar:

bun install bun run build

3. Configurar el servidor MCP:

Edite el archivo de configuración apropiado:

macOS:

  • Cline: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • Escritorio de Claude: ~/Library/Application Support/Claude/claude_desktop_config.json

Ventanas:

  • Cline: %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
  • Escritorio de Claude: %APPDATA%\Claude Desktop\claude_desktop_config.json

Linux:

  • Cline: ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • Claude Desktop: lamentablemente aún no existe

Agregue la siguiente configuración bajo el objeto mcpServers :

{ "mcpServers": { "linear": { "command": "node", "args": ["/absolute/path/to/linear-mcp/build/index.js"], "env": { "LINEAR_API_KEY": "your_api_key" } } } }

4. Reinicie el servidor MCP.

En la configuración de MCP de Cline, reinicie el servidor MCP. Reinicie Claude Desktop para cargar el nuevo servidor MCP.

Desarrollo

Ejecutar el servidor de desarrollo:

bun run dev

Proyecto de construcción:

bun run build

Herramientas MCP disponibles

Para obtener ejemplos de uso detallados de todas las herramientas, consulte USAGE.md .

crear_problema

Crear un nuevo problema o subproblema lineal.

Esquema de entrada:

{ "teamId": "string", "title": "string", "description": "string", "parentId": "string", "status": "string", "priority": "number", "assigneeId": "string | 'me'", "labelIds": ["string"] }

problema de actualización

Actualizar un problema lineal existente.

Esquema de entrada:

{ "issueId": "string", "title": "string", "description": "string", "status": "string", // Expects status NAME (e.g., "In Progress"). Must be valid for the issue's team. "priority": "number", // Expects 0 (None) to 4 (Low). "assigneeId": "string | 'me'", "labelIds": ["string"], "cycleId": "string" }

obtener_problema

Obtenga información detallada sobre un problema lineal específico con relaciones opcionales.

Esquema de entrada:

{ "issueId": "string", "includeRelationships": "boolean" }

problemas de búsqueda

Busque problemas de Linear mediante una cadena de consulta y filtros avanzados. Compatible con las potentes funciones de filtrado de Linear.

Esquema de entrada:

{ "query": "string", "includeRelationships": "boolean", "filter": { "title": { "contains": "string", "eq": "string", ... }, "description": { "contains": "string", "eq": "string", ... }, "priority": { "gte": "number", "lt": "number", ... }, "estimate": { "eq": "number", "in": ["number"], ... }, "dueDate": { "lt": "string", "gt": "string", ... }, "createdAt": { "gt": "P2W", "lt": "2024-01-01", ... }, "updatedAt": { "gt": "P1M", ... }, "completedAt": { "null": true, ... }, "assignee": { "id": { "eq": "string" }, "name": { "contains": "string" } }, "creator": { "id": { "eq": "string" }, "name": { "contains": "string" } }, "team": { "id": { "eq": "string" }, "key": { "eq": "string" } }, "state": { "type": { "eq": "started" }, "name": { "eq": "string" } }, "labels": { "name": { "in": ["string"] }, "every": { "name": { "eq": "string" } } }, "project": { "id": { "eq": "string" }, "name": { "contains": "string" } }, "and": [{ /* filters */ }], "or": [{ /* filters */ }], "assignedTo": "string | 'me'", "createdBy": "string | 'me'" }, "projectId": "string", "projectName": "string" }

Comparadores compatibles:

  • Campos de cadena: eq , neq , in , nin , contains , startsWith , endsWith (más variantes que no distinguen entre mayúsculas y minúsculas)
  • Campos numéricos: eq , neq , lt , lte , gt , gte , in , nin
  • Campos de fecha: eq , neq , lt , lte , gt , gte (admite duraciones ISO 8601)

obtener_equipos

Obtenga una lista de equipos lineales con filtrado de nombre/clave opcional.

Esquema de entrada:

{ "nameFilter": "string" }

eliminar_problema

Eliminar un problema lineal existente.

Esquema de entrada:

{ "issueId": "string" }

crear_comentario

Crear un nuevo comentario sobre un problema lineal.

Esquema de entrada:

{ "issueId": "string", "body": "string" }

obtener_proyectos

Obtenga una lista de proyectos lineales con filtrado de nombres y paginación opcionales.

Esquema de entrada:

{ "nameFilter": "string", "includeArchived": "boolean", "first": "number", "after": "string" }

obtener_actualizaciones_del_proyecto

Obtenga actualizaciones de proyecto para un ID de proyecto determinado con parámetros de filtrado opcionales.

Esquema de entrada:

{ "projectId": "string", "includeArchived": "boolean", "first": "number", "after": "string", "createdAfter": "string", "createdBefore": "string", "userId": "string | 'me'", "health": "string" }

crear_actualización_del_proyecto

Crear una nueva actualización para un proyecto lineal.

Esquema de entrada:

{ "projectId": "string", "body": "string", "health": "onTrack | atRisk | offTrack", "isDiffHidden": "boolean" }

Detalles técnicos

  • Construido con TypeScript en modo estricto
  • Utiliza el SDK oficial de Linear (@linear/sdk)
  • Utiliza el SDK de MCP (@modelcontextprotocol/sdk 1.4.0)
  • Autenticación mediante tokens API
  • Manejo integral de errores
  • Consideraciones sobre la limitación de velocidad
  • Tiempo de ejecución de Bun para un rendimiento mejorado
  • Módulos ESM en todo el mundo
  • Sistema de construcción Vite
  • Operaciones con seguridad de tipos
  • Funciones de limpieza de datos:
    • Extracción de menciones de problemas (formato ABC-123)
    • Extracción de menciones de usuario (formato de nombre de usuario)
    • Limpieza de contenido de Markdown
    • Optimización de contenido para el contexto de IA
  • Apoyo para la autoasignación:
    • Resolución automática del usuario actual
    • Compatibilidad con la palabra clave 'me' en operaciones de creación y actualización
    • Almacenamiento eficiente en caché de ID de usuario
  • Capacidades de búsqueda avanzada:
    • Filtrado completo con la API de Linear
    • Soporte para todos los comparadores de campo
    • Filtrado de relaciones
    • Operadores lógicos (y, o)
    • Filtrado de fechas relativas
    • Filtrar por cesionario/creador (incluido uno mismo)
    • Compatibilidad con identificaciones de usuario específicas
    • Filtrado de proyectos por ID o nombre
    • Optimización eficiente de consultas
  • Características de gestión de proyectos:
    • Listado de proyectos con filtrado y paginación
    • Creación de actualizaciones de proyectos con seguimiento del estado de salud
    • Recuperación de actualizaciones de proyectos con opciones de filtrado

Manejo de errores

El servidor implementa una estrategia integral de manejo de errores:

  • Detección de errores de red y mensajería adecuada
  • Manejo del código de estado HTTP
  • Mensajes de error detallados con códigos de estado
  • Detalles del error al registrarse en la consola
  • Validación de entrada para todos los parámetros
  • Validación y sincronización de etiquetas
  • Propagación segura de errores mediante el protocolo MCP
  • Detección y manejo del límite de velocidad
  • Manejo de errores de autenticación
  • Manejo de consultas no válidas
  • Validación de herencia de equipo para subproblemas
  • Validación de la resolución del usuario
  • Validación del filtro de búsqueda

LICENCIA

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Proporciona una interfaz de protocolo de contexto de modelo para acceder al sistema de seguimiento de problemas de Linear, lo que permite a los usuarios consultar y buscar problemas con seguridad de tipos TypeScript y manejo sólido de errores.

  1. Características
    1. Prerrequisitos
      1. Variables de entorno
        1. Instalación y configuración
          1. 1. Clonar el repositorio:
          2. 2. Instalar dependencias y compilar:
          3. 3. Configurar el servidor MCP:
          4. 4. Reinicie el servidor MCP.
        2. Desarrollo
          1. Herramientas MCP disponibles
            1. crear_problema
            2. problema de actualización
            3. obtener_problema
            4. problemas de búsqueda
            5. obtener_equipos
            6. eliminar_problema
            7. crear_comentario
            8. obtener_proyectos
            9. obtener_actualizaciones_del_proyecto
            10. crear_actualización_del_proyecto
          2. Detalles técnicos
            1. Manejo de errores
              1. LICENCIA

                Related MCP Servers

                • -
                  security
                  A
                  license
                  -
                  quality
                  A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.
                  Last updated -
                  324
                  288
                  JavaScript
                  MIT License
                  • Apple
                • -
                  security
                  -
                  license
                  -
                  quality
                  A TypeScript implementation of a Model Context Protocol server that connects to Sentry error tracking service, allowing AI models to query and analyze error reports and events.
                  Last updated -
                  TypeScript
                • -
                  security
                  A
                  license
                  -
                  quality
                  Provides access to Linear's issue tracking system through a standardized Model Context Protocol interface, allowing users to create, update, search, and manage issues, projects, and comments via natural language.
                  Last updated -
                  16
                  MIT License
                  • Apple
                  • Linux
                • -
                  security
                  A
                  license
                  -
                  quality
                  A Model Context Protocol server that enables large language models to interact with Linear's issue tracking system, allowing management of issues, projects, teams, and other Linear resources.
                  Last updated -
                  TypeScript
                  MIT License
                  • Apple

                View all related MCP servers

                ID: 83wkbjoqvn