Skip to main content
Glama

Supabase: Update rows

supabase_update_rows
Destructive

Updates rows in a Supabase table that match specified filter conditions, requiring at least one filter to prevent accidental full-table changes.

Instructions

[UNIFIED] Update rows matching filter conditions. Always requires at least one filter to prevent accidental full-table updates.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "site": "<site>",
      "table": "<table>",
      "data": "<data>",
      "filters": "<filters>"
    },
    "name": "supabase_update_rows"
  }
}

Input Schema

NameRequiredDescriptionDefault
dataYes
siteYes
tableYes
filtersYes
use_service_roleNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.14.0
  2. Removedv3.13.1
  3. First observedv3.4.0

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the safety profile is known. The description adds genuine value by disclosing the mandatory-filter guardrail against accidental full-table updates, but does not say what happens when the filter is missing (error vs no-op), how 'use_service_role' elevates privileges, or what is returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, with the core action first and the safety constraint second; nothing is buried or padded. The only waste is the unexplained '[UNIFIED]' tag at the front.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive multi-parameter mutation with no output schema and zero parameter documentation, the description covers only one guardrail. An agent still lacks the meaning of four of five parameters and any indication of the mutation's result or reversibility, so it is under-specified relative to the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage and five parameters, the description carries the whole burden but only touches 'filters' via the safety rule. It says nothing about 'data' (whether it is a partial patch or full replacement, despite being a free-form nested object), 'table', 'site', or what 'use_service_role' changes about permissions and behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource ('Update rows') qualified by 'matching filter conditions', which is clear enough for an agent to act on. It does not explicitly contrast itself with sibling mutations such as supabase_delete_rows, supabase_insert_rows, or supabase_update_policy, and the '[UNIFIED]' prefix is opaque rather than informative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only usage rule stated is that a filter is always required to prevent full-table updates, which is a constraint rather than guidance on when to choose this tool over insert, delete, or count. There is no mention of alternatives, prerequisites (RLS/permissions), or when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools