English | 한국어
meta-mcp

全面覆盖 Instagram Graph API(v26.0)、Threads API 和 Meta 平台管理功能的 MCP 服务。
适用场景
你可以向 AI 助手提出以下需求:
- “在 Instagram 发布一张照片”——发布照片、视频、Reels、快拍和轮播内容
- “在 Threads 发布一条文字帖子”——发布带投票、GIF、链接附件和主题标签的文字帖子
- “查看我的 Instagram 粉丝数和数据分析”——查看账号和帖子级数据分析
- “安排发布一条轮播帖子”——在 Instagram(2–10 张)或 Threads(2–20 张)发布多图相册
- “回复我最新帖子的评论”——阅读并回复两个平台上的评论
- “同时发布到 Instagram 和 Threads”——使用内置的
content_publish 提示词
- “查看我的 Threads 账号数据分析”——查看浏览量、点赞、回复、转发、引用和点击量
- “管理 Instagram 私信”——列出对话、阅读消息并发送回复
AI Agent 集成:查看 llms.txt 获取机器可读摘要,或将 templates/CLAUDE.md / templates/AGENTS.md 复制到你的项目中,以自动发现 MCP。
功能
- 66 个工具,覆盖 Instagram(33 个)、Threads(27 个)和 Meta 平台(6 个)
- Instagram:发布带替代文本的照片、视频、Reels、快拍和轮播内容;管理评论;查看数据分析;搜索主题标签;处理私信;管理协作邀请
- Threads:发布带投票、GIF、主题标签、链接附件、替代文本、剧透标记、幽灵帖子、回复审批、位置标签和 Instagram 快拍跨平台分享功能的文字、图片、视频和轮播内容;管理回复和待处理的回复审批;搜索帖子和地点;发现个人资料和提及;oEmbed;查看数据分析;删除帖子
- Meta:令牌交换、刷新和调试;管理 Webhook
- 2 项资源:Instagram 个人资料、Threads 个人资料
- 2 个提示词:跨平台内容发布、数据分析报告
- 通过
x-app-usage 标头跟踪速率限制
v2.2.1 新增内容
- 照片、图片快拍以及所有轮播内容的子项和父项,现在都会等待容器处理完成后再发布。处理出错时将停止发布请求。
- 被提及用户的评论使用 Instagram 用户字段扩展及文档规定的默认字段。
v2.2.0 新增内容
- 修复了 Instagram 商业账号发现和协作邀请请求。邀请使用
media_id 和 accept;仍支持 invite_id 和 action 作为别名。
- 账号数据分析支持
metric_type、breakdown 和人口统计 timeframe。对于 views 等指标,会自动选择 total_value。
- 独立视频现在会作为分享到动态的 Reels 发布。照片、Reels 和轮播内容支持 AI 信息和付费合作标签;Reels 还支持
trial_params。
- 公开的 Threads oEmbed 无需令牌即可使用。还包含自 v2.1.1 起的令牌刷新、Instagram Messaging、内容发布和回复处理修复。
v2.1.0 新增内容
- Graph API v26.0:从 v25.0 升级(v26.0 更新日志中已弃用的字段和端点均未使用)
- 移除 Tenor:GIPHY 现在是唯一的 GIF 提供方(Tenor 已于 2026 年 3 月 31 日停止服务);移除
gif_provider 参数
- Threads 幽灵帖子:在
threads_publish_text 中添加 is_ghost_post(24 小时后自动归档)
- Threads 回复审批:在发布工具中添加
enable_reply_approvals,并新增 threads_get_pending_replies 和 threads_manage_pending_reply
- Threads → Instagram 快拍跨平台分享:在所有发布工具中添加
crossreshare_to_ig / crossreshare_to_ig_dark_mode
- Threads 位置标记:在发布工具中添加
location_id,并新增 threads_search_locations 和 threads_get_location
- Threads 个人资料发现:新增
threads_lookup_profile 和 threads_get_profile_posts,用于查找公开个人资料
- Threads 提及:新增
threads_get_mentions
- Threads oEmbed:新增
threads_get_oembed,用于嵌入公开帖子
- Threads 对话:新增
threads_get_conversation,用于获取扁平化(嵌套)的回复串
- 修复
threads_search_posts:现在会使用正确的 /keyword_search 端点及正确的 search_mode / search_type 参数(旧版本使用了不存在的端点)
- 扩展帖子/回复字段,新增
is_verified、profile_picture_url、location_id、root_post、replied_to、reply_audience
v2.0.0 新增内容
- Graph API v25.0:从已于 2025 年 9 月过期的 v21.0 升级至当前版本 v25.0
- 修复已弃用的指标:将
impressions、video_views、engagement 替换为 views、reach、saved、shares
- Threads 投票:创建带有交互式投票附件的帖子
- Threads GIF:添加来自 GIPHY 或 Tenor 的 GIF
- Threads 主题标签:使用主题标签对帖子分类
- Threads 链接附件:为文本帖子添加 URL 预览卡片
- Threads 帖子搜索:按关键词或主题标签搜索公开帖子
- Threads 帖子删除:删除帖子(每日限 100 次)
- Threads 发布限额:查看剩余配额
- Threads 引用帖子:按 ID 引用其他帖子
- Threads 剧透标记:将内容标记为剧透
- Threads 替代文本:为所有媒体类型添加无障碍描述
- Threads 新回复控制选项:添加
parent_post_author_only 和 followers_only 选项
- Instagram 替代文本:支持照片、Reel 和轮播项目
- Instagram 协作邀请:查询并回应协作邀请
- 更新洞察指标:新增
clicks、reposts、reels_skip_rate 指标
账号要求
| 平台 | 账号类型 | 备注 |
|---|
| Instagram | 商业账号或创作者账号 | 个人账号无法使用 Graph API。可在 Instagram 设置中免费切换 |
| Threads | 任意账号 | 所有 Threads 账号均可使用 API(自 2025 年 9 月起,不再要求关联 Instagram 账号) |
| Meta(令牌/网络钩子工具) | Meta 开发者应用 | 在 developers.facebook.com 创建 |
安装
需要 Node.js 20 或更高版本,包括 MCP 主机的 npx 环境。
npx(推荐)
{
"mcpServers": {
"meta": {
"command": "npx",
"args": ["-y", "@mikusnuz/meta-mcp"],
"env": {
"INSTAGRAM_ACCESS_TOKEN": "your_ig_token",
"INSTAGRAM_USER_ID": "your_ig_user_id",
"INSTAGRAM_MESSAGING_ACCESS_TOKEN": "your_page_access_token",
"INSTAGRAM_PAGE_ID": "your_linked_page_id",
"THREADS_ACCESS_TOKEN": "your_threads_token",
"THREADS_USER_ID": "your_threads_user_id"
}
}
}
}
手动安装
git clone https://github.com/mikusnuz/meta-mcp.git
cd meta-mcp
npm install
npm run build
{
"mcpServers": {
"meta": {
"command": "node",
"args": ["/path/to/meta-mcp/dist/index.js"],
"env": {
"INSTAGRAM_ACCESS_TOKEN": "your_ig_token",
"INSTAGRAM_USER_ID": "your_ig_user_id",
"INSTAGRAM_MESSAGING_ACCESS_TOKEN": "your_page_access_token",
"INSTAGRAM_PAGE_ID": "your_linked_page_id",
"THREADS_ACCESS_TOKEN": "your_threads_token",
"THREADS_USER_ID": "your_threads_user_id"
}
}
}
}
环境变量
| 变量 | 必需 | 描述 |
|---|
INSTAGRAM_ACCESS_TOKEN | 用于 Instagram | Instagram Graph API 访问令牌 |
INSTAGRAM_USER_ID | 用于 Instagram | Instagram 企业/创作者账户 ID |
INSTAGRAM_MESSAGING_ACCESS_TOKEN | 用于 Instagram 私信 | 使用 Facebook Login 的 Instagram Messaging 页面访问令牌 |
INSTAGRAM_PAGE_ID | 用于 Instagram 私信 | 与 Instagram 专业账户关联的 Facebook 专页 ID |
THREADS_ACCESS_TOKEN | 用于 Threads | Threads API 访问令牌 |
THREADS_USER_ID | 用于 Threads | Threads 用户 ID |
META_APP_ID | 用于令牌/网络钩子工具 | Meta App ID |
META_APP_SECRET | 用于令牌/网络钩子工具 | Meta App Secret |
只需设置你所使用平台对应的变量。例如,如果你只使用 Threads,只需设置 THREADS_ACCESS_TOKEN 和 THREADS_USER_ID。
工具
Meta 平台(6)
| 工具 | 描述 |
|---|
meta_exchange_token | 将短期令牌兑换为长期令牌(约 60 天) |
meta_refresh_token | 延长 Instagram/Facebook 令牌的有效期,或刷新 Threads 令牌(由 platform 选择流程) |
meta_debug_token | 检查令牌的有效性、过期时间和权限范围 |
meta_get_app_info | 获取 Meta App 信息 |
meta_subscribe_webhook | 订阅网络钩子通知 |
meta_get_webhook_subscriptions | 列出当前的网络钩子订阅 |
Instagram — 发布(6)
| 工具 | 描述 |
|---|
ig_publish_photo | 发布照片帖子(支持 alt_text) |
ig_publish_video | 发布视频帖子 |
ig_publish_carousel | 发布轮播/相册(2-10 项,每项支持 alt_text) |
ig_publish_reel | 发布 Reel(支持 alt_text) |
ig_publish_story | 发布 Story(24 小时) |
ig_get_container_status | 检查媒体容器的处理状态 |
Instagram — 媒体(5)
| 工具 | 描述 |
|---|
ig_get_media_list | 列出已发布的媒体 |
ig_get_media | 获取媒体详情 |
ig_delete_media | 删除媒体帖子 |
ig_get_media_insights | 获取媒体分析数据(浏览量、触达人数、保存数、分享数) |
ig_toggle_comments | 启用/停用帖子评论 |
Instagram — 评论(7)
| 工具 | 描述 |
|---|
ig_get_comments | 获取帖子评论 |
ig_get_comment | 获取评论详情 |
ig_post_comment | 发布评论 |
ig_get_replies | 获取评论的回复 |
ig_reply_to_comment | 回复评论 |
ig_hide_comment | 隐藏/取消隐藏评论 |
ig_delete_comment | 删除评论 |
Instagram — 个人资料与分析(5)
| 工具 | 描述 |
|---|
ig_get_profile | 获取账户个人资料信息 |
ig_get_account_insights | 获取账户级分析数据(浏览量、触达人数、关注者数量) |
ig_business_discovery | 查找其他企业账户 |
ig_get_collaboration_invites | 获取待处理的合作邀请 |
ig_respond_collaboration_invite | 接受或拒绝合作邀请 |
Instagram — 话题标签(4)
| 工具 | 描述 |
|---|
ig_search_hashtag | 按名称搜索话题标签 |
ig_get_hashtag | 获取话题标签信息 |
ig_get_hashtag_recent | 获取话题标签的近期媒体 |
ig_get_hashtag_top | 获取话题标签的热门媒体 |
Instagram — 提及与标记(2)
| 工具 | 描述 |
|---|
ig_get_mentioned_comments | 获取提及你的评论 |
ig_get_tagged_media | 获取标记了你的媒体 |
Instagram — 消息(4)
| 工具 | 描述 |
|---|
ig_get_conversations | 列出私信对话 |
ig_get_messages | 获取对话中的消息 |
ig_send_message | 发送私信 |
ig_get_message | 获取消息详情 |
Threads — 发布(7)
| 工具 | 描述 |
|---|
threads_publish_text | 发布文本帖子(投票、GIF、链接附件、话题标签、引用帖子、防剧透标记、幽灵帖子、回复审批、位置标签、与 IG Stories 交叉分享) |
threads_publish_image | 发布图片帖子(替代文本、话题标签、防剧透标记、回复审批、位置标签、与 IG Stories 交叉分享) |
threads_publish_video | 发布视频帖子(替代文本、话题标签、防剧透标记、回复审批、位置标签、与 IG Stories 交叉分享) |
threads_publish_carousel | 发布轮播帖子(2-20 个项目,每项可设置替代文本、回复审批、位置标签、与 IG Stories 交叉分享) |
threads_delete_post | 删除帖子(每天最多 100 条) |
threads_get_container_status | 检查容器处理状态 |
threads_get_publishing_limit | 检查剩余发布配额(每天 250 条帖子) |
Threads — 媒体与搜索(4)
| 工具 | 描述 |
|---|
threads_get_posts | 列出已发布的帖子(包含话题标签、投票、GIF、位置和验证字段) |
threads_get_post | 获取帖子详情 |
threads_get_profile_posts | 按用户名列出公开个人资料的帖子(个人资料发现) |
threads_search_posts | 通过 /keyword_search 按关键词或话题标签搜索公开帖子,并可按媒体类型和作者筛选 |
Threads — 回复(7)
| 工具 | 描述 |
|---|
threads_get_replies | 获取帖子的顶层回复 |
threads_get_conversation | 获取帖子的所有回复(扁平化,包括嵌套回复) |
threads_reply | 回复帖子(支持图片/视频附件) |
threads_hide_reply | 隐藏回复 |
threads_unhide_reply | 取消隐藏回复 |
threads_get_pending_replies | 获取已启用回复审批的帖子中等待审批的回复 |
threads_manage_pending_reply | 批准或忽略待处理的回复 |
Threads — 个人资料与发现(3)
| 工具 | 描述 |
|---|
threads_get_profile | 获取 Threads 个人资料信息(包含 is_verified) |
threads_get_user_threads | 列出用户的帖子 |
threads_lookup_profile | 按用户名查找公开个人资料(个人资料发现) |
Threads — 提及(1)
| 工具 | 描述 |
|---|
threads_get_mentions | 获取用户被 @提及的帖子 |
Threads — 位置(2)
| 工具 | 描述 |
|---|
threads_search_locations | 按查询词或坐标搜索可添加标签的位置 |
threads_get_location | 按 ID 获取位置对象 |
Threads — 工具与资源(1)
| 工具 | 描述 |
|---|
threads_get_oembed | 获取公开帖子的嵌入 HTML/元数据 |
Threads — 数据分析(2)
| 工具 | 描述 |
|---|
threads_get_post_insights | 获取帖子分析数据(浏览量、赞、回复、转发、引用、点击) |
threads_get_user_insights | 获取账号级分析数据(未关联 Instagram 账号的 Threads 个人资料也可使用) |
资源
| 资源 URI | 描述 |
|---|
instagram://profile | Instagram 账号个人资料数据 |
threads://profile | Threads 账号个人资料数据(包含 is_verified) |
提示词
| 提示词 | 描述 |
|---|
content_publish | 将内容交叉发布到 Instagram 和 Threads |
analytics_report | 生成综合分析报告 |
设置指南
第 1 步:创建 Meta 开发者应用
所有平台(Instagram、Threads)都需要 Meta 开发者应用。
- 前往 developers.facebook.com 并登录
- 点击 “My Apps” → “Create App”
- 选择 “Other” → “Business”(个人用途可选“None”)
- 输入应用名称并创建
META_APP_ID 和 META_APP_SECRET 位于 App Settings → Basic。
步骤 2:Instagram 设置
需要 Instagram Business 或 Creator 账号。在 Instagram 应用中免费切换:设置 → 账号类型。
- 在 Meta App 中,前往 “Add Products” → 添加 “Instagram Graph API”
- 前往 “Instagram Graph API” → “Settings”,通过 Facebook Page 连接你的 Instagram Business 账号
- 打开 Graph API Explorer
- 选择你的应用
- 添加权限:
instagram_basic、instagram_content_publish、instagram_manage_comments、instagram_manage_insights、instagram_manage_contents、instagram_manage_messages、pages_show_list、pages_read_engagement、pages_manage_metadata
- 点击 “Generate Access Token” 并授权
- 生成的令牌有效期较短(约 1 小时)。将其换成长期令牌(约 60 天):
GET https://graph.facebook.com/v26.0/oauth/access_token
?grant_type=fb_exchange_token
&client_id=YOUR_APP_ID
&client_secret=YOUR_APP_SECRET
&fb_exchange_token=SHORT_LIVED_TOKEN
或在设置完成后使用 meta_exchange_token 工具。
- 获取你的 Instagram User ID——使用令牌调用:
GET https://graph.facebook.com/v26.0/me/accounts?fields=id,name,access_token&access_token=YOUR_TOKEN
这会返回你的 Facebook Pages。对于每个页面,获取关联的 Instagram 账号:
GET https://graph.facebook.com/v26.0/{page-id}?fields=instagram_business_account&access_token=YOUR_TOKEN
instagram_business_account.id 就是你的 INSTAGRAM_USER_ID(类似 17841400123456789 的数字 ID)。
对于 DM 工具,匹配的 Page 的 id 是 INSTAGRAM_PAGE_ID,其
access_token 是 INSTAGRAM_MESSAGING_ACCESS_TOKEN。请勿用 IG User
ID 或用户令牌代替它们。
步骤 3:Threads 设置
适用于任何 Threads 账号(个人或商业)。自 2025 年 9 月起,不再需要关联 Instagram 账号。
- 在 Meta App 中,前往 “Add Products” → 添加 “Threads API”
- 前往 “Threads API” → “Settings”:
- 在“Roles”下将你的 Threads 账号添加为 Threads Tester
- 在 Threads 应用中接受邀请:Settings → Account → Website permissions → Invites
- 生成授权 URL:
https://threads.net/oauth/authorize
?client_id=YOUR_APP_ID
&redirect_uri=YOUR_REDIRECT_URI
&scope=threads_basic,threads_content_publish,threads_manage_insights,threads_manage_replies,threads_read_replies,threads_keyword_search,threads_manage_mentions,threads_delete,threads_location_tagging,threads_profile_discovery
&response_type=code
- 本地测试时,将
https://localhost/ 用作重定向 URI(在 App Settings → Threads API → Redirect URIs 中配置)
- 授权后,将代码换成访问令牌:
POST https://graph.threads.net/oauth/access_token
Content-Type: application/x-www-form-urlencoded
client_id=YOUR_APP_ID
&client_secret=YOUR_APP_SECRET
&grant_type=authorization_code
&redirect_uri=YOUR_REDIRECT_URI
&code=AUTHORIZATION_CODE
- 将其换成长期令牌(约 60 天):
GET https://graph.threads.net/access_token
?grant_type=th_exchange_token
&client_secret=YOUR_APP_SECRET
&access_token=SHORT_LIVED_TOKEN
- 获取你的 Threads User ID——使用令牌调用:
GET https://graph.threads.net/v1.0/me?fields=id,username&access_token=YOUR_TOKEN
id 字段就是你的 THREADS_USER_ID(类似 1234567890 的数字 ID)。
步骤 4:配置环境变量
仅设置你所用平台对应的变量:
# Instagram (requires Business/Creator account)
INSTAGRAM_ACCESS_TOKEN=EAAxxxxxxx... # Long-lived token from Step 2
INSTAGRAM_USER_ID=17841400123456789 # Numeric ID from Step 2.5
INSTAGRAM_MESSAGING_ACCESS_TOKEN=EAA... # Page token from Step 2.5 (DM tools only)
INSTAGRAM_PAGE_ID=123456789012345 # Linked Facebook Page ID (DM tools only)
# Threads (any account)
THREADS_ACCESS_TOKEN=THQWxxxxxxx... # Long-lived token from Step 3
THREADS_USER_ID=1234567890 # Numeric ID from Step 3.6
# Meta App (for token management & webhooks)
META_APP_ID=123456789012345 # From App Settings → Basic
META_APP_SECRET=abcdef0123456789abcdef # From App Settings → Basic
令牌续期
访问令牌约 60 天后过期。请在过期前刷新:
你可以随时使用 meta_debug_token 检查令牌状态。
已弃用的指标(v22.0+)
以下 Instagram 指标在 Graph API v22.0 中弃用(2025 年 1 月),并于 2025 年 4 月 21 日从所有版本中移除:
| 已弃用的指标 | 替代项 |
|---|
impressions | views |
video_views | views |
plays | views |
clips_replays_count | views |
engagement | saves + shares + likes + comments |
email_contacts | 已移除(无替代项) |
phone_call_clicks | 已移除(无替代项) |
text_message_clicks | 已移除(无替代项) |
get_directions_clicks | 已移除(无替代项) |
website_clicks | 已移除(无替代项) |
profile_views | 已移除(无替代项) |
许可证
MIT