Русский
Справочник инструментов
Сервер предоставляет 44 инструмента. Пошаговые примеры находятся в сценариях, диагностика ошибок — в решении проблем.
Все имена имеют префикс kaiten_. Аргументы используют snake_case. Числовые ID — положительные целые в безопасном диапазоне JavaScript; ID справочников — строки UUID. Знак ? обозначает необязательный аргумент. Неизвестные аргументы отклоняются.
page означает необязательные limit (1–100, по умолчанию 25) и offset (по умолчанию 0). Ответ списка: {items, next_offset}; поиска карточек: {items, next_cursor}; одной сущности: {item}. Каждый ответ также содержит эквивалентный JSON текст.
Контракты результатов
Успешные вызовы возвращают результат в structuredContent и тот же JSON текстовым элементом в content. Примеры показывают только структурированный результат:
json
{"item": {"id": 5, "full_name": "Алексей"}}json
{"items": [{"id": 1, "title": "Работа"}], "next_offset": null}json
{
"items": [{"id": 123, "title": "Релиз", "board_id": 2, "column_id": 3}],
"next_cursor": null
}Точные поля каждого инструмента описаны в его MCP outputSchema. Необязательные поля присутствуют, только если их вернул Kaiten; неизвестные upstream-поля удаляются. Отсутствующее поле отличается от явного null.
Инструменты чтения объявляют readOnlyHint: true и idempotentHint: true. Создание объявляет destructiveHint: false, изменение и удаление — destructiveHint: true. Все инструменты записи объявляют readOnlyHint: false и idempotentHint: false. У всех инструментов openWorldHint: true. Аннотации информируют MCP-клиент; доступ в Kaiten определяется правами токена.
Навигация и поиск справочных данных
| Инструмент | Аргументы | Результат |
|---|---|---|
kaiten_list_spaces | page | ID и названия пространств |
kaiten_get_space | space_id | Пространство и ссылки на доски, если Kaiten их вернул |
kaiten_list_boards | space_id, page | ID и названия досок; локальная пагинация |
kaiten_get_board | board_id | Описание, колонки, дорожки, настройки пользовательских полей |
kaiten_list_columns | board_id, page | ID, названия, порядок и тип колонок; локальная пагинация |
kaiten_list_lanes | board_id, page | ID, названия и порядок дорожек; локальная пагинация |
kaiten_get_current_user | Нет | ID, имя и доступные данные текущего пользователя |
kaiten_list_users | query?, page | Пользователи компании с ID, именами и email |
kaiten_list_card_types | page | Существующие ID и названия типов карточек |
kaiten_list_tags | query?, space_id?, page | ID, названия и цвета тегов |
Локальная пагинация получает один полный список из API и выделяет нужную страницу. Результат не кешируется; дополнительные страницы API автоматически не запрашиваются.
Поле колонки column_id содержит ID родительской колонки или null, если родителя нет. Это относится к деталям доски, списку колонок и расположению карточки в подробном ответе.
Карточки
| Инструмент | Аргументы | Действие |
|---|---|---|
kaiten_search_cards | Фильтры ниже, limit?, cursor? | Поиск version 1 с токеном продолжения сервера |
kaiten_get_card | card_id | Подробное представление карточки |
kaiten_create_card | title, board_id, редактируемые поля, column_id?, lane_id?, properties? | Создать карточку |
kaiten_update_card | card_id, changes | Изменить переданные поля |
kaiten_move_card | card_id, board_id, column_id, lane_id | Переместить в заданное расположение |
kaiten_archive_card | card_id | Установить архивное состояние (2) |
kaiten_restore_card | card_id | Восстановить активное состояние (1) |
kaiten_delete_card | card_id | Удалить через DELETE endpoint Kaiten |
Редактируемые поля: title, description, due_date, due_date_time_present, asap, size_text, owner_id, type_id. Объект changes должен содержать хотя бы одно поле. Пропущенные поля сохраняются. null очищает description, due_date или size_text. Описание использует стандартный формат Kaiten — Markdown.
Даты принимают YYYY-MM-DD или ISO timestamp с явным часовым поясом. Флаги — boolean, ID — числа. Название должно быть непустой строкой.
Фильтры поиска: query, space_id, board_id, column_id, lane_id, owner_ids, member_ids, responsible_ids, tag_ids, type_ids, states, archived, asap, overdue, due_date_after, due_date_before. Фильтры с несколькими ID принимают массивы. states: 1 — очередь, 2 — в работе, 3 — завершено. Для пропущенных фильтров действуют настройки Kaiten.
Для поиска только неархивных карточек передавайте archived: false, для архивных — archived: true. Поиск использует endpoint Kaiten version 1, сортировку по ID карточки и пагинацию через offset. Сервер возвращает позицию как next_cursor; передавайте её в cursor с теми же фильтрами для следующей страницы. После полной страницы может потребоваться последний пустой запрос, чтобы получить next_cursor: null. Страницы могут сдвигаться, если подходящие карточки добавлены, удалены или изменены между запросами.
Старые курсоры version 2 OpenSearch несовместимы. После обновления начните текущий поиск заново без cursor. Endpoint поиска и пагинация описаны в справочнике API Kaiten.
Краткая карточка содержит ID, название, расположение, состояние, архивность, срок, ID владельца и время изменения при наличии. Подробная карточка также содержит полное описание, приоритет, оценку, тип, названия расположения, владельца, участников, теги, поля и ссылки на чек-листы. Комментарии и содержимое чек-листов читаются отдельно. Ответы изменений используют поля ответа записи Kaiten без дополнительного чтения; отсутствующие поля не добавляются.
json
{
"card_id": 123,
"changes": {
"description": "## Реализация\nВыполнить согласованный сценарий.",
"due_date": "2026-10-15",
"asap": false
}
}Комментарии, участники и теги
| Инструмент | Аргументы | Действие |
|---|---|---|
kaiten_list_comments | card_id, page | Полный текст, доступные данные автора и времени; локальная пагинация |
kaiten_add_comment | card_id, text | Добавить текстовый комментарий |
kaiten_update_comment | card_id, comment_id, text | Заменить текст комментария |
kaiten_delete_comment | card_id, comment_id | Удалить комментарий |
kaiten_list_card_members | card_id, page | ID связей, ID пользователей, имена и роли; локальная пагинация |
kaiten_add_card_member | card_id, user_id | Добавить существующего пользователя |
kaiten_update_card_member_role | card_id, member_id, type | Назначить участника ответственным с type: 2 |
kaiten_remove_card_member | card_id, member_id | Удалить участника карточки |
kaiten_list_card_tags | card_id, page | Прикреплённые теги, включая tag_id; локальная пагинация |
kaiten_add_card_tag | card_id, name | Прикрепить по имени; Kaiten может создать отсутствующий тег |
kaiten_remove_card_tag | card_id, tag_id | Снять тег с карточки |
Для member_id используйте id связи с карточкой; user_id идентифицирует пользователя. Для снятия тега используйте tag_id из списка тегов карточки. Успешное удаление возвращает ID, подтверждённый Kaiten.
Изменение роли принимает только type: 2. Ответ содержит card_id, user_id, type и доступные даты; Kaiten не возвращает id связи с карточкой.
Чек-листы
| Инструмент | Аргументы | Действие |
|---|---|---|
kaiten_list_checklists | card_id, page | Получить ссылки из карточки; локальная пагинация |
kaiten_get_checklist | card_id, checklist_id | Получить чек-лист со всеми пунктами |
kaiten_create_checklist | card_id, name, sort_order? | Создать пустой чек-лист |
kaiten_update_checklist | card_id, checklist_id, changes | Изменить name и/или sort_order |
kaiten_delete_checklist | card_id, checklist_id | Удалить чек-лист карточки |
kaiten_add_checklist_item | card_id, checklist_id, text, поля пункта | Добавить пункт |
kaiten_update_checklist_item | card_id, checklist_id, item_id, changes | Изменить переданные поля пункта |
kaiten_delete_checklist_item | card_id, checklist_id, item_id | Удалить пункт |
Необязательные поля пункта: checked, sort_order, due_date, responsible_id. Изменение также поддерживает text. checked: true отмечает выполнение, false снимает отметку. due_date: null очищает срок, responsible_id: null снимает ответственного при изменении. text: null или пустая строка очищает текст пункта при изменении; добавление требует непустого текста. Требуется хотя бы одно изменяемое поле.
Существующие пользовательские поля
| Инструмент | Аргументы | Действие |
|---|---|---|
kaiten_list_custom_properties | query?, page | Найти определения с типами и настройками |
kaiten_get_custom_property | property_id | Получить одно определение |
kaiten_list_select_values | property_id, query?, page | Найти ID и значения вариантов выбора |
kaiten_list_catalog_values | property_id, query?, page | Найти ID и значения каталога |
kaiten_list_custom_directories | query?, page | Прочитать справочники с определениями полей |
kaiten_list_custom_directory_records | directory_id, query?, page | Прочитать существующие записи со значениями |
kaiten_set_card_properties | card_id, properties | Записать или очистить непустой набор значений карточки |
Сначала прочитайте определение и нужные варианты. Ключи имеют вид id_<положительный ID поля>. Значения используют JSON формат Kaiten:
| Поле | Пример значения |
|---|---|
| Строка, URL, email, телефон | "значение" |
| Число или рейтинг | 12 |
| Выбор или множественный выбор | [12] или [12, 13] — ID вариантов |
| Каталог | "3" — строковый ID значения |
| Пользовательский справочник | ["12345678-1234-4234-8234-123456789abc"] — UUID записей |
| Дата | {"date":"2026-10-15","time":"12:00:00","tzOffset":180} |
| Очистка значения | null |
Сервер проверяет ключи и JSON значения; Kaiten проверяет соответствие типу поля и права. Поля, отсутствующие в properties, не отправляются. Определения, варианты и записи справочников доступны только для чтения.
json
{
"card_id": 123,
"properties": {
"id_7": [12, 13],
"id_8": null
}
}