MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
Description from the maker (original English)
Facebook Pages MCP server for the Meta Graph API — publishing, insights, moderation, messaging
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
FB_SYSTEM_TOKEN, FB_ACCESS_TOKEN, FB_PAGE_TOKEN, FB_APP_ID, FB_APP_SECRET, FB_PAGE_ID, FB_API_VERSION, FB_ADS_API_VERSION, FB_REQUEST_TIMEOUT_MS, FB_HOST_CONCURRENCY, FB_MAX_RESULT_CHARS, FB_WRITE_MODE, FB_CONFIRM_TOKEN, FB_MEDIA_DIR, FB_JOURNAL_PATH, FB_ACTIVITY_STATE_PATH, FB_EXPORT_DIR, FB_TOOL_PACKAGES, FB_PACKAGES_DENY, FB_PACKAGES_READONLY, FB_TRANSPORT, FB_HTTP_TOKEN, FB_HTTP_PORT, FB_AD_ACCOUNT_ID, FB_ADS_BUDGET_CEILING, FB_ADS_CAMPAIGN_SPEND_CAP_MAX, FB_LOG_LEVELValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"facebook": {
"command": "npx",
"args": [
"-y",
"@ivanbaev/facebook-mcp"
],
"env": {
"FB_SYSTEM_TOKEN": "your-value",
"FB_ACCESS_TOKEN": "your-value",
"FB_PAGE_TOKEN": "your-value",
"FB_APP_ID": "your-value",
"FB_APP_SECRET": "your-value",
"FB_PAGE_ID": "your-value",
"FB_API_VERSION": "your-value",
"FB_ADS_API_VERSION": "your-value",
"FB_REQUEST_TIMEOUT_MS": "your-value",
"FB_HOST_CONCURRENCY": "your-value",
"FB_MAX_RESULT_CHARS": "your-value",
"FB_WRITE_MODE": "your-value",
"FB_CONFIRM_TOKEN": "your-value",
"FB_MEDIA_DIR": "your-value",
"FB_JOURNAL_PATH": "your-value",
"FB_ACTIVITY_STATE_PATH": "your-value",
"FB_EXPORT_DIR": "your-value",
"FB_TOOL_PACKAGES": "your-value",
"FB_PACKAGES_DENY": "your-value",
"FB_PACKAGES_READONLY": "your-value",
"FB_TRANSPORT": "your-value",
"FB_HTTP_TOKEN": "your-value",
"FB_HTTP_PORT": "your-value",
"FB_AD_ACCOUNT_ID": "your-value",
"FB_ADS_BUDGET_CEILING": "your-value",
"FB_ADS_CAMPAIGN_SPEND_CAP_MAX": "your-value",
"FB_LOG_LEVEL": "your-value"
}
}
}
}Run this in your terminal
claude mcp add facebook --env FB_SYSTEM_TOKEN=your-value --env FB_ACCESS_TOKEN=your-value --env FB_PAGE_TOKEN=your-value --env FB_APP_ID=your-value --env FB_APP_SECRET=your-value --env FB_PAGE_ID=your-value --env FB_API_VERSION=your-value --env FB_ADS_API_VERSION=your-value --env FB_REQUEST_TIMEOUT_MS=your-value --env FB_HOST_CONCURRENCY=your-value --env FB_MAX_RESULT_CHARS=your-value --env FB_WRITE_MODE=your-value --env FB_CONFIRM_TOKEN=your-value --env FB_MEDIA_DIR=your-value --env FB_JOURNAL_PATH=your-value --env FB_ACTIVITY_STATE_PATH=your-value --env FB_EXPORT_DIR=your-value --env FB_TOOL_PACKAGES=your-value --env FB_PACKAGES_DENY=your-value --env FB_PACKAGES_READONLY=your-value --env FB_TRANSPORT=your-value --env FB_HTTP_TOKEN=your-value --env FB_HTTP_PORT=your-value --env FB_AD_ACCOUNT_ID=your-value --env FB_ADS_BUDGET_CEILING=your-value --env FB_ADS_CAMPAIGN_SPEND_CAP_MAX=your-value --env FB_LOG_LEVEL=your-value -- npx -y @ivanbaev/facebook-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"facebook": {
"command": "npx",
"args": [
"-y",
"@ivanbaev/facebook-mcp"
],
"env": {
"FB_SYSTEM_TOKEN": "your-value",
"FB_ACCESS_TOKEN": "your-value",
"FB_PAGE_TOKEN": "your-value",
"FB_APP_ID": "your-value",
"FB_APP_SECRET": "your-value",
"FB_PAGE_ID": "your-value",
"FB_API_VERSION": "your-value",
"FB_ADS_API_VERSION": "your-value",
"FB_REQUEST_TIMEOUT_MS": "your-value",
"FB_HOST_CONCURRENCY": "your-value",
"FB_MAX_RESULT_CHARS": "your-value",
"FB_WRITE_MODE": "your-value",
"FB_CONFIRM_TOKEN": "your-value",
"FB_MEDIA_DIR": "your-value",
"FB_JOURNAL_PATH": "your-value",
"FB_ACTIVITY_STATE_PATH": "your-value",
"FB_EXPORT_DIR": "your-value",
"FB_TOOL_PACKAGES": "your-value",
"FB_PACKAGES_DENY": "your-value",
"FB_PACKAGES_READONLY": "your-value",
"FB_TRANSPORT": "your-value",
"FB_HTTP_TOKEN": "your-value",
"FB_HTTP_PORT": "your-value",
"FB_AD_ACCOUNT_ID": "your-value",
"FB_ADS_BUDGET_CEILING": "your-value",
"FB_ADS_CAMPAIGN_SPEND_CAP_MAX": "your-value",
"FB_LOG_LEVEL": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"facebook": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@ivanbaev/facebook-mcp"
],
"env": {
"FB_SYSTEM_TOKEN": "your-value",
"FB_ACCESS_TOKEN": "your-value",
"FB_PAGE_TOKEN": "your-value",
"FB_APP_ID": "your-value",
"FB_APP_SECRET": "your-value",
"FB_PAGE_ID": "your-value",
"FB_API_VERSION": "your-value",
"FB_ADS_API_VERSION": "your-value",
"FB_REQUEST_TIMEOUT_MS": "your-value",
"FB_HOST_CONCURRENCY": "your-value",
"FB_MAX_RESULT_CHARS": "your-value",
"FB_WRITE_MODE": "your-value",
"FB_CONFIRM_TOKEN": "your-value",
"FB_MEDIA_DIR": "your-value",
"FB_JOURNAL_PATH": "your-value",
"FB_ACTIVITY_STATE_PATH": "your-value",
"FB_EXPORT_DIR": "your-value",
"FB_TOOL_PACKAGES": "your-value",
"FB_PACKAGES_DENY": "your-value",
"FB_PACKAGES_READONLY": "your-value",
"FB_TRANSPORT": "your-value",
"FB_HTTP_TOKEN": "your-value",
"FB_HTTP_PORT": "your-value",
"FB_AD_ACCOUNT_ID": "your-value",
"FB_ADS_BUDGET_CEILING": "your-value",
"FB_ADS_CAMPAIGN_SPEND_CAP_MAX": "your-value",
"FB_LOG_LEVEL": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
FB_APP_ID envFB_PAGE_ID envFB_API_VERSION envFB_ADS_API_VERSION envFB_REQUEST_TIMEOUT_MS envFB_HOST_CONCURRENCY envFB_MAX_RESULT_CHARS envFB_WRITE_MODE envFB_MEDIA_DIR envFB_JOURNAL_PATH envFB_ACTIVITY_STATE_PATH envFB_EXPORT_DIR envFB_TOOL_PACKAGES envFB_PACKAGES_DENY envFB_PACKAGES_READONLY envFB_TRANSPORT envFB_HTTP_PORT envFB_AD_ACCOUNT_ID envFB_ADS_BUDGET_CEILING envFB_ADS_CAMPAIGN_SPEND_CAP_MAX envFB_LOG_LEVEL envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account IvanBBaev, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: FB_SYSTEM_TOKEN, FB_ACCESS_TOKEN, FB_PAGE_TOKEN, FB_APP_SECRET, FB_CONFIRM_TOKEN, FB_HTTP_TOKEN
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.8.0) reached the registry 9 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
An MCP server retrieving transcripts of YouTube videos
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
📖 [Documentation site →](https://ivanbbaev.github.io/facebook-mcp/)
A local-first, MIT-licensed TypeScript Model Context Protocol (MCP) server for developers who run their own Facebook Page(s) from an MCP client such as Claude Code, Claude Desktop, VS Code or Cursor. It talks to the Meta Graph API through your own Meta developer app and your own token: publishing, reading and insights, comment moderation and Messenger replies. Writes return a preview first by default (plan-and-apply), and the server sends no telemetry.
Things you could ask your agent once it is set up (the tools exist; see Status for what has been verified):
Not for you if you do not want to create a Meta developer app and handle an App ID, an App Secret and a token yourself — hosted social-media connectors with a one-click login are a better fit for that. It is also not for personal profiles, Groups, Instagram (there is a sibling server) or a hosted service for other people's Pages — see Not in scope.
🚧 Pre-1.0, and not yet verified against a live Page. The latest release is
0.8.0 on npm. This README describes
main, which can be ahead of that release;
unreleased changes are listed in
changes/unreleased/.
fetch, so "the tests pass" means "the code does what the fixtures say", not "Meta accepted it". A live smoke harness exists (scripts/smoke/) but has not been run against a real Page for any release.npx on Linux, macOS and Windows, but no person has walked an install end-to-end in any MCP client yet — see Client compatibility.Contents: Status · Features · Requirements · Setup · Client compatibility · Configure credentials · Permissions · Tools · How this compares · Known limitations · Not in scope · Your responsibilities · Roadmap · Security notes · Documentation · Support · Trademark · License
Implementation status only — see Status for what "implemented" does and does not mean. "Experimental" follows the experimental tier.
| Area | Capability | Status |
|---|---|---|
| Core & diagnostics | Identity, Page listing, rate-limit usage, doctor pre-flight check, setup-token | ✅ Implemented, not live-verified |
| Reading | Page and post reads, Reels, reactions, Stories, albums and photos, cursor pagination | ✅ Implemented, not live-verified |
| Publishing | Text / link / photo / video / Reels posts, Stories, scheduling, edit and delete | ✅ Implemented, not live-verified |
| Insights | Page, post and Reel insights, a one-call Page report, a posts comparison table, metric-rename and retirement guidance | ✅ Implemented, not live-verified |
| Moderation | Comment reads and triage, replies, comment edits, hide, like, delete, private reply, block/unblock, moderation settings | ✅ Implemented, not live-verified |
| Messaging | Conversation reads, "what is new since", replies within the 24-hour window, saved replies; message reactions, attachments and labels | ✅ Implemented, not live-verified (some experimental) |
| Ads (opt-in) | Campaign / ad-set / ad reads, previews, insights, status, budget and spend-cap control; archive/delete, image upload, targeting edits, copies, boost | ✅ Implemented, not live-verified (some experimental) |
| Page profile (opt-in) | Edit the Page's about, description, website, phone, hours, temporary status | ✅ Implemented, not live-verified, experimental |
| Live verification | Every tool exercised against a real Page and a real ad account | ❌ Not done — see Status |
| npm / MCPB release | npx @ivanbaev/facebook-mcp, attested .mcpb bundle, MCP Registry listing | ✅ Published — 0.8.0 |
Each tool wraps one capability rather than mirroring every Graph edge. Six packages (53 tools) are on by default; ads and page_admin are opt-in.
graph, graph-video, rupload); nothing phones home.core ← api ← mcp ← tools ← cli ← server layering, tools-as-data with a central package registry.engines and a runtime guard in the launcher; the project targets the version in .nvmrc).ads package, an ad account) you administer.The first run is five steps, in this order. Most of the time goes into Meta's app UI. docs/runbooks/onboarding.md is the long form with troubleshooting.
setup-token needs both.pages_show_list and pages_read_engagement), and Generate Access Token. It lives 1–2 hours, so do step 3 right away.setup-token swaps it for a ~60-day token, resolves your Page and writes the env file: FB_APP_ID='<app id>' FB_APP_SECRET='<app secret>' \
FB_SETUP_TOKEN=' ' \ npx -y @ivanbaev/facebook-mcp setup-token
Success is status: completed in the Run block and status: written in the Env file block. The file lands at ~/.config/facebook-mcp/.env ($XDG_CONFIG_HOME if set) or %APPDATA%\facebook-mcp\.env on Windows, mode 0600. The server reads it on every start, so the client config below needs no env block. More than one Page? Re-run with --page= --force.
usable: npx -y @ivanbaev/facebook-mcp doctor
Only the beginning is shown; read the rest in the repo