Skip to main content
Glama

meta_ads_targeting_categories

Retrieve the complete list of Meta targeting categories for a given class (behaviors, demographics, etc.) with IDs and audience sizes. Use for ad set targeting when keyword search is unsupported.

Instructions

Lists a full Meta targeting category catalogue for the given class — behaviors (e.g. 'Facebook Page admins'), demographics, life_events, industries, income, family_statuses, user_device, or user_os — with the internal IDs used in an ad set's targeting spec. Returns id, name, audience_size_lower_bound, audience_size_upper_bound, path, and an optional description per category. Read-only. Use this for behavior / demographic targeting, where keyword search (meta_ads_targeting_search) is not supported — the catalogue is finite, so this returns the whole class.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum categories returned. Default 200 — larger than search results because catalogues are finite but sizeable.
localeNoOptional Graph locale (e.g. 'ja_JP') to return localized category names. Omitted when unset.
account_idNoMeta Ads account ID in the format 'act_XXXXXXXXXX' (e.g. 'act_1234567890'). Optional — falls back to META_ADS_ACCOUNT_ID from the configured credentials. The leading 'act_' prefix is required.
category_classYesTargeting category class to enumerate. Maps to Graph's 'class' query param (renamed here because 'class' is a Python keyword).
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It declares 'Read-only', specifies the exact return fields, and notes that the catalogue is finite and thus returns the whole class — meaningful behavioral context beyond a simple 'list' statement.

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

Conciseness5/5

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

The description is four sentences, each with a distinct purpose: scope, return values, side-effect declaration, and usage guidance. It is front-loaded with the primary action and contains no filler.

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

Completeness5/5

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

With no output schema, the description compensates by listing the returned fields and the read-only nature. It also addresses the finite catalogue behavior and usage context, making it complete for a list operation.

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

Parameters3/5

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

The input schema already has 100% description coverage, so the baseline is 3. The tool description does not add parameter-level details beyond what the schema covers, though it does contextualize the catalogue classes and internal IDs.

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

Purpose5/5

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

The description starts with 'Lists a full Meta targeting category catalogue' — a specific verb and resource. It enumerates the supported classes and explicitly contrasts with meta_ads_targeting_search, distinguishing this tool as the finite-catalogue alternative.

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

Usage Guidelines5/5

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

It explicitly says 'Use this for behavior / demographic targeting, where keyword search (meta_ads_targeting_search) is not supported', giving a clear when-to-use directive and naming the alternative. The rationale 'the catalogue is finite, so this returns the whole class' further explains the choice.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/logly/mureo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server