# bulk_update_records

Масово оновити поле(я) у багатьох записах одразу. Замість 'постав статус Оброблено всім замовленням за сьогодні' через N викликів update_record. Записи можна вибрати: за списком ID, за фільтром (поле=значення), за звітом або всі записи форми. Підтримує action rules — тригери спрацюють як при звичайному оновленні.

Agent View of the PolicyLayer registry record for `bulk_update_records`. HTML page: https://policylayer.com/tools/com-quintadb-mcp/bulk-update-records

## Facts

- Tool: `bulk_update_records`
- Server: QuintaDB (`https://quintadb.com/mcp`) — https://policylayer.com/tools/com-quintadb-mcp.md
- Homepage: https://github.com/https://quintadb.com/mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server auth posture: open
- Server rate-limited: no
- Parameters: 6 (3 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `app_id` | string | yes | Project ID (from list_projects) |
| `filter` | object | no | Фільтр по одному полю: {field: "Назва поля", value: "значення"}. Наприклад: {field: "Статус", value: "Новий"} |
| `entity_id` | string | yes | Form ID (from list_forms or describe_project) |
| `report_id` | string | no | ID звіту/фільтру — оновить тільки записи що входять в цей звіт |
| `record_ids` | array | no | Конкретні ID записів для оновлення. Якщо не вказано — використовується filter або report_id або всі записи. |
| `fields_to_set` | object | yes | Поля для оновлення: {"Назва поля" або field_id: "нове значення"}. Наприклад: {"Статус": "Оброблено", "Пріоритет": "Низький"} |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bulk_update_records",
    "arguments": {
      "app_id": "<app_id>",
      "entity_id": "<entity_id>",
      "fields_to_set": {}
    }
  }
}
```

## Why bulk_update_records is rated Medium

This tool creates or modifies data reversibly across many records. It is Write, not Destructive, because bulk updates do not irreversibly delete data. However, the blast radius is high because a single call can modify many records simultaneously across a database (potentially all records in a form), and automation triggers add unpredictable side effects. An AI agent misuse could corrupt significant data sets.

From the tool's own definition: "bulk_update_records: 'Масово оновити поле(я) у багатьох записах одразу' (bulk update fields in many records at once) — modifies data across multiple records; 'Записи можна вибрати: за списком ID, за фільтром...за звітом або всі записи форми' (records can be…"

Risk signals: Bulk/mass operation — affects multiple targets

## Use case

AI agents use bulk_update_records to create or update resources in QuintaDB, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your QuintaDB environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches QuintaDB:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "bulk_update_records": {
      "limits": [
        {
          "counter": "bulk_update_records_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on QuintaDB (115)

- `delete_few_records` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-few-records.md
- `delete_field` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-field.md
- `delete_form` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-form.md
- `delete_portal_group` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-portal-group.md
- `delete_portal_menu_item` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-portal-menu-item.md
- `delete_portal_user` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-portal-user.md
- `delete_project` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-project.md
- `delete_record` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-record.md
- `delete_records_by_filter` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-records-by-filter.md
- `delete_reminder` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-reminder.md
- `delete_saved_view` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-saved-view.md
- `delete_schedule` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-schedule.md
- `delete_team_group` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-team-group.md
- `delete_template` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-template.md
- `delete_webhook` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/delete-webhook.md
- `remove_user_from_portal_group` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/remove-user-from-portal-group.md
- `remove_user_from_team_group` — Destructive — https://policylayer.com/tools/com-quintadb-mcp/remove-user-from-team-group.md
- `run_action` — Execute — https://policylayer.com/tools/com-quintadb-mcp/run-action.md
- `check_ai_site_status` — Read — https://policylayer.com/tools/com-quintadb-mcp/check-ai-site-status.md
- `describe_project` — Read — https://policylayer.com/tools/com-quintadb-mcp/describe-project.md
- `export_records` — Read — https://policylayer.com/tools/com-quintadb-mcp/export-records.md
- `fetch_url` — Read — https://policylayer.com/tools/com-quintadb-mcp/fetch-url.md
- `get_column_total` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-column-total.md
- `get_field_types` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-field-types.md
- `get_form_fields` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-form-fields.md
- `get_form_settings` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-form-settings.md
- `get_metric` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-metric.md
- `get_portal_page` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-portal-page.md
- `get_project` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-project.md
- `get_quickstart_guide` — Read — https://policylayer.com/tools/com-quintadb-mcp/get-quickstart-guide.md
- …and 85 more: https://policylayer.com/tools/com-quintadb-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=com-quintadb-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/com-quintadb-mcp
