# Facebook Followers & Following Scraper - Search by Name (`parseforge/facebook-followers-following-scraper`) Actor

Export the public followers and following lists of any Facebook page or profile: name, profile URL, Facebook ID, username, verified badge, photo and subtitle. Search inside a list by name. Download as CSV, Excel, JSON or XML.

- **URL**: https://apify.com/parseforge/facebook-followers-following-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Social media, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 accounts

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

![ParseForge Banner](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner-v4.webp)

## 👥 Facebook Followers & Following Scraper

> 🚀 **Export the followers and following lists of any Facebook page or profile in seconds.** Paste a page link and get every account Facebook shows in its lists, with name, profile URL, Facebook ID, username, verified badge and photo. 386 accounts from 6 profiles came back in 60 seconds in our test.

This Actor opens the **Followers** and **Following** tabs of a Facebook page or profile the way a logged-out visitor sees them, and reads the same data feed the page itself loads when you scroll. Every account in the list becomes one spreadsheet row. You can export both lists, or only one, and you can search inside a list by name, using Facebook's own search, to pull only the "Maria" or "bakery" accounts out of thousands.

Every row has 18 fields: the account (photo, name, profile URL, Facebook ID, username, verified badge, subtitle such as a city or employer), its relation and position in the list, and the source it was found on (name, ID, verified badge, exact follower total, following count and how many accounts Facebook exposes in that list). No login, no cookie, no browser.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Social media marketers | See who follows a competitor or a creator |
| Influencer and partnership teams | Map which brands, creators and pages an account follows |
| Lead generation teams | Build prospect lists from the audience of a niche page |
| Market researchers | Profile the audience of pages in a category or region |
| Journalists and OSINT analysts | Trace the network around a public page |
| Data teams | Feed follower graphs into analytics and CRMs |

### 📋 What the Facebook Followers & Following Scraper does

1. Accepts Facebook page and profile links in any form: `facebook.com/NASA`, `profile.php?id=...`, `/people/Name/ID/`, or links that already end in `/followers` or `/following`. Plain usernames and numeric IDs work too.
2. Opens the followers list, the following list, or both, as a logged-out visitor.
3. Pages through the list 8 accounts at a time, moving to a fresh IP whenever Facebook rate-limits one, until the list ends or your limit is reached.
4. With **Search by Name** set, asks Facebook to filter the list first, so only matching accounts are fetched and charged.
5. Adds the source's own numbers to every row: the exact follower total, the following count and how many accounts Facebook exposes in the list.
6. Writes one row per account. A profile that gives nothing (not found, private lists) produces a single free error row that says why.

> 💡 **Why it matters:** a followers list is the most direct public signal of who pays attention to a page. The following list shows who a page pays attention to: its partners, its sister brands, the creators it watches. Both turn into targeting, partnership and research lists you cannot buy anywhere else.

### 🎬 Full Demo (🚧 Coming soon)

### 📊 Output

Each dataset row is one account from a followers or following list. 18 columns per row.

| Field | Type | Description |
|---|---|---|
| 🖼 `imageUrl` | string | Profile photo, 240x240 |
| 📌 `name` | string | Account name |
| 🔗 `profileUrl` | string | Account profile URL |
| 🆔 `id` | string | Facebook ID of the account |
| 🏷 `username` | string | Vanity username, `Not Disclosed` when the account has none |
| ✅ `isVerified` | string | `Yes` when the account has the verified badge |
| 📝 `subtitle` | string | Line Facebook shows under the name, such as a city or employer |
| 🔁 `followType` | string | `Follower` or `Following` |
| 🔢 `position` | number | Position of the account in the list |
| 🎯 `sourceName` | string | Name of the page or profile the list belongs to |
| 🆔 `sourceId` | string | Facebook ID of the source |
| 🔗 `sourceUrl` | string | The URL you entered |
| ✅ `sourceIsVerified` | string | `Yes` when the source is verified |
| 👥 `sourceFollowersCount` | number | Exact follower total of the source |
| ➡️ `sourceFollowingCount` | number | Accounts the source follows |
| 📋 `listSize` | number | Accounts Facebook exposes in this list |
| 🕒 `scrapedAt` | string | When the row was collected |
| ❌ `error` | string | Populated only on failed rows |

