Официальный MCP-сервер Plane для управления проектами через ИИ
📂 Исходный код на GitHubОфициальный MCP-сервер Plane — интеграция открытой платформы управления проектами с ИИ-агентами на базе Python и FastMCP.
Plane — это открытая платформа управления проектами с открытым исходным кодом. Команда Plane выпустила официальный MCP-сервер, который позволяет ИИ-агентам взаимодействовать с рабочим пространством Plane напрямую: создавать задачи, вести циклы, управлять модулями и следить за прогрессом через естественный язык.
Текущая реализация написана на Python поверх FastMCP и использует Pydantic-модели из официального SDK Plane для типизации и валидации. Она заменила прежнюю версию на Node.js, которая объявлена deprecated и больше не поддерживается.
Возможности
- Прямая интеграция с Plane: доступ к API и сервисам платформы.
- Несколько транспортов: stdio, SSE и streamable HTTP — можно запускать локально или как удалённый сервис.
- Локально и удалённо: работает и как локальный процесс, и как hosted-сервер.
- Расширяемость: новые инструменты и ресурсы добавляются без особых усилий.
Транспорты и требования
Сервер поддерживает четыре способа подключения. Рекомендуемый способ запуска через uvx — не требует установки.
Требования:
- Python 3.10+ — для stdio-транспорта через
uvx. - Node.js 22+ — для удалённых транспортов через
npx.
Конфигурация клиента
1. Stdio (локально)
Конфиг для MCP-клиента:
{
"mcpServers": {
"plane": {
"command": "uvx",
"args": ["plane-mcp-server", "stdio"],
"env": {
"PLANE_API_KEY": "<your-api-key>",
"PLANE_WORKSPACE_SLUG": "<your-workspace-slug>",
"PLANE_BASE_URL": "https://api.plane.so"
}
}
}
}
2. Удалённый HTTP с OAuth
Подключение к hosted-серверу через OAuth. Аутентификация обрабатывается автоматически.
URL: https://mcp.plane.so/http/mcp
{
"mcpServers": {
"plane": {
"command": "npx",
"args": ["mcp-remote@latest", "https://mcp.plane.so/http/mcp"]
}
}
}
3. Удалённый HTTP с PAT-токеном
Подключение через Personal Access Token (PAT).
URL: https://mcp.plane.so/http/api-key/mcp
Заголовки:
Authorization: Bearer <PAT_TOKEN>X-Workspace-slug: <SLUG>
{
"mcpServers": {
"plane": {
"command": "npx",
"args": ["mcp-remote@latest", "https://mcp.plane.so/http/api-key/mcp"],
"headers": {
"Authorization": "Bearer <PAT_TOKEN>",
"X-Workspace-slug": "<SLUG>"
}
}
}
}
4. SSE (legacy)
SSE-транспорт сохраняется для обратной совместимости. Для новых интеграций стоит использовать HTTP-транспорт (варианты 2 и 3).
URL: https://mcp.plane.so/sse
{
"mcpServers": {
"plane": {
"command": "npx",
"args": ["mcp-remote@latest", "https://mcp.plane.so/sse"]
}
}
}
Настройка
Аутентификация
Сервер требует аутентификацию через переменные окружения:
PLANE_BASE_URL— базовый URL API Plane (по умолчаниюhttps://api.plane.so), необязательно.PLANE_API_KEY— API-ключ (обязателен для stdio-транспорта).PLANE_WORKSPACE_SLUG— идентификатор рабочего пространства (обязателен для stdio-транспорта).PLANE_ACCESS_TOKEN— access-токен для аутентификации (альтернатива API-ключу).
Пример для stdio:
export PLANE_BASE_URL="https://api.plane.so"
export PLANE_API_KEY="your-api-key"
export PLANE_WORKSPACE_SLUG="your-workspace-slug"
Для удалённых HTTP-транспортов (OAuth или PAT) аутентификация выполняется через метод подключения, переменные окружения не требуются.
OAuth redirect URIs
Сервер проверяет redirect URI каждого клиента по allowlist'у. Популярные MCP-клиенты (Cursor, VS Code, Claude.ai, ChatGPT-коннекторы, localhost) разрешены по умолчанию. Чтобы добавить новый клиент, допишите паттерны через переменную окружения:
export PLANE_OAUTH_ALLOWED_REDIRECT_URIS="https://newclient.com/cb,https://other.app/oauth/*"
Паттерны поддерживают glob (*); для безопасности host должен оставаться фиксированным, а wildcard допустим только в порте/пути.
Логирование
Сервер пишет структурированные JSON-логи. Каждый вызов инструмента логируется с именем, длительностью, статусом и (когда доступно) анонимным id пользователя и слагом рабочего пространства.
LOG_USER_INFO включает запись персональной информации (например, отображаемого имени) в логи. По умолчанию установлено false, чтобы PII не логировалась без явного согласия.
Доступные инструменты
Более 100 инструментов в 20 категориях. Всё, что можно сделать в интерфейсе Plane, доступно через агента:
- Projects — список, создание, обновление, удаление проектов; участники; сводка по worklog.
- Work Items — задачи: CRUD, поиск по воркспейсу, получение по идентификатору.
- Cycles — спринты: создание, управление задачами, архивация, перенос между циклами.
- Modules — модули: создание, добавление задач, архивация.
- Initiatives — инициативы воркспейса.
- Milestones — вехи и связанные задачи.
- Work Item Properties, Types, Relations — типы, свойства и связи задач, в том числе кастомные relation definitions.
- Labels, States — метки и статусы.
- Work Item Comments, Links, Activities — комментарии, ссылки, активность.
- Work Logs — учёт времени по задачам.
- Pages — вики-страницы.
- Workspaces, Users — участники, feature flags, информация о текущем пользователе (
get_me).
Замечание о версиях
Прежний Node.js-сервер @makeplane/plane-mcp-server deprecated. Новую версию на Python и FastMCP отличает более строгая типизация (Pydantic), выше производительность, расширенное покрытие инструментами и активная поддержка. Миграция по конфигурациям из README.
Итог
Если вы уже пользуетесь Plane и хотите, чтобы ИИ-агент вел ваши задачи, циклы и модули без ручного проксирования через UI — этот MCP-сервер готовое решение. Он работает и локально через uvx, и как hosted-сервис с OAuth/PAT. Причём типовые инструменты дают полную свободу: от списка проектов до учёта времени.
Лицензия: MIT. Разработка открытая — можно поднять Pull Request.