Linear Project — MCP-сервер для Claude Code: запуск и функции
Управляет задачами и проектами в Linear с жёстким контролем областей видимости. Подключает ссылки на коммиты GitHub и локальные заметки Obsidian.
claude mcp add --env LINEAR_API_KEY=<LINEAR_API_KEY> --env LINEAR_ACCESS_TOKEN=<LINEAR_ACCESS_TOKEN> --env LINEAR_ALLOWED_ORGANIZATION_ID=<LINEAR_ALLOWED_ORGANIZATION_ID> --env LINEAR_ALLOWED_TEAM_IDS=<LINEAR_ALLOWED_TEAM_IDS> --env LINEAR_ALLOWED_PROJECT_IDS=<LINEAR_ALLOWED_PROJECT_IDS> --transport stdio linear-project-mcp-server -- npx -y @openly-useful/linear-project-mcp-serverЧто делает Linear Project
Сервер ограничивает любые изменения в Linear строгими списками разрешений для организаций, команд и проектов. Идентификаторы задач привязаны к командам. Начать новую нумерацию с единицы можно только после проверки, что выделенная команда или подкоманда полностью пуста.
Запросы на изменение данных требуют явного подтверждения в параметрах вызова и временного окна записи не длиннее 60 минут. Адаптер GitHub работает только на чтение через GET-запросы к разрешённым репозиториям. Локальный адаптер Obsidian ищет Markdown-файлы размером до 200 000 байт внутри заданных папок хранилища. Он не передаёт текст заметки в Linear, отправляя лишь заголовок и URI. Без активного MCP_WRITES_ENABLED=true сервер отклонит любые попытки записи.
Какие задачи решает
- разграничить доступ агента к конкретным проектам и командам Linear
- исключить случайную перезапись тикетов через временные окна записи
- привязать ссылки на пулл-реквесты GitHub к карточкам задач
- связать контекст из заметок Obsidian с тикетами без выгрузки текста
Примеры запросов агенту
- Покажи доступные адаптеры и текущий статус записи через
linear_project_capabilities - Найди задачи в проекте с меткой
ACQIс помощьюlinear_project_list_scoped_issues - Привяжи ссылку на локальную заметку к задаче через
linear_project_link_evidence
Как установить Linear Project
Командой платформы
claude mcp add --env LINEAR_API_KEY=<LINEAR_API_KEY> --env LINEAR_ACCESS_TOKEN=<LINEAR_ACCESS_TOKEN> --env LINEAR_ALLOWED_ORGANIZATION_ID=<LINEAR_ALLOWED_ORGANIZATION_ID> --env LINEAR_ALLOWED_TEAM_IDS=<LINEAR_ALLOWED_TEAM_IDS> --env LINEAR_ALLOWED_PROJECT_IDS=<LINEAR_ALLOWED_PROJECT_IDS> --transport stdio linear-project-mcp-server -- npx -y @openly-useful/linear-project-mcp-serverВместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера
Командой платформы
codex mcp add linear-project-mcp-server --env LINEAR_API_KEY=<LINEAR_API_KEY> --env LINEAR_ACCESS_TOKEN=<LINEAR_ACCESS_TOKEN> --env LINEAR_ALLOWED_ORGANIZATION_ID=<LINEAR_ALLOWED_ORGANIZATION_ID> --env LINEAR_ALLOWED_TEAM_IDS=<LINEAR_ALLOWED_TEAM_IDS> --env LINEAR_ALLOWED_PROJECT_IDS=<LINEAR_ALLOWED_PROJECT_IDS> -- npx -y @openly-useful/linear-project-mcp-serverВместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера
Файл настроек
{
"mcpServers": {
"linear-project-mcp-server": {
"command": "npx",
"args": [
"-y",
"@openly-useful/linear-project-mcp-server"
],
"env": {
"LINEAR_API_KEY": "<LINEAR_API_KEY>",
"LINEAR_ACCESS_TOKEN": "<LINEAR_ACCESS_TOKEN>",
"LINEAR_ALLOWED_ORGANIZATION_ID": "<LINEAR_ALLOWED_ORGANIZATION_ID>",
"LINEAR_ALLOWED_TEAM_IDS": "<LINEAR_ALLOWED_TEAM_IDS>",
"LINEAR_ALLOWED_PROJECT_IDS": "<LINEAR_ALLOWED_PROJECT_IDS>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера
Файл настроек
{
"servers": {
"linear-project-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@openly-useful/linear-project-mcp-server"
],
"env": {
"LINEAR_API_KEY": "<LINEAR_API_KEY>",
"LINEAR_ACCESS_TOKEN": "<LINEAR_ACCESS_TOKEN>",
"LINEAR_ALLOWED_ORGANIZATION_ID": "<LINEAR_ALLOWED_ORGANIZATION_ID>",
"LINEAR_ALLOWED_TEAM_IDS": "<LINEAR_ALLOWED_TEAM_IDS>",
"LINEAR_ALLOWED_PROJECT_IDS": "<LINEAR_ALLOWED_PROJECT_IDS>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера
Командой платформы
gemini mcp add -e LINEAR_API_KEY=<LINEAR_API_KEY> -e LINEAR_ACCESS_TOKEN=<LINEAR_ACCESS_TOKEN> -e LINEAR_ALLOWED_ORGANIZATION_ID=<LINEAR_ALLOWED_ORGANIZATION_ID> -e LINEAR_ALLOWED_TEAM_IDS=<LINEAR_ALLOWED_TEAM_IDS> -e LINEAR_ALLOWED_PROJECT_IDS=<LINEAR_ALLOWED_PROJECT_IDS> linear-project-mcp-server npx -y @openly-useful/linear-project-mcp-serverВместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о Linear Project
Как установить Linear Project в Claude Code?
Выполните команду `claude mcp add linear-project -e LINEAR_API_KEY=<LINEAR_API_KEY> -e LINEAR_ACCESS_TOKEN=<LINEAR_ACCESS_TOKEN> -e LINEAR_ALLOWED_ORGANIZATION_ID=<LINEAR_ALLOWED_ORGANIZATION_ID> -e GITHUB_TOKEN=<GITHUB_TOKEN> -- npx -y @openly-useful/linear-project-mcp-server`.
Зачем серверу нужны списки разрешений?
Они блокируют доступ агента к несогласованным командам и проектам организации. Сервер требует указать точный ID компании в LINEAR_ALLOWED_ORGANIZATION_ID и коды разрешённых областей в LINEAR_ALLOWED_SCOPE_CODES.
Какие системные требования нужны для запуска?
Понадобятся Node.js версии 20 или новее и пакетный менеджер pnpm 10. Файлы заметок в Obsidian не должны превышать лимит в 200 000 байт.