---
title: meta_list_pixels
description: List the Meta Pixels installed on a Meta advertiser.
---

Ask which Pixel an ad set that optimizes for conversions can use. The agent reads the Pixels of the advertiser, so that it does not guess one.

> Which Pixel should a conversion campaign on Northwind use?

The agent calls `meta_list_pixels`, and you see each Pixel with the time of its last event. The agent proposes the Pixel with the most recent event. [Change what runs on Meta](/mcp/tools/change-what-runs-on-meta) shows where this step comes in the job.

## Reference

**Available on:** [![Meta](/providers/meta.svg)](https://docs.adcrunch.dev/connect/providers)

List the Meta Pixels installed on a Meta ad account. A conversion-optimizing ad set must name one, so call this before creating such an ad set. Returns `{ id, name, lastFiredTime }` per Pixel — prefer one that has fired recently, since a pixel that has never fired is usually not installed. An empty list means the account has no Pixel.

### Input

| Argument | Type | Required | Description |
| --- | --- | --- | --- |
| `advertiserId` | string | yes | Advertiser account ID (`acc_<id>`). Must belong to the active organization — find one with `list_advertisers`. |

### Output

A successful call returns this object in `structuredContent`.

| Field | Type | Always present | Description |
| --- | --- | --- | --- |
| `pixels` | array of object | yes | The Meta Pixels of the advertiser. The list holds 100 Pixels at most. An empty list means that the advertiser has no Pixel. |
| `pixels[].id` | string | yes | The Meta id of the Pixel. Give it as `pixelId` to `meta_create_adset`. |
| `pixels[].lastFiredTime` | string or null | yes | The time of the last event that the Pixel received, as Meta writes it (ISO 8601). It is null for a Pixel that never received an event. |
| `pixels[].name` | string | yes | The name of the Pixel in Meta. |

### Failure codes

A failed call has `isError` set, and `structuredContent.error` holds one of these codes. [Errors](/mcp/errors) describes the shape of a failed call.

- `not_found`
- `provider_not_connected`
- `provider_error`
- `forbidden`
- `invalid_request`
- `internal_error`

### Scope

The token must hold `observe:read`. [Auth & scopes](/mcp/auth) lists each scope.

### Annotations

A client reads these hints. A hint that the tool does not declare has the default value of the MCP specification.

- **Read-only.** The tool changes nothing.
- **Open world.** The tool reaches a system outside AdCrunch, such as an ad platform.

### Example

The arguments:

```json
{
  "advertiserId": "acc_1485443900032333"
}
```

The result, in `structuredContent`:

```json
{
  "pixels": [
    {
      "id": "812345678901234",
      "lastFiredTime": "2026-09-24T08:15:02+0000",
      "name": "Northwind Web Pixel"
    },
    {
      "id": "698765432109876",
      "lastFiredTime": null,
      "name": "Old test pixel"
    }
  ]
}
```
