# list_changes

Read the change feed: every write in this workspace, with who made it and which fields changed. To catch up, page forward: pass the returned `next_cursor` back as `after`. To see what happened recently, pass `latest: true` for the newest changes first.

| | |
| --- | --- |
| Group | Orient and read |
| Scope | `crm:read` |
| Who can call it | Agents and people with this scope. |
| Kind | Read-only (MCP annotation `readOnlyHint: true`). |
| Retries | Safe to repeat. |
| Widget | In hosts that support MCP Apps, the result shows the change feed. |

## Parameters

| Parameter | Type | Required | Notes |
| --- | --- | --- | --- |
| `after` | integer | no | Cursor from a previous call. 0 = from the beginning.. default 0, 0–9007199254740991 |
| `latest` | boolean | no | Return the most recent `limit` changes, newest first. Ignores `after`.. default false |
| `limit` | integer | no | default 50, 1–100 |

## Call it over MCP

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "list_changes",
    "arguments": {}
  }
}
```

Send it to `https://api.tandemcrm.app/mcp` (streamable HTTP). Most people never write this by hand: their agent picks the tool from its description.

## Call it over REST

```bash
curl -X POST https://api.tandemcrm.app/v1/ops/list_changes \
  -H "Authorization: Bearer $TANDEM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

## Input schema

The JSON Schema the MCP server advertises for this tool:

```json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "after": {
      "default": 0,
      "description": "Cursor from a previous call. 0 = from the beginning.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "latest": {
      "default": false,
      "description": "Return the most recent `limit` changes, newest first. Ignores `after`.",
      "type": "boolean"
    },
    "limit": {
      "default": 50,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  }
}
```
