← Index

io.github.IvanBBaev/facebook-mcp

io.github.IvanBBaev/facebook-mcpv0.7.0Other

Facebook Pages MCP server for the Meta Graph API — publishing, insights, moderation, messaging

The current version, v0.7.0, was published to the official MCP registry on 2026-08-27. It is distributed as @ivanbaev/facebook-mcp on npm, filed under Other by this index, and declares 23 environment variables. Removals and unreachable sources are measured across every server this index tracks, contract drift across the servers that answer in consecutive snapshots; the index's current counts put this record in context.

In-path gate · all MCP tools

Using io.github.IvanBBaev/facebook-mcp in Claude, Cursor, Gemini CLI, Cline, or Zed?

MCP tool contracts can change remotely with no version bump. The mcpindex gate pins each contract and HOLDs the call when it drifts-before your agent acts. Zero credentials. This is not the package install for this server itself (use Install this server for that).

Install the mcpindex gate (one command)

Rewrites your MCP host config so each server launches behind the gate. Inspect first: curl -fsSL https://mcpindex.ai/install.sh | less

uv tool install mcpindex-gate && mcpindex-config-wire
Trust verdict · v1 advisory · method
NOT YET SCREENEDno verdict on file

Verdict not yet evaluated for this tool. The semantic screen takes adversarial cases first; coverage rolls out as the corpus expands (15/150 labels to graduation). The deterministic conformance probe is built but has not yet run on the public corpus, so a recorded verdict here is REVIEW or UNVERIFIED, never a clearing ALLOW. Until a verdict is recorded, an agent should treat this tool as not-yet-cleared and fall back to its own checks. Method: the eval, four-state verdict, honest limits.

Own this server? Screen its description →

That verdict was true at screening time (snapshot 2026-08-27).

Contracts can change after screening, with no version bump. The gate pins io.github.IvanBBaev/facebook-mcp’s tool contracts on first sight and holds any silent change before your agent acts - the check that keeps being true on Tuesday.

See your first HOLD in 2 minutes →

Related: how to trust an MCP server · screen before install · silent contract drift

Environment variables
FB_SYSTEM_TOKEN
secret

System-user access token (Business Manager). Takes precedence over FB_ACCESS_TOKEN and FB_PAGE_TOKEN when several are set.

FB_ACCESS_TOKEN
secret

Primary user access token. At least one of FB_SYSTEM_TOKEN, FB_ACCESS_TOKEN or FB_PAGE_TOKEN must be set.

FB_PAGE_TOKEN
secret

Long-lived Page access token used as a fallback credential when no user or system-user token is configured.

FB_APP_ID

Meta app ID; combined with FB_APP_SECRET it forms the app access token used to authorize /debug_token inspection.

FB_APP_SECRET
secret

Meta app secret. When set, appsecret_proof is attached to every call so a stolen bare token cannot be used on its own.

FB_PAGE_ID

Default Facebook Page ID, used when a tool call omits an explicit profile argument.

FB_API_VERSION

Graph API version to target. Defaults to the tested pinned version; other values are accepted verbatim as an escape hatch but are not tested.

FB_REQUEST_TIMEOUT_MS

Per-request timeout in milliseconds; integer in [1, 600000].

FB_HOST_CONCURRENCY

Maximum number of in-flight requests per Graph host; integer in [1, 64].

FB_MAX_RESULT_CHARS

Character budget applied by the result shaper before a tool result is truncated; integer in [500, 10000000].

FB_WRITE_MODE

Write gating mode: plan (validating dry-run preview, the default) or apply. It never covers the irreversible and spend tiers, which always need a per-call apply plus a plan_id.

FB_CONFIRM_TOKEN
secret

Operator confirmation token for out-of-band approval of irreversible or spend actions. The server prompts through MCP elicitation where the client supports it; otherwise the caller passes this value as the confirm_token tool argument.

FB_MEDIA_DIR

Directory permitted for local media uploads. Unset means URL-only uploads and no local file access at all.

FB_JOURNAL_PATH

Path to the append-only write journal. Defaults to the XDG/%APPDATA% state path; the file is created owner-only (0600) and rotates by size.

FB_TOOL_PACKAGES

Comma-separated tool packages or profiles to expose (e.g. core,posts,reader, or the profiles core|all|reader|publisher|moderator|ads). Omit for the default profile, which excludes ads.

FB_PACKAGES_DENY

Comma-separated packages to exclude even when FB_TOOL_PACKAGES enables them. Deny wins over allow.

FB_PACKAGES_READONLY

Comma-separated packages whose write tools are not registered at all; the read tools of those packages stay available.

FB_TRANSPORT

Transport protocol: stdio (default) or http. The http transport binds 127.0.0.1 only and fails closed without FB_HTTP_TOKEN.

FB_HTTP_TOKEN
secret

Bearer token guarding the HTTP transport; required when FB_TRANSPORT=http (the server refuses to start without it).

FB_HTTP_PORT

Port for the HTTP transport (loopback only); used when FB_TRANSPORT=http. Integer in [1, 65535].

FB_AD_ACCOUNT_ID

Default ad account ID (act_… or the bare numeric id) for the opt-in ads package.

FB_ADS_BUDGET_CEILING

Hard ceiling for any ads budget write, in minor currency units (e.g. cents). Non-negative integer; a write above it is refused.

FB_LOG_LEVEL

Stderr log verbosity: debug, info, warn or error. Logs never go to stdout — that is the stdio protocol channel.

MCP quality score · maturity, not trust · methodology
freshness
25
completeness
15
installability
25
documentation
15
stability
5
Alternatives in Other