---
title: document_list
description: List the files attached to a brand, each with a URL you can fetch.
---

Lists the **documents** attached to a brand — logo, guidelines, decks — each with a URL you can fetch directly.

Uploads that were reserved but never completed are **not** listed: there is no file behind them, so every URL returned here resolves.

## Input

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `brand_name` | `string` | yes | The brand slug whose files to list. |
| `limit` | `number` | no | The greatest number of rows in the answer, from 1 to 500. The default is 100. |
| `cursor` | `string` | no | The `nextCursor` of the previous answer. Omit it to get the first page. |

## Output

`{ documents: [...], nextCursor? }`, newest first. Each document is `{ id, name, filename, mimeType, sizeBytes, url }`. When `nextCursor` is present, more documents exist: call `document_list` again with the same `brand_name` and `cursor` set to that value.

## Example

> _"What brand materials do we have for Acme?"_

```ts
document_list({ brand_name: 'acme-running' });
// → { documents: [{ name: 'brand-guidelines.pdf', mimeType: 'application/pdf',
//      url: 'https://documents.adcrunch.dev/org_…/doc_…' }] }
```

The same list is included in [`brand_get`](/mcp/tools/brand-get), so if you're already loading the brand's context you don't need a second call.

## Errors

- `invalid_cursor` — the `cursor` is not a `nextCursor` of this tool, with the same arguments. Send it with no change, or omit it.

Requires the `brand:read` scope.