`subtitle` is filled when Facebook shows a line under the name, which is roughly one account in six.

#### Real sample records

```json
{
  "imageUrl": "https://scontent-ord5-1.xx.fbcdn.net/v/t39.30808-1/825329488_122105572629484200_7471871209060023243_n.jpg?stp=cp6_dst-jpg_tt6&cstp=mx1320x1320&ctp=s240x240&_nc_cat=101&ccb=1-7&_nc_sid=167101&_nc_ohc=XDB3vrwVc-oQ7kNvwFH7JAJ&_nc_oc=AdqQHORouJsGSA07Y5XBw012BXZvvIdDvYTLdYUoIE7wECdan-U77a3Esi33QWwWZm4&_nc_zt=24&_nc_ht=scontent-ord5-1.xx&_nc_gid=e7jFyT_qRB26OzeHEH9Tcw&_nc_ss=70180&oh=00_AQJgD1sxPB5dE-gOnMGrEoD2Ym9V34B6H6ODdTqvkTeXJg&oe=6ABC6871",
  "name": "Natalia's HairPro",
  "profileUrl": "https://www.facebook.com/people/Natalias-HairPro/61594526021692/",
  "id": "61594526021692",
  "username": "Not Disclosed",
  "isVerified": "No",
  "subtitle": "Not Disclosed",
  "followType": "Follower",
  "position": 1,
  "sourceName": "NASA - National Aeronautics and Space Administration",
  "sourceId": "100044561550831",
  "sourceUrl": "https://www.facebook.com/NASA",
  "sourceIsVerified": "Yes",
  "sourceFollowersCount": 28730388,
  "sourceFollowingCount": 52,
  "listSize": 637,
  "scrapedAt": "2026-09-25T17:04:08.753Z",
  "error": null
}
```

```json
{
  "imageUrl": "https://scontent-ord5-2.xx.fbcdn.net/v/t39.30808-1/795553577_122105041845477643_8188258760664833923_n.jpg?stp=dst-jpg_tt6&cstp=mx1290x1290&ctp=s240x240&_nc_cat=110&ccb=1-7&_nc_sid=167101&_nc_ohc=sgzoYTAVz-oQ7kNvwE_smkX&_nc_oc=AdqJZnBNFsqmRxeE9IiBQEvNbLZGt9j2kiZCSJEXUFl9hjJoeQvMIXIYzNKSrVQ-HlE&_nc_zt=24&_nc_ht=scontent-ord5-2.xx&_nc_gid=e7jFyT_qRB26OzeHEH9Tcw&_nc_ss=70180&oh=00_AQLZJqQBJOBaEmpJDi3TcCGixNqClkw2pDa2Yz0pE5FhPg&oe=6ABC9746",
  "name": "Restaurante “La Mesa de Job”",
  "profileUrl": "https://www.facebook.com/people/Restaurante-La-Mesa-de-Job/61594329314063/",
  "id": "61594329314063",
  "username": "Not Disclosed",
  "isVerified": "No",
  "subtitle": "Not Disclosed",
  "followType": "Follower",
  "position": 2,
  "sourceName": "NASA - National Aeronautics and Space Administration",
  "sourceId": "100044561550831",
  "sourceUrl": "https://www.facebook.com/NASA",
  "sourceIsVerified": "Yes",
  "sourceFollowersCount": 28730388,
  "sourceFollowingCount": 52,
  "listSize": 637,
  "scrapedAt": "2026-09-25T17:04:08.753Z",
  "error": null
}
```

