MCP Task Orchestrator
MCP-сервер с графом рабочих задач и проверками на стороне сервера: агент не перейдет к работе, пока нет нужных заметок
- 214 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Сервер хранит граф задач и заметки в SQLite на томе Docker и меняет их по вызовам агента
- Открытый режим HTTP без авторизации даст полный доступ каждому, кто достанет до порта, поэтому порт держат на 127.0.0.1
Установка
- Работает в
Ручная установка
claude mcp add-json mcp-task-orchestrator '{"command":"docker","args":["run","--rm","-i","-v","mcp-task-data:/app/data","ghcr.io/jpicklyk/task-orchestrator:latest"]}'Режим stdio в одном контейнере на сессию; нужен запущенный Docker.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Сервер хранит граф задач и заметки в SQLite на томе Docker и меняет их по вызовам агента
- Открытый режим HTTP без авторизации даст полный доступ каждому, кто достанет до порта, поэтому порт держат на 127.0.0.1
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Task Orchestrator — MCP-сервер, который дает агентам постоянный граф рабочих элементов с проверками качества на стороне сервера, а не в промпте. Он рассчитан на мультиагентные и мультисессионные процессы: оркестратор раздает работу субагентам, свежая сессия подхватывает вчерашнее, автономный цикл разбирает очередь. У каждого элемента есть роль: `queue`, `work`, `review`, `blocked` или `terminal`. Агент двигает их инструментом `advance`. Если нет обязательной заметки, вызов возвращает ошибку с названием нужной заметки, а если не завершена зависимость, переход блокируется. Каждый переход и заметка записывают, кто их сделал, правила лежат в YAML, а новая сессия восстанавливает состояние одним вызовом `items_read`. Хранение в SQLite, образ Docker.
Для кого. Разработчикам с несколькими агентами или сессиями, которым нужна общая очередь работ с обязательными заметками и порядком зависимостей.
Подходит, если
- Оркестратор раздает субагентам разбитую на части задачу, а порядок выполнения держат зависимости
- Утром новая сессия читает контекст и узнает, что в работе два элемента, один заблокирован, один застрял
- Перед стартом работы агент обязан заполнить заметку с требованиями, иначе `advance` вернет ошибку
- Нужно проследить, какой агент сделал каждый переход и каждую заметку
Не подходит, если
- Хватает одного списка дел в тексте: граф элементов, роли и YAML-схемы избыточны для короткой задачи
- Docker недоступен на машине: сервер ставится образом, сборка из исходников описана отдельно в CONTRIBUTING.md
- Нужна общая сетевая установка без настройки авторизации: открытый режим безопасен только на loopback
Пример запроса к агенту
Покажи контекст рабочих элементов: что в работе, что заблокировано и чего не хватает для перехода в следующую фазуMCP
- Транспорт
- stdio, http
- Авторизация
- не нужна
Переменные окружения
MCP_TRANSPORT- Значение http включает режим HTTP вместо stdio
AGENT_CONFIG_DIR- Папка проекта с `.taskorchestrator/config.yaml` внутри контейнера
Ограничения
Нужен Docker, а образ `ghcr.io/jpicklyk/task-orchestrator:latest` хранит данные в SQLite на томе. Без файла `.taskorchestrator/config.yaml` работает режим без схем: ни проверок, ни обязательных заметок. Файл конфигурации импортируется при каждом старте, и при нескольких контейнерах на общем томе побеждает последний запущенный. В режиме HTTP с `API_AUTH_MODE=none` порт открывает полный доступ каждому, кто до него дотянется, поэтому публиковать его допустимо только на `127.0.0.1`; для общих установок есть токены и JWKS. Лицензия MIT.
Как отключить. Удалите регистрацию из `.mcp.json` или командой `claude mcp remove mcp-task-orchestrator`, остановите контейнер и при необходимости удалите том `mcp-task-data`.
Частые вопросы
Как подключить Task Orchestrator к Claude Code?
Командой `claude mcp add-json mcp-task-orchestrator` с запуском `docker run --rm -i` и образом `ghcr.io/jpicklyk/task-orchestrator:latest`, либо блоком в `.mcp.json`. Нужен запущенный Docker.
Что значит проверка на стороне сервера?
Сервер блокирует переход, если нет обязательной заметки или не завершена зависимость, и называет причину. Агенту не помогут напоминания в промпте.
Где задаются правила?
В файле `.taskorchestrator/config.yaml` в проекте, который монтируют в контейнер. Плагин Claude Code добавляет навык `/task-orchestrator:manage-schemas`.
Как работать с несколькими репозиториями?
Запустить один постоянный сервер в режиме HTTP, и хук `config-sync` плагина будет отправлять в него конфигурацию каждого проекта. Порт публикуют только на `127.0.0.1`.
Нужен ли плагин Claude Code?
Нет, сервер работает с любым MCP-клиентом. Плагин добавляет навыки и хуки поверх сервера.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыMCP-сервер превращает GitHub Projects v2 в очередь задач для агентов: они берут работу, отчитываются и тратят бюджет токенов.
MCP-сервер, который дает агенту читать файлы, искать по коду и запускать команды в рабочей папке
Плагин со скиллами для сборки MCP-серверов и MCP-приложений на TypeScript: агент создает, дорабатывает, отлаживает и проверяет их
add-mcp одной командой прописывает MCP-сервер в конфигурации 25 агентов: Claude Code, Codex, Cursor, VS Code, Zed и других
Прозрачный прокси между ИИ-клиентом и MCP-сервером: показывает каждый кадр JSON-RPC в терминале, проверяет запись в CI и экспортирует спаны
MCP-сервер, который один раз строит граф кода проекта и отдает агенту готовые ответы вместо повторного перечитывания файлов
Коротко о README
Текст объясняет проблему мультиагентных процессов, показывает утренний сеанс новой сессии с вызовами `items_read`, `advance` и `notes_write`, дает три варианта установки и описывает фазовую модель.