Список задач через MCP: фильтры, пагинация и примеры
Справочник разработчика по MCP-инструменту list_tasks. Узнайте, как искать и фильтровать задачи по проекту, доске, статусу, сроку выполнения, исполнителю или ключевому слову. Включает примеры вызовов инструмента, промпты на естественном языке, граничные случаи и устранение неполадок.
Обзор инструмента
Назначение
Инструмент list_tasks позволяет искать и фильтровать задачи в вашем рабочем пространстве Workify. Это наиболее часто используемый инструмент для поиска задач, формирования отчётов и планирования рабочих процессов.
Операция только для чтения: этот инструмент только читает данные — он никогда не изменяет задачи.
Входные параметры
Все параметры необязательны. Если параметры не заданы, возвращаются все задачи, к которым у вас есть доступ (с пагинацией).
Формат вывода
Инструмент возвращает JSON-объект с задачами и информацией о пагинации:
{
"tasks": [
{
"id": 123,
"title": "Implement login feature",
"description": "Add user authentication...",
"status": "in_progress",
"due_date": "2026-02-28",
"project_id": 456,
"board_id": 789,
"assignee_id": 101,
"created_at": "2026-01-15T10:30:00Z",
"updated_at": "2026-02-20T14:22:00Z"
},
...
],
"total": 42,
"limit": 25,
"offset": 0,
"has_more": true
}
Поля ответа
- tasks: массив объектов задач (пустой массив, если совпадений нет)
- total: общее количество задач, соответствующих фильтрам (по всем страницам)
- limit: максимальное количество задач, возвращённых в этом ответе
- offset: количество пропущенных задач (для пагинации)
- has_more: логическое значение, указывающее, доступны ли ещё задачи
Примеры вызовов инструмента
Пример 1: список всех задач
Вызов инструмента (JSON):
{
"tool": "list_tasks",
"arguments": {
"limit": 50
}
}
Возвращает: первые 50 задач из вашего рабочего пространства
Пример 2: задачи со сроком на этой неделе
Вызов инструмента (JSON):
{
"tool": "list_tasks",
"arguments": {
"due_date": "this_week",
"limit": 25
}
}
Возвращает: задачи со сроком выполнения на текущей неделе
Пример 3: поиск по ключевому слову
Вызов инструмента (JSON):
{
"tool": "list_tasks",
"arguments": {
"search": "login",
"limit": 10
}
}
Возвращает: задачи со словом «login» в названии или описании
Пример 4: фильтр по проекту и статусу
Вызов инструмента (JSON):
{
"tool": "list_tasks",
"arguments": {
"project_id": 456,
"status": "in_progress",
"limit": 20
}
}
Возвращает: задачи в работе в проекте 456
Пример 5: пагинация
Первая страница:
{
"tool": "list_tasks",
"arguments": {
"limit": 25,
"offset": 0
}
}
Вторая страница:
{
"tool": "list_tasks",
"arguments": {
"limit": 25,
"offset": 25
}
}
Возвращает: задачи 26–50 (вторая страница результатов)
Примеры промптов на естественном языке
Вот как пользователи обычно взаимодействуют с list_tasks через естественный язык:
Claude Desktop / общий ИИ
Промпт пользователя:
"Какие задачи нужно выполнить на этой неделе?"
Поведение ИИ:
- ИИ вызывает
list_tasksсdue_date: "this_week" - ИИ получает список задач
- ИИ форматирует и представляет результаты пользователю
Cursor / контекст IDE
Промпт пользователя:
"Покажи все задачи в работе в проекте API"
Поведение ИИ:
- ИИ вызывает
list_projects, чтобы найти «проект API» - ИИ вызывает
list_tasksсproject_idиstatus: "in_progress" - ИИ представляет список задач в удобном для IDE формате
Еженедельное планирование
Промпт пользователя:
"Какие задачи нужно выполнить на этой неделе и какие из них заблокированы?"
Поведение ИИ:
- ИИ вызывает
list_tasksсdue_date: "this_week" - ИИ анализирует задачи и выявляет заблокированные
- ИИ представляет организованный недельный план
Распространённые сценарии использования
- Еженедельное планирование — перечислите задачи на эту неделю, выявите блокеры и расставьте приоритеты
- Фокус на день — найдите задачи со сроком на сегодня или ближайшее время для планирования дня
- Кросс-проектный поиск — ищите задачи по ключевому слову по всем проектам
- Отчёты о статусе — формируйте отчёты, фильтруя задачи по проекту, статусу или дате
Граничные случаи
Пустые результаты
Ситуация: ни одна задача не соответствует фильтрам
Ответ:
{
"tasks": [],
"total": 0,
"limit": 25,
"offset": 0,
"has_more": false
}
Обработка: проверьте, не пуст ли массив tasks, перед обработкой
Большие наборы данных
Ситуация: фильтрам соответствуют тысячи задач
Рекомендация:
- Всегда используйте
limit, чтобы ограничить результаты (по умолчанию: 50, макс.: 100) - Используйте
offsetдля пагинации - Проверяйте
has_more, чтобы понять, есть ли ещё страницы - Добавляйте более конкретные фильтры для сужения результатов
Пагинация
Шаблон: получение всех задач по нескольким страницам
- Вызовите с
limit: 50, offset: 0 - Проверьте
has_more - Если true, вызовите снова с
offset: 50 - Повторяйте, пока не будет
has_more: false
Примечание: для больших наборов данных рассмотрите возможность резюмирования вместо получения всех задач
Недопустимые фильтры
Ситуация: недопустимое значение project_id, board_id или status
Ответ: возвращает пустые результаты (ошибка не выбрасывается)
Рекомендация: проверяйте существование ID перед фильтрацией или корректно обрабатывайте пустые результаты
Устранение неполадок
Ошибки тайм-аута
Симптом: запрос завершается по тайм-ауту при получении множества задач
Причины:
- Слишком много задач соответствует фильтрам
- Большое значение
limit(близкое к 100) - Сетевая задержка
Решение:
- Уменьшите
limitдо 25–50 - Добавьте более конкретные фильтры
- Используйте пагинацию вместо получения всех задач сразу
Читать об устранении тайм-аутов →
Ограничение частоты запросов (429)
Симптом: ошибка 429 при выполнении нескольких вызовов
Причины:
- Слишком много быстрых вызовов
- Слишком быстрый перебор страниц
Решение:
- Добавляйте задержки между вызовами пагинации
- По возможности объединяйте операции в пакеты
- Кэшируйте результаты, когда это уместно
Читать руководство по ограничению частоты →
Недопустимые значения фильтров
Симптом: пустые результаты, когда фильтры должны совпадать
Причины:
- Недопустимый project_id или board_id
- Неверное значение status (должно быть: open, in_progress, done, blocked)
- Недопустимый формат due_date
Решение:
- Проверьте существование ID с помощью
list_projectsилиlist_boards - Используйте корректные значения статуса
- Используйте предопределённые значения due_date: today, this_week, this_month, overdue
Читать об устранении ошибок валидации →
Рекомендации
Эффективное использование list_tasks
- ✅ Всегда задавайте разумный
limit(идеально 25–50) - ✅ Используйте конкретные фильтры для сужения результатов (project_id, status, due_date)
- ✅ Используйте пагинацию для больших наборов данных вместо увеличения limit
- ✅ Проверяйте
has_moreперед получением следующей страницы - ✅ Используйте
searchдля поиска по ключевым словам в названиях/описаниях - ✅ Комбинируйте фильтры для точных результатов (например, проект + статус + срок)
- ✅ Корректно обрабатывайте пустые результаты
- ✅ Кэшируйте результаты, когда это уместно, чтобы сократить количество API-вызовов
Связанные инструменты
Часто используются вместе с:
- get_task — получение подробной информации о конкретной задаче
- list_projects — поиск ID проектов для фильтрации задач