```json
{
  "imageUrl": "https://scontent-ord5-2.xx.fbcdn.net/v/t39.30808-1/293786884_358960369763860_6860255734096253716_n.jpg?stp=dst-jpg_tt6&cstp=mx1169x1168&ctp=s240x240&_nc_cat=102&ccb=1-7&_nc_sid=167101&_nc_ohc=0MSQEL5pwdAQ7kNvwHsEy4G&_nc_oc=AdqlzHcPwXRVHcoEPhhzd3YB8peTzSSmIgoii3wdT7RYnHDU6bBQ_2GF-PgjOFOiAok&_nc_zt=24&_nc_ht=scontent-ord5-2.xx&_nc_gid=e7jFyT_qRB26OzeHEH9Tcw&_nc_ss=70180&oh=00_AQIgRxXpmsimvd5tWXvEOcJzghpOGj5vQESpIITVTn2XcA&oe=6ABC945B",
  "name": "New Extra Spark",
  "profileUrl": "https://www.facebook.com/NewExtraSparkOfficial",
  "id": "100069497002905",
  "username": "NewExtraSparkOfficial",
  "isVerified": "No",
  "subtitle": "Not Disclosed",
  "followType": "Follower",
  "position": 3,
  "sourceName": "NASA - National Aeronautics and Space Administration",
  "sourceId": "100044561550831",
  "sourceUrl": "https://www.facebook.com/NASA",
  "sourceIsVerified": "Yes",
  "sourceFollowersCount": 28730388,
  "sourceFollowingCount": 52,
  "listSize": 637,
  "scrapedAt": "2026-09-25T17:04:08.753Z",
  "error": null
}
```

### ✨ Why choose this Actor

- **Search inside a list.** Set **Search by Name** and Facebook filters the list before it is fetched. In our test, a search for "john" across the followers of Mark Zuckerberg and Leonardo DiCaprio returned 200 accounts, all 200 with John in the name. You pay only for the matches.
- **Facebook IDs and usernames on every row.** Each account comes with its numeric Facebook ID and, when it has one, its vanity username, so rows join cleanly with other datasets and survive name changes.
- **Verified badge per account.** Filter a following list down to the verified pages and creators an account follows.
- **Coverage you can measure.** Every row carries the source's exact follower total and the number of accounts Facebook exposes in the list, so you always know how much of an audience you captured.
- **Larger photos.** Profile photos come at 240x240 instead of the 80x80 thumbnails of the list page.
- **Fair share across profiles.** **Max Items per List** caps each list, so a run over 50 profiles gets a slice of every one instead of 1,000 rows from the first.
- **Any link works.** Vanity URLs, `profile.php?id=` links, `/people/` links, usernames and IDs.
- **Pay only for accounts.** Profiles that do not exist or keep both lists private return a free error row.
- **No credentials, no browser.** Plain HTTP with automatic IP rotation. You never hand over a Facebook login.

### 📈 How it compares to alternatives

| | This Actor | Typical followers scrapers | Cookie based scrapers | Manual copy and paste |
|---|---|---|---|---|
| Requires your Facebook login | No | No | Yes | Yes |
| Followers and following | Yes, one or both | Usually both | Yes | Yes |
| Search a list by name | Yes | No | Rarely | Yes, one search at a time |
| Facebook ID per account | Yes | Rarely | Varies | No |
| Verified badge per account | Yes | Rarely | Varies | Visible only |
| Source follower total and list size | Yes | No | No | No |
| Share of a big account's followers | What Facebook exposes, see FAQ | Same limit | Larger, with a login | Same limit |
| Account risk | None | None | Your account can be flagged | None |

Facebook does not show logged-out visitors the full follower list of a large account. Leonardo DiCaprio has 18,449,160 followers and Facebook exposes 3,294 of them; Mark Zuckerberg has 121,472,831 and Facebook exposes 10,000; NASA has 28,730,388 and Facebook exposes 637. Smaller profiles and following lists are usually exposed in full: NASA's following list shows 60 accounts, Leonardo DiCaprio's 51. The Actor reports `listSize` and `sourceFollowersCount` on every row so your coverage is never a surprise.

### 🚀 How to use

1. Create a free Apify account. New accounts include $5 of free platform credit, which is plenty to try this out: [console.apify.com/sign-up](https://console.apify.com/sign-up?fpr=vmoqkp)
2. Open the Actor and go to the Input tab.
3. Paste one or more Facebook page or profile links into **Facebook Pages or Profiles**.
4. Choose **Relation Type**: followers and following, followers only, or following only.
5. Optionally type a name into **Search by Name**, and set **Max Items per List** when you run many profiles.
6. Set **Max Items** to the total number of accounts you want and click **Start**.
7. Open the **Dataset** tab and download as CSV, Excel, JSON or XML, or pull it from the API.

```json
{
  "startUrls": [{ "url": "https://www.facebook.com/NASA" }, { "url": "https://www.facebook.com/humansofnewyork" }],
  "followType": "following",
  "maxItems": 500,
  "maxItemsPerProfile": 200
}
```

### 💼 Business use cases

#### Competitor audience research

Export the followers of the three pages your competitors run and see who they reach: local businesses, creators, communities. The subtitle line often names a city or an employer, which tells you where that audience lives and works.

#### Influencer and partnership mapping

The following list of a brand or creator is a map of who it works with and watches. Export the following lists of the top creators in your niche, keep the verified accounts, and you have a shortlist of partners, sponsors and peers.

#### Prospect lists for local businesses

Pages of associations, trade fairs and suppliers are followed by the businesses they serve. Exporting those followers gives agencies and B2B sellers a list of real, active local businesses with their Facebook profile links, ready for enrichment.

#### Network and OSINT analysis

Journalists and researchers can trace the network around a public page: who it follows, which of its followers are pages rather than people, and which accounts appear across several lists. The Facebook ID on every row makes cross-list matching exact.

### 🔌 Automating Facebook Followers & Following Scraper

- **Make** and **Zapier**: run the Actor when a new page lands in a sheet or CRM, and write its followers back as new records.
- **Slack**: post the accounts a tracked competitor started following since the last run.
- **Airbyte**: sync datasets into Snowflake, BigQuery or Postgres to keep a history of follower lists.
- **GitHub**: schedule runs from Actions and keep versioned snapshots of the lists you track.
- **Google Drive**: drop a CSV or Google Sheet into a shared folder after every run.
- **API and webhooks**: every run emits a dataset ID; subscribe to the run succeeded webhook and pull the rows into any system.

### 🌟 Beyond business use cases

- **Research**: study how audiences overlap between pages, or how a page's following list changes over time.
- **Personal**: find which of your favorite creators follow each other, or which local pages a community follows.
- **Non-profit**: discover the organizations and supporters around a cause by exporting the followers of the pages that lead it.
- **Experimentation**: follower and following lists are a small, clean graph dataset for network analysis and visualization projects.

### 🤖 Ask an AI assistant about this scraper

Paste this into ChatGPT, Claude or any assistant to get help designing your run:

> I am using the ParseForge Facebook Followers & Following Scraper on Apify. It takes Facebook page or profile URLs and returns one row per account in their followers list, following list or both, with 18 fields: imageUrl, name, profileUrl, id, username, isVerified, subtitle, followType, position, sourceName, sourceId, sourceUrl, sourceIsVerified, sourceFollowersCount, sourceFollowingCount, listSize, scrapedAt and error. It can filter a list by name with Facebook's own search and cap each list with maxItemsPerProfile. For large accounts Facebook exposes only part of the followers list to logged-out visitors (listSize says how many). Help me design a run to answer this question: \[your question here].

### ❓ Frequently Asked Questions

**🔐 Do I need a Facebook account or cookie?**
No. The Actor reads only what Facebook shows to a logged-out visitor. You never supply credentials, so no account of yours is exposed.

**📉 Why do I get 3,294 followers for a page with 18 million?**
Facebook does not show logged-out visitors the full follower list of a large account. It exposes a slice of it, and the size of that slice is reported in `listSize`: 3,294 for Leonardo DiCaprio, 10,000 for Mark Zuckerberg, 637 for NASA. Smaller profiles are usually exposed in full. No tool that works without a login can go past this limit.

**📋 Is the following list complete?**
Usually yes. Following lists are short and Facebook shows them in full: NASA's shows 60 accounts, Leonardo DiCaprio's 51. The list Facebook serves can come back a few accounts shorter than the count it displays.

**🔎 How does Search by Name work?**
The Actor passes your text to the search box Facebook puts at the top of every followers list. Facebook returns only the accounts whose name matches, so a search for "john" in a list of 10,000 returns just the Johns, and you pay only for those rows.

**🚫 Why did a profile return an error row?**
Either the page or profile does not exist, or it keeps both lists private. Many personal profiles hide their following list, and some pages have no followers tab. When one list is private and the other is public, you get the public one and no error row. Error rows are never charged.

**🧑 Does it work on personal profiles?**
Yes, when the person made the list public. Followers of personal profiles are often visible; friends lists are not part of this Actor.

**🧾 Why is the subtitle often "Not Disclosed"?**
Facebook shows a line under an account's name only for some accounts, usually a city, school or employer that the account made public. About one account in six has one.

**🏷 Why is the username "Not Disclosed" for some accounts?**
Those accounts never picked a vanity username, so their profile URL uses `/people/Name/ID/`. The Facebook ID is always present.

**🌐 Do I need a proxy?**
Keep the default residential proxy. Facebook rate-limits follower lists per IP and refuses datacenter IPs, so the Actor rotates to a fresh residential IP whenever one is limited and carries on from the same position in the list.

**⏱ How fast is it?**
Around 4 accounts per second per list, and 3 profiles run at the same time. 386 accounts from 6 profiles took 60 seconds in our test.

**📥 What export formats are supported?**
CSV, Excel, JSON, XML, plus direct API access and integrations with Make, Zapier, Airbyte, Slack, Google Drive and more.

**⚖️ Is this legal?**
The Actor collects lists that Facebook shows to everyone without a login. You remain responsible for how you use the data, including compliance with GDPR, CCPA, anti-spam law and Facebook's terms.

### 🔌 Integrate with any app

Every run writes to an Apify dataset reachable through a REST API, so the output drops into whatever you already use. Native integrations cover Make, Zapier, Airbyte, Slack, Google Drive, GitHub, Google Sheets and webhooks, and the API covers everything else.

### 🔗 Recommended Actors

- [Facebook Pages Scraper - 30 Fields, Followers & Info](https://apify.com/parseforge/facebook-pages-scraper) - full page profiles for the accounts in your lists.
- [Facebook Posts Scraper - 33 Fields, Reaction Split](https://apify.com/parseforge/facebook-posts-scraper) - what the pages you collected are posting.
- [Facebook Comments Scraper - Replies & Reactions](https://apify.com/parseforge/facebook-comments-scraper) - the conversations under their posts.
- [Facebook Groups Scraper - Posts & Member Counts](https://apify.com/parseforge/facebook-groups-scraper) - the groups around the same audience.
- [Facebook Search Scraper - Posts by Keyword](https://apify.com/parseforge/facebook-search-scraper) - find pages and posts by keyword.

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge).

**🆘 Need Help?** [Open our contact form](https://tally.so/r/BzdKgA)

> **⚠️ Disclaimer:** independent tool, not affiliated with Facebook or Meta; only publicly available data.

# Actor input Schema

## `startUrls` (type: `array`):

Facebook page or profile URLs. Any form works: https://www.facebook.com/NASA, https://www.facebook.com/profile.php?id=100044203430980, https://www.facebook.com/people/Name/61594655796101/, or a URL that already ends in /followers or /following.

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## `followType` (type: `string`):

Which list to export for every page or profile: the accounts that follow it, the accounts it follows, or both.

## `searchQuery` (type: `string`):

Optional. Keep only accounts whose name matches this text, using Facebook's own search inside the list (for example: maria, studio, bakery).

## `maxItemsPerProfile` (type: `integer`):

Optional. Stop each followers or following list after this many accounts, so several profiles share the run evenly. Leave empty to take every account Facebook shows.

## `proxyConfiguration` (type: `object`):

Facebook rate-limits its follower lists per IP and blocks datacenter IPs, so keep the default residential proxy.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.facebook.com/NASA"
    }
  ],
  "maxItems": 10,
  "followType": "both",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}
```

# Actor output Schema

## `overview` (type: `string`):

Key fields

## `fullData` (type: `string`):

Complete dataset with all 18 fields

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.facebook.com/NASA"
        }
    ],
    "maxItems": 10,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "US"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/facebook-followers-following-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://www.facebook.com/NASA" }],
    "maxItems": 10,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "US",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/facebook-followers-following-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.facebook.com/NASA"
    }
  ],
  "maxItems": 10,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}' |
apify call parseforge/facebook-followers-following-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/facebook-followers-following-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/2kdwI4hhYPYNlF2sV/builds/BwchN4WWei7L0kbCr/openapi.json
