description:Use when the user explicitly asks to create or change AirBase schema, records, cells, field access, external table links, public table access or imports. Do not use for read-only queries, data audits, Omni, or global System Base operations.
metadata:modules=airbase
---
# Управление AirBase
Используй инструменты AirBase MCP и выбранную пользователем проектную базу. Перед изменением прочитай схему нужной таблицы и точные записи. Не угадывай ID, коды полей, ссылки между записями и допустимые значения.
## Записи и ячейки
- Для одиночной ячейки используй `shd_airbase_update_cell`; для нескольких ячеек — `shd_airbase_bulk_update_cells`с полным списком `record_id`, `field_id` и новых `value`.
- Для создания и обновления записей проверяй значения через `shd_airbase_validate_records`. Для массового создания или upsert сначала запускай соответствующий инструмент с `dry_run=true`, разбирай конфликты, затем выполняй запись только в рамках запроса пользователя.
- Массовое изменение ячеек не имеет dry-run. До вызова сверь каждую целевую запись и ячейку с текущими данными и запросом пользователя.
- Не удаляй записи, поля или таблицы и не отсоединяй внешнюю таблицу без явного запроса и требуемого `confirm=true`.
## Схема и доступ
- Для действий схемы используй `shd_airbase_action` и передавай конкретное действие, параметры и payload из прочитанной схемы. Проверяй зависимости поля через `field-usages` перед потенциально ломающим изменением.
- Для правил доступа к полю сначала прочитай `get-field-access-policy`; сохраняй только явно запрошенные `default_level` и правила.
- Подключай внешнюю таблицу только по предоставленному пользователем `source_url`. Перед отключением уточни конкретную таблицу и используй подтверждение.
- Для доступа клиентов по публичной ссылке сначала прочитай текущие настройки; режим `selected` должен содержать только перечисленные пользователем таблицы.
## Импорт и вложения
- Перед CSV/TSV импортом всегда используй preview и сверяй целевую таблицу, поля и количество строк.
- Для скачивания или миниатюры передавай attachment `src`, а также `record_id` и `field_id`, чтобы сервер проверил доступ к вложению.
- Не используй AirBase-инструменты для Omni или System Base.
После записи кратко сообщи, какие сущности изменены и какие серверные значения вернулись. Отделяй ответ API от предположений и не заявляй, что данные изменены, если инструмент вернул ошибку или не подтвердил сохранение.
varC={ru:{refresh:'Обновить',search:'Поиск по названию, статусу или ID',loading:'Загрузка…',empty:'Нет данных для отображения.',records:'записей',status:'Статус',date:'Дата',value:'Детали',id:'ID',details:'Детали',close:'Закрыть',load:'Не удалось загрузить данные.',detail:'Не удалось загрузить детали.',context:'Для обновления нужен контекст источника',total:'Всего',amount:'Сумма',planned:'План',capacity:'Ёмкость',utilization:'Загрузка',overload:'Перегрузка',warnings:'Предупреждения',complete:'Готово',pending:'Ожидают',approved:'Согласовано',rejected:'Отклонено',progress:'Прогресс',score:'Оценка',member:'Участник',role:'Роль',permissions:'Разрешения',preview:'Предпросмотр',noWarnings:'Предупреждений нет.',health:'Состояние',yes:'Да',no:'Нет'},en:{refresh:'Refresh',search:'Search by name, status or ID',loading:'Loading…',empty:'No data to display.',records:'records',status:'Status',date:'Date',value:'Details',id:'ID',details:'Details',close:'Close',load:'Could not load data.',detail:'Could not load details.',context:'A source context is required to refresh.',total:'Total',amount:'Amount',planned:'Planned',capacity:'Capacity',utilization:'Utilization',overload:'Overload',warnings:'Warnings',complete:'Complete',pending:'Pending',approved:'Approved',rejected:'Rejected',progress:'Progress',score:'Score',member:'Member',role:'Role',permissions:'Permissions',preview:'Preview',noWarnings:'No warnings.',health:'Health',yes:'Yes',no:'No'}};
varG={ru:{filterField:'Фильтр по полю',filterValue:'Значение для фильтра',sortField:'Сортировать по',ascending:'Сортировка: А—Я',descending:'Сортировка: Я—А',clear:'Сбросить фильтры',allFields:'Все поля',record:'Запись'},en:{filterField:'Filter field',filterValue:'Filter value',sortField:'Sort by',ascending:'Sort: A—Z',descending:'Sort: Z—A',clear:'Clear filters',allFields:'All fields',record:'Record'}};
varFIELD_LABELS={ru:{id:'ID',key:'Ключ',project_id:'ID проекта',task_project_id:'ID проекта задачи',linked_project_ids:'Связанные проекты',project_code:'Код проекта',base_reference:'Ссылка на базу',base_public_id:'Публичный ID базы',table_public_id:'Публичный ID таблицы',record_public_id:'Публичный ID записи',title:'Название',name:'Название',description:'Описание',status:'Статус',status_id:'ID статуса',is_done:'Завершено',is_complete:'Завершено',section:'Раздел',sort_order:'Порядок сортировки',created_at:'Создано',updated_at:'Обновлено',due_date:'Срок',deadline:'Дедлайн',starts_at:'Начало',ends_at:'Окончание',url:'Ссылка',diagnostic:'Диагностика',message:'Сообщение',type:'Тип',state:'Состояние',phase:'Этап',health:'Состояние',email:'Электронная почта',username:'Имя пользователя',role:'Роль',permissions:'Разрешения',source:'Источник',module:'Модуль',table:'Таблица',fields:'Поля',value:'Значение',stage:'Стадия',approval_status:'Статус согласования',approval_state:'Состояние согласования',priority:'Приоритет',assignee:'Исполнитель',owner:'Владелец',type:'Тип',category:'Категория',permissions:'Разрешения',permission:'Разрешение',read:'Чтение',write:'Запись',manage:'Управление',admin:'Администратор',view:'Просмотр',create:'Создание',update:'Изменение',delete:'Удаление',error:'Ошибка',warning:'Предупреждение',message:'Сообщение',path:'Путь',link:'Ссылка',amount:'Сумма',total:'Итого',quantity:'Количество',available_quantity:'Доступное количество',stock:'Остаток',planned:'План',planned_hours:'Плановые часы',capacity:'Ёмкость',capacity_hours:'Часы ёмкости',utilization:'Загрузка',utilization_percent:'Загрузка, %',overload:'Перегрузка',overload_hours:'Часы перегрузки',score:'Оценка',progress:'Прогресс',completeness_score:'Оценка полноты',completion_percent:'Полнота, %',availability_percent:'Доступность, %',record_count:'Количество записей',revision:'Ревизия',pages:'Страницы',page_count:'Количество страниц',date:'Дата',is_archived:'В архиве',low_stock:'Мало на складе',critical:'Критический',meta:'Метаданные'},en:{id:'ID',key:'Key',project_id:'Project ID',task_project_id:'Task project ID',linked_project_ids:'Linked projects',project_code:'Project code',base_reference:'Base reference',base_public_id:'Public base ID',table_public_id:'Public table ID',record_public_id:'Public record ID',title:'Title',name:'Name',description:'Description',status:'Status',status_id:'Status ID',is_done:'Completed',is_complete:'Completed',section:'Section',sort_order:'Sort order',created_at:'Created',updated_at:'Updated',due_date:'Due date',deadline:'Deadline',starts_at:'Starts',ends_at:'Ends',url:'URL',diagnostic:'Diagnostics',message:'Message',type:'Type',state:'State',phase:'Phase',health:'Health',email:'Email',username:'Username',role:'Role',permissions:'Permissions',source:'Source',module:'Module',table:'Table',fields:'Fields',value:'Value',stage:'Stage',approval_status:'Approval status',approval_state:'Approval state',priority:'Priority',assignee:'Assignee',owner:'Owner',type:'Type',category:'Category',permissions:'Permissions',permission:'Permission',read:'Read',write:'Write',manage:'Manage',admin:'Admin',view:'View',create:'Create',update:'Update',delete:'Delete',error:'Error',warning:'Warning',message:'Message',path:'Path',link:'Link',amount:'Amount',total:'Total',quantity:'Quantity',available_quantity:'Available quantity',stock:'Stock',planned:'Planned',planned_hours:'Planned hours',capacity:'Capacity',capacity_hours:'Capacity hours',utilization:'Utilization',utilization_percent:'Utilization, %',overload:'Overload',overload_hours:'Overload hours',score:'Score',progress:'Progress',completeness_score:'Completeness score',completion_percent:'Completeness, %',availability_percent:'Availability, %',record_count:'Record count',revision:'Revision',pages:'Pages',page_count:'Page count',date:'Date',is_archived:'Archived',low_stock:'Low stock',critical:'Critical',meta:'Metadata'}};
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.