使用说明
Facebook MCP服务器和CLI工具
灵感来自 HagaiHen/facebook-mcp-服务器 --用TypeScript重写 多页管理 通过a
FACEBOOK_ASSETSJSON配置。来源: 2b3pro/facebook微信客户端
A. TypeScript MCP服务器 用于使用Facebook Graph API自动化和管理Facebook页面上的交互。公开53个用于发布、评论审核、分析、参与跟踪、视频/视频/故事发布、幻灯片、交叉发布和A/B测试的工具,随时可以插入Claude Desktop或其他基于LLM的代理。包括一个用于直接shell访问的独立CLI。
这是什么?
该MCP提供了一套可直接连接到Facebook页面的AI调用工具,将常见的API操作抽象为LLM友好功能。
好处
- 赋能 社交媒体经理 自动化审核和分析。
- 无缝集成 Claude Desktop或任何与MCP兼容的代理.
- 允许从自然语言对Facebook内容进行细粒度控制。
- 独立CLI (
cli/fbcli.ts)用于直接shell脚本编写和自动化。
特性
所有工具(除 list_pages)采取 page_name 作为第一个参数——目标页面的slug样式标识符(例如。 "mybusiness").
| 工具 | 说明 |
|---|---|
list_pages |
列出所有已配置的Facebook页面(否 page_name 需要参数)。 |
post_to_facebook |
创建一个带有消息的新Facebook帖子。 |
reply_to_comment |
回复帖子中的具体评论。 |
get_page_posts |
从页面检索最近的帖子。 |
get_post_comments |
获取给定帖子的评论。 |
delete_post |
按ID删除特定帖子 |
delete_comment |
按ID删除特定评论 |
hide_comment |
在公共视图中隐藏评论。 |
unhide_comment |
取消隐藏以前隐藏的评论。 |
delete_comment_from_post |
别名,用于删除特定帖子中的评论。 |
filter_negative_comments |
过滤掉带有负面情绪关键字的评论。 |
get_number_of_comments |
统计一篇帖子的评论数量。 |
get_number_of_likes |
统计帖子上的赞数。 |
get_post_insights |
获取帖子的所有见解指标。 |
get_post_impressions |
获取帖子的总印象。 |
get_post_impressions_unique |
获取看到该帖子的唯一用户数。 |
get_post_impressions_paid |
获取帖子的付费展示次数。 |
get_post_impressions_organic |
获取帖子上的自然印象数量。 |
get_post_engaged_users |
获取参与该帖子的用户数量。 |
get_post_clicks |
获取帖子的点击次数。 |
get_post_reactions_like_total |
获取“赞”反应的总数。 |
get_post_reactions_love_total |
获取“爱”反应的总数。 |
get_post_reactions_wow_total |
获取“哇”反应的总数。 |
get_post_reactions_haha_total |
获取“哈哈”反应的总数。 |
get_post_reactions_sorry_total |
获取“抱歉”反应的总数。 |
get_post_reactions_anger_total |
获取“愤怒”反应的总数。 |
get_post_top_commenters |
获取帖子中的顶级评论者。 |
post_image_to_facebook |
在Facebook页面上发布一张带有标题的图片。 |
send_dm_to_user |
向用户发送直接消息。 |
update_post |
更新现有帖子的消息。 |
schedule_post |
安排一篇文章以供将来发表。 |
get_page_fan_count |
检索页面粉丝的总数。 |
get_post_share_count |
获取帖子中的股份数量。 |
get_post_reactions_breakdown |
在一次通话中获取帖子的所有反应计数。 |
bulk_delete_comments |
按ID删除多条评论 |
bulk_hide_comments |
按ID隐藏多条评论 |
| 视频和卷轴 | |
publish_reel |
上传并发布卷轴(3步上传流程)。 |
list_reels |
列表已发布Reels on the Page。 |
get_video_status |
上传后检查视频处理状态。 |
publish_video |
将视频发布到页面提要。 |
| 故事 | |
publish_video_story |
发布视频故事(3步上传流程)。 |
publish_photo_story |
发布照片故事(两步上传流程)。 |
list_stories |
列出页面故事。 |
| 幻灯片 | |
create_slideshow |
从3-7张图片创建幻灯片视频。 |
| 音乐 | |
get_music_recommendations |
获取视频/卷轴的音乐推荐。 |
| 交叉张贴 | |
crosspost_video |
将视频交叉发布到另一个页面。 |
enable_crossposting |
启用视频交叉播放到特定页面。 |
crosspost_eligible_pages |
有资格进行交叉发布的列表页面。 |
check_crosspost_eligibility |
检查视频是否可以交叉发布。 |
| A/B测试 | |
create_ab_test |
为视频变体创建A/B测试。 |
get_ab_test |
获取A/B测试结果。 |
list_ab_tests |
在页面上列出所有A/B测试。 |
delete_ab_test |
删除A/B测试。 |
设置和安装
1.克隆存储库
git clone https://github.com/2b3pro/facebook-mcp-cli.git
cd facebook-mcp-cli
2.安装依赖项
需要 包子 运行时:
bun install
3.设置环境
创建一个 .env 项目根目录中的文件 FACEBOOK_ASSETS JSON数组:
FACEBOOK_ASSETS='[{"fb_page_id":"123456","page_name":"mybusiness","display_name":"My Business Page","page_access_token":"EAA..."},{"fb_page_id":"789012","page_name":"sideproject","display_name":"Side Project","page_access_token":"EAA..."}]'
每个条目都需要:
| 字段 | 描述 |
|---|---|
fb_page_id |
Facebook页面ID |
page_name |
Slug标识符(小写,无空格)——在所有工具中用作第一个参数 |
display_name |
人类可读标签 |
page_access_token |
来自的页面访问令牌 图形API资源管理器 |
4.运行MCP服务器
bun run src/server.ts
与Claude Desktop一起使用
将以下内容添加到您的Claude Desktop配置中(~/.claude.json 在...之下 mcpServers):
"facebook-mcp": {
"command": "bun",
"args": ["run", "/path/to/facebook-mcp-cli/src/server.ts"],
"env": {
"FACEBOOK_ASSETS": "[{\"fb_page_id\":\"123\",\"page_name\":\"mypage\",\"display_name\":\"My Page\",\"page_access_token\":\"EAA...\"}]"
}
}
命令行界面
独立CLI可在以下网址获得 cli/fbcli.ts 用于直接访问所有相同的shell操作。看 cli/README.md 获取完整文档。
bun run cli/fbcli.ts --help
bun run cli/fbcli.ts pages
bun run cli/fbcli.ts posts mybusiness
支持接受文本内容或ID列表的命令 stdin管道 --省略参数和管道输入:
cat draft.txt | fbcli post mybusiness
echo "Thanks!" | fbcli reply mybusiness 123_456
fbcli comments mybusiness 123_456 | jq -r '.data[].id' | fbcli bulk-hide mybusiness
建筑
MCP服务器(src/)
src/server.ts → src/api.ts → Facebook Graph API
(MCP tools) (HTTP wrapper)
↑
src/config.ts
(env + types)
- src/config.ts —
PageAsset接口,env加载,API基本URL - src/api.ts —
graphApi(),ruploadApi(),resumableUpload(),graphApiBatch()HTTP包装器 - src/server.ts --所有53个MCP工具通过
@modelcontextprotocol/sdk
CLI(cli/)
独立的单文件CLI位于 cli/fbcli.ts.独立于MCP服务器--读取它自己的 .env.