# appendSpreadsheetRows

Appends rows of data to the end of a sheet in a Google Spreadsheet

Agent View of the PolicyLayer registry record for `appendSpreadsheetRows`. HTML page: https://policylayer.com/tools/ark7-google-drive-mcp/appendspreadsheetrows

## Facts

- Tool: `appendSpreadsheetRows`
- Server: Google Drive (`@ark7/google-drive-mcp`) — https://policylayer.com/tools/ark7-google-drive-mcp.md
- Install: `npx -y @ark7/google-drive-mcp`
- Homepage: https://www.npmjs.com/package/@ark7/google-drive-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 5 (3 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `range` | string | yes | A1 notation range indicating where to append (e.g., 'A1' or 'Sheet1!A1'). Data will be appended starting from this range. |
| `values` | array | yes | 2D array of values to append. Each inner array represents a row. |
| `account` | string | no | Alias of the Google account to target. Optional — defaults to the session/global default account, or the sole authenticated account. Run manage_accounts list to |
| `spreadsheetId` | string | yes | The ID of the Google Spreadsheet (from the URL) |
| `valueInputOption` | string | no | How input data should be interpreted (RAW or USER_ENTERED) |

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": "appendSpreadsheetRows",
    "arguments": {
      "range": "<range>",
      "values": [],
      "spreadsheetId": "<spreadsheetId>"
    }
  }
}
```

## Why appendSpreadsheetRows is rated Medium

Appending rows is a Write operation: it creates new data in the spreadsheet in a reversible manner (rows can be deleted later). It does not execute arbitrary code, delete data irreversibly, or move money. The severity is medium because misuse could add large volumes of unwanted data to shared documents, affecting multiple users and potentially corrupting workflows, but the action remains undoable.

From the tool's own definition: "Tool description states it 'Appends rows of data to the end of a sheet' — this is a create/modify operation that adds data reversibly to a spreadsheet."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Google Drive (130)

- `deleteCalendarEvent` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deletecalendarevent.md
- `deleteComment` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deletecomment.md
- `deleteDimensionGroup` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deletedimensiongroup.md
- `deleteGoogleSlide` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deletegoogleslide.md
- `deleteItem` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deleteitem.md
- `deleteRange` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deleterange.md
- `deleteSheet` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deletesheet.md
- `deleteSlideElement` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/deleteslideelement.md
- `removePermission` — Destructive — https://policylayer.com/tools/ark7-google-drive-mcp/removepermission.md
- `authGetStatus` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/authgetstatus.md
- `authListScopes` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/authlistscopes.md
- `authTestFileAccess` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/authtestfileaccess.md
- `describeGoogleDocRange` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/describegoogledocrange.md
- `downloadFile` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/downloadfile.md
- `exportSlideThumbnail` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/exportslidethumbnail.md
- `getCalendarEvent` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getcalendarevent.md
- `getCalendarEvents` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getcalendarevents.md
- `getComment` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getcomment.md
- `getDocumentInfo` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getdocumentinfo.md
- `getGoogleDocContent` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgoogledoccontent.md
- `getGoogleDocContentPaginated` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgoogledoccontentpaginated.md
- `getGoogleDocImage` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgoogledocimage.md
- `getGoogleDocStyleSummary` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgoogledocstylesummary.md
- `getGoogleSheetCells` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgooglesheetcells.md
- `getGoogleSheetContent` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgooglesheetcontent.md
- `getGoogleSlidesContent` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgoogleslidescontent.md
- `getGoogleSlidesSpeakerNotes` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getgoogleslidesspeakernotes.md
- `getRevisions` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getrevisions.md
- `getSlideElementInfo` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getslideelementinfo.md
- `getSpreadsheetInfo` — Read — https://policylayer.com/tools/ark7-google-drive-mcp/getspreadsheetinfo.md
- …and 100 more: https://policylayer.com/tools/ark7-google-drive-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=ark7-google-drive-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/ark7-google-drive-mcp
