Agent skill, easy

Read a company's Meta ads, as a skill your agent installs.

Meta Ad Library API for an agent: it sends a company domain, a Facebook page or a keyword to a catalog endpoint and reads ad creative text, images and video back. Several providers sell the call, so the agent tries the cheapest first. You pay per call, and a failed call costs nothing.

Give this to your agent
set up looot - https://looot.ai/skill.md

Install

How do I install this skill?

Two steps. Set up looot once, then save this skill file where your agent reads skills.

1. Set up looot once

Give this line to your agent
set up looot - https://looot.ai/skill.md

Works in Claude Code, Cursor, Codex and ChatGPT through MCP. Searching and inspecting are free.

2. Save the skill

Save the skill file for Claude Code
mkdir -p ~/.claude/agent-skills/looot-meta-ads-library && curl -fsSL https://looot.ai/agent-skills/meta-ads-library/SKILL.md -o ~/.claude/agent-skills/looot-meta-ads-library/SKILL.md

Or open the raw SKILL.md and drop it into the skills folder of your own agent.

When it starts

What do I say to start this skill?

Any of these starts it. The agent asks for what is missing, nothing more.

  • Example prompt
    what ads is nike.com running on Facebook

  • Example prompt
    show me the active Instagram ads of this brand

  • Example prompt
    find ads that mention this keyword

It asks for

  • A company domain, a Facebook page or a keyword
  • The country

It hands back

  • Ad creative text, images and video
  • Active or ended status
  • Platforms the ad runs on
  • Start date
  • Advertiser page

List each ad with its copy, format, platform and start date. Say whether each is active or ended.

How it runs

What does the agent do when it runs?

Four moves, in this order, with the price known before any money moves.

  1. Step 1

    Discover

    looot discover finds the endpoints that match the task. It is free.

  2. Step 2

    Inspect

    looot inspect shows the price and the exact input before anything is spent. It is free.

  3. Step 3

    Run

    looot run executes the call with an idempotency key, so a retry never charges twice. The agent reads the run status, not the HTTP code.

  4. Step 4

    Fall back

    On a provider error or a timeout the agent tries the next endpoint in the skill, cheapest first. It never retries a bad input elsewhere.

The file

What is inside the SKILL.md?

The whole file, as your agent reads it. No price is written in it: the agent reads the live price with looot inspect.

SKILL.md for Read a company's Meta ads
---
name: looot-meta-ads-library
description: Read a company's Meta ads. Use when the user says things like "what ads is nike.com running on Facebook", "show me the active Instagram ads of this brand" or "find ads that mention this keyword". Runs through looot, billed per call.
---

# Read a company's Meta ads

Meta Ad Library API for an agent: it sends a company domain, a Facebook page or a keyword to a catalog endpoint and reads ad creative text, images and video back. Several providers sell the call, so the agent tries the cheapest first. You pay per call, and a failed call costs nothing.

This skill needs the looot skill set up first: https://looot.ai/skill.md

## Ask for these inputs

The job takes a company domain, a Facebook page or a keyword. Example: nike.com.

- A company domain, a Facebook page or a keyword
- The country

## Run it

1. Find the endpoint: `looot discover --mode auto --query "meta ad library"`. The endpoints listed below are the known matches.
2. Read the price and the input schema before spending: `looot inspect <endpoint-id>`. Tell the user the price, then run.
3. Run it: `looot run scrapecreators-facebook-adlibrary-company-ads-get --input '{"companyName":"Nike","country":"US"}' --idempotency-key <new-key> --wait`. Reuse the same key only to retry the same request.
4. Read the run's `status` and `error`, not the HTTP status. A run can return `failed` with a normal response.
5. If a run fails with a provider error or times out, try the next endpoint from the list below, cheapest first. If it fails on your input (a 4xx style error), fix the input. Do not retry it on other providers.

## Endpoints

Each endpoint reads the same job from a different provider. They differ in inputs, fields and price. Run `looot inspect` on the ones that take the input you hold, start with the cheapest, and move to the next on a provider error.

- `scrapecreators-facebook-adlibrary-company-ads-get`: lists all ads currently running for a company by name or page ID, with filters for country, media type, date range and language
- `adyntel-facebook`: lists a company's ads on Facebook and Instagram from its domain or Facebook URL, with a country code
- `scrapecreators-facebook-adlibrary-search-ads-get`: searches the library by keyword and returns matching ads with the creative, the platform and the call to action
- `searchapi-io-meta-ad-library`: searches across Facebook, Instagram, Audience Network, Messenger and Threads, with filters for country, ad type, active status, media type and platform
- `adyntel-facebook-ad-search`: finds ads by keyword and returns the number of ads, the ad type, the media types, the platform and the active status

## What comes back

- Ad creative text, images and video
- Active or ended status
- Platforms the ad runs on
- Start date
- Advertiser page

## Answer rule

List each ad with its copy, format, platform and start date. Say whether each is active or ended.

## Before you start

- Filter by country. The library is searchable per country, and a global pull returns a pile you cannot read.
- Ask for active ads when you want what runs now. Ended ads stay in the library, and they tell a different story about what the company tried.
- Use the ad id to go deeper. One provider returns an ad's details and its video transcript, and both start from the id a search returns.

## Cost rules

- Searching and inspecting are free. Running is billed per call at the price `looot inspect` shows.
- Say the price before the first run, and the total after a batch.
- Never loop a failing call. Stop after two failures and report what failed.

## When not to use this skill

Use `looot-google-serp` instead when you want what the company shows in Google search, not its Meta ads.

Page for people: https://looot.ai/agent-skills/meta-ads-library

Wrong fit

When should I use a different skill?

Use Read a Google results page when you want what the company shows in Google search, not its Meta ads.

FAQ

What do people ask about this skill?

Send the competitor's domain or Facebook page to an ad-library endpoint. Your agent returns the ads that are live, with the copy, the format and the start date.

The same job as a page with the full price ladder: Meta Ad Library API for AI agents. Updated 2026-10-04.

For agents
skill
looot-meta-ads-library
file
https://looot.ai/agent-skills/meta-ads-library/SKILL.md
difficulty
easy
input
a company domain, a Facebook page or a keyword
endpoint
scrapecreators-facebook-adlibrary-company-ads-get
endpoint
adyntel-facebook
endpoint
scrapecreators-facebook-adlibrary-search-ads-get
endpoint
searchapi-io-meta-ad-library
endpoint
adyntel-facebook-ad-search
setup
https://looot.ai/skill.md
llms.txt
https://looot.ai/llms.txt
updated
2026-10-04

Try this skill with your own agent.

Start your workspace, top up, and save the skill where your agent reads it.