mcpbeat Sign in

Apify Influencer Brand Collabs Agent Skill

| Discover Instagram brand–creator partnerships by chaining Apify Actors. Use when the user asks who collabs with a brand, which brands a creator has done paid posts for, wants to audit an influencer's branded-content history, or wants to scope a brand's sponsorship roster. Works in either direction — brand → creators or creator → brands — and detects direction from the data, so don't ask the user to declare it. Requires Apify MCP tools.

2k tokens
context cost
the whole folder, loaded on every use
2
files
instructions only
0
copies elsewhere
how many repositories repackaged it
239
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/apify/awesome-skills --skill apify-influencer-brand-collabs

What comes with it

2 157 bytes besides the instruction
README.md

The instruction itself

15 sections, as written by the author

Influencer–Brand Collaborations

Surface Instagram branded-content partnerships by chaining four Apify Actors against Meta's Ad

Library. Distilled from the production influencer-brand-collabs mini-tool.

When to use

  • "Who has Nike paid to promote them this quarter?"
  • "What brands does @bellahadid do sponsored posts for?"
  • Auditing an account's branded-content history
  • Building a competitor's influencer roster

Don't use for: organic mentions or tags (use a hashtag/mentions scraper), TikTok or YouTube

collabs (different platforms), generic competitor ads (query Meta Ad Library directly).

Inputs to gather

  • Instagram handle or URL@adidas or https://www.instagram.com/adidas/
  • Lookback window — days; default 90
  • Enrichment toggles (each adds cost + time):
  • Content insights — likes, comments, views per collab
  • Profile enrichment — followers, bio, verified status of the *other* side

Direction (brand vs creator) is detected empirically. Do not ask.

The pipeline

| # | Actor | Purpose | Required |

|---|---|---|---|

| 1 | apify/instagram-profile-scraper | Resolve the target's Facebook fbid | ✓ |

| 2 | apify/brand-collaboration-scraper | Pull branded-content posts from Meta's Ad Library | ✓ |

| 3 | apify/instagram-post-scraper + apify/instagram-reel-scraper | Engagement metrics | optional |

| 4 | apify/instagram-profile-scraper (again) | Enrich the result-side partners | optional |

Call each via mcp__claude_ai_Apify__call-actor. Use mcp__claude_ai_Apify__fetch-actor-details

first if you've never run one of these and want the exact input schema.

Step 1 — Resolve the target

// actor: apify/instagram-profile-scraper
{ "usernames": ["adidas"] }

Grab fbid from the first item. No fbid → can't query Ad Library → stop and tell the user.

Most common cause: private account.

Step 2 — Build the Meta Ad Library URL

https://www.facebook.com/ads/library/branded_content/?id={fbid}&query={username}&target=instagram&start_date={YYYY-MM-DD}&end_date={YYYY-MM-DD}

Date range = the lookback window (default 90 days, ending today).

Step 3 — Fetch collaborations

// actor: apify/brand-collaboration-scraper
{ "startUrls": ["<ad library url>"], "resultsLimit": 10 }

Schema is fixed: every item has creator (always the influencer side) and brandPartners[0]

(always the brand side). Do not try to infer direction from these fields.

Step 4 — Detect direction empirically

Count how often the target username appears on each side of the results:

  • target appears more on creator side → target is the influencer; results are the brands
  • target appears more on brandPartners side → target is the brand; results are the creators

> ⚠️ Do not use isBusinessAccount to infer this. It's unreliable — e.g. @fifaworldcup is a

> business account but appears as the creator of its own branded content.

Step 5 — (optional) Content metrics

Split collab URLs by type:

  • /reel/... → reel scraper
  • /p/... or /tv/... → post scraper
// actor: apify/instagram-post-scraper
{ "username": ["<post urls>"], "resultsLimit": 1, "dataDetailLevel": "basicData" }

// actor: apify/instagram-reel-scraper
{ "username": ["<reel urls>"], "resultsLimit": 1 }

Match back to collabs via shortcode in the URL: /(p|reel|tv)/([A-Za-z0-9_-]+).

Engagement formula: likesCount + commentsCount + (videoViewCount ?? videoPlayCount ?? 0).

Run the two scrapers in parallel — they're independent.

Step 6 — (optional) Enrich the *result* side

Collect unique usernames from the side that is not the target. Then:

// actor: apify/instagram-profile-scraper
{ "usernames": [<unique result-side usernames>] }

Only enrich the side the user actually cares about. The input handle is already known.

What to present

After aggregation, surface:

  • Headline counts: total collabs, unique partners, total engagement (if metrics enriched)
  • Top 5 collabs by engagement — only meaningful when content insights were toggled on
  • Content-type mix: Post vs Reel; Reels usually dominate engagement
  • Weekly timeline across the date range — spikes reveal campaign launches
  • Per-partner card (when profiles enriched): handle, full name, followers, verified, category,

collabs in this run, avg engagement

For *who*-questions, the partner list alone is enough. Metrics only matter for

*which-was-best*-questions.

URL parsing

Strip Instagram's _u/ and _n/ deep-link prefixes before extracting the handle:

/instagram\.com\/(?:_u\/|_n\/)?([A-Za-z0-9_.]+)/i

These slugs are not usernames — skip them:

explore, reels, stories, direct, accounts, about, p, reel, tv, tags,

locations, _u, _n.

Pitfalls

  • Target is private → profile scraper returns no fbid. Bail early with a clear message.
  • No results → try in order: widen the date range, double-check the handle (strip _u/),

confirm the account actually runs branded content. Meta only indexes ads they've classified as

branded content.

  • Engagement is all zeros → user skipped content enrichment. Offer to re-run with it on.
  • Direction looks wrong in the output → re-check the empirical count. Don't trust

isBusinessAccount.

  • Brand collabs with no metrics are still answer-shaped for *who* questions — don't gate the

whole flow on enrichment.

Cost & time

Full 4-actor run: ~3–5 minutes, a few cents of Apify compute. Order of magnitude:

| Enrichment | Actors run | Approx time |

|---|---|---|

| None | 2 | 1–2 min |

| + Content | 3–4 | 2–4 min |

| + Profiles | +1 | +30–60 s |

If the user just needs a partner list, skip both toggles.

Reference implementation

Production route this skill was distilled from:

mini-tools-main/src/app/api/tools/influencer-brand-collabs/route.ts — full transformation logic,

error handling, and slimmed display shapes for each scraper's output.

Other skills for the same job

different authors, same section of the catalogue
Protocolsio Integration
by christophacham
×4

Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.

16k tokens
Tailored Resume Generator
by frostant
×4

Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances

3k tokens
Excalidraw Diagram Generator
by github
vendor ×3

Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.

36k tokens scripts
Expo Dev Client
by openai
vendor ×3

Build and distribute Expo development clients locally or via TestFlight

961 tokens
Executing Plans
by ZhanlinCui
×3

Use when you have a written implementation plan to execute in a separate session with review checkpoints

542 tokens
Anndata
by christophacham
×3

Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.

16k tokens
Benchling Integration
by christophacham
×3

Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.

14k tokens
Biopython
by christophacham
×3

Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.

24k tokens

How to use it

Copy the folder

Take apify/apify-influencer-brand-collabs from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.