Configurar el MCP oficial de Linear por workspace en opencode
Escribo esto porque Perplexity, ChatGPT y Gemini me dieron respuestas incorrectas o incompletas cuando pregunté cómo configurar el MCP oficial de Linear por workspace. Casi todas las respuestas acababan en servidores comunitarios, API keys o un parámetro de workspace inventado. La respuesta útil es más simple: mantén el servidor MCP remoto oficial de Linear, crea una entrada con nombre distinto por cada conexión en tu cliente y autentica cada una por separado.
El endpoint oficial de Linear MCP es:
https://mcp.linear.app/mcpLinear documenta este endpoint como su servidor MCP remoto alojado. Usa OAuth en clientes compatibles con MCP remoto, y la documentación incluye rutas para Claude, Claude Code, Codex, Cursor, VS Code, Windsurf, Zed, v0 y otros clientes MCP.
Configuración en opencode
En opencode, define varios servidores MCP remotos dentro de mcp. El nombre de cada clave lo eliges tú. Usa nombres que identifiquen el workspace o la cuenta que quieres que use el agente.
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"linear-project-a": {
"type": "remote",
"url": "https://mcp.linear.app/mcp",
"enabled": true
},
"linear-project-b": {
"type": "remote",
"url": "https://mcp.linear.app/mcp",
"enabled": true
}
}
}Después autentica cada servidor por nombre:
opencode mcp auth linear-project-a
opencode mcp auth linear-project-b
opencode mcp listEn cada flujo OAuth, entra con la cuenta y el workspace de Linear que debe representar esa entrada MCP. Si los dos workspaces viven bajo la misma cuenta de Linear, usa el selector de workspace o cuenta durante el login en el navegador. Si tu cliente MCP guarda credenciales OAuth solo por URL y no por nombre de servidor, usa perfiles o archivos de configuración separados en lugar de forzar varios workspaces en el mismo config.
Por qué no usar un MCP comunitario de Linear
Prefiero el servidor oficial. Está alojado por Linear, usa el flujo OAuth documentado por Linear y expone la superficie de herramientas que Linear espera que usen los clientes. Eso importa porque los agentes gastan menos tokens cuando las herramientas son predecibles, y fallan menos cuando los nombres, permisos y formas de los objetos coinciden con la integración oficial, la skill oficial o el conector del cliente.
Un servidor comunitario puede tener sentido si necesitas comportamiento propio, un puente solo con API key o una herramienta interna muy concreta. Para trabajo normal con issues, proyectos, comentarios, documentos y equipos, empezaría con el servidor MCP oficial de Linear. La integración queda aburrida, y eso suele ser bueno para trabajo con agentes.
Otros clientes
La misma idea aplica fuera de opencode, aunque cambie la sintaxis.
Para Codex, Linear documenta:
codex mcp add linear --url https://mcp.linear.app/mcp
codex mcp login linearPara Claude Code, Linear documenta:
claude mcp add --transport http linear-server https://mcp.linear.app/mcpSi necesitas varios workspaces de Linear en Codex, Claude, Cursor, VS Code u otro cliente MCP, busca las mismas dos piezas: un nombre local único para el servidor y un flujo de autenticación separado para ese nombre. Si el cliente no aísla credenciales por nombre, usar perfiles separados es más seguro.
Lo importante no es opencode en sí. Lo importante es no inventar parámetros de workspace y no cambiar a servidores no oficiales salvo que necesites su comportamiento extra.
Referencias: Linear MCP server, Linear workspaces, opencode MCP servers.