mcpField
M
meta

meta

本地服务
github.com/mikusnuz社交媒体301 周前更新

关于 meta

meta 是面向 Instagram、Threads 和 Meta 平台管理的 MCP 服务,供 AI 助手通过 Graph API 发布内容、查看数据并管理互动。它集成跨平台发布提示词及账户分析、令牌和 webhook 工具。

主要功能

  1. 01发布 Instagram 照片、视频、Reels 和 Stories
  2. 02发布带投票、GIF 和链接的 Threads 内容
  3. 03管理评论、回复和 Instagram 私信
  4. 04查询账户及内容分析数据
  5. 05管理令牌和 webhook
  6. 06提供跨平台发布与分析提示词

适用场景

  1. 01将内容同时发布到 Instagram 和 Threads
  2. 02查询粉丝数、互动量和内容表现
  3. 03回复帖子评论并处理私信
  4. 04检查或刷新 Meta 平台令牌

MCP 相关

该项目提供 MCP 服务,向 MCP 客户端暴露 Instagram、Threads 和 Meta 平台的工具、资源及提示词。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mikusnuz-meta": {
"command": "npx",
"args": [
"-y",
"@mikusnuz/meta-mcp"
],
"env": {
"INSTAGRAM_ACCESS_TOKEN": "<INSTAGRAM_ACCESS_TOKEN>",
"INSTAGRAM_USER_ID": "<INSTAGRAM_USER_ID>",
"INSTAGRAM_MESSAGING_ACCESS_TOKEN": "<INSTAGRAM_MESSAGING_ACCESS_TOKEN>",
"INSTAGRAM_PAGE_ID": "<INSTAGRAM_PAGE_ID>",
"THREADS_ACCESS_TOKEN": "<THREADS_ACCESS_TOKEN>",
"THREADS_USER_ID": "<THREADS_USER_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_APP_SECRET": "<META_APP_SECRET>"
}
}
}
}
启动命令npx -y @mikusnuz/meta-mcp
需要配置的环境变量
INSTAGRAM_ACCESS_TOKEN密钥Instagram Graph API access token
INSTAGRAM_USER_IDInstagram Business/Creator account ID
INSTAGRAM_MESSAGING_ACCESS_TOKEN密钥Page access token for Instagram Messaging with Facebook Login
INSTAGRAM_PAGE_IDFacebook Page ID linked to the Instagram account for messaging
THREADS_ACCESS_TOKEN密钥Threads API access token
THREADS_USER_IDThreads user ID
META_APP_IDMeta App ID for token/webhook tools
META_APP_SECRET密钥Meta App Secret for token/webhook tools

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@mikusnuz/meta-mcp2.2.2

工具

66

收录的工具列表 · 更新于 1 周前

参数类型必填说明
short_lived_tokenstring是用于交换的短期访问令牌

详细介绍

English | 한국어

meta-mcp

npm version License: MIT MCP Badge

全面覆盖 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用于 InstagramInstagram Graph API 访问令牌
INSTAGRAM_USER_ID用于 InstagramInstagram 企业/创作者账户 ID
INSTAGRAM_MESSAGING_ACCESS_TOKEN用于 Instagram 私信使用 Facebook Login 的 Instagram Messaging 页面访问令牌
INSTAGRAM_PAGE_ID用于 Instagram 私信与 Instagram 专业账户关联的 Facebook 专页 ID
THREADS_ACCESS_TOKEN用于 ThreadsThreads API 访问令牌
THREADS_USER_ID用于 ThreadsThreads 用户 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://profileInstagram 账号个人资料数据
threads://profileThreads 账号个人资料数据(包含 is_verified)

提示词

提示词描述
content_publish将内容交叉发布到 Instagram 和 Threads
analytics_report生成综合分析报告

设置指南

第 1 步:创建 Meta 开发者应用

所有平台(Instagram、Threads)都需要 Meta 开发者应用。

  1. 前往 developers.facebook.com 并登录
  2. 点击 “My Apps” → “Create App”
  3. 选择 “Other” → “Business”(个人用途可选“None”)
  4. 输入应用名称并创建

META_APP_ID 和 META_APP_SECRET 位于 App Settings → Basic。

步骤 2:Instagram 设置

需要 Instagram Business 或 Creator 账号。在 Instagram 应用中免费切换:设置 → 账号类型。

  1. 在 Meta App 中,前往 “Add Products” → 添加 “Instagram Graph API”
  2. 前往 “Instagram Graph API” → “Settings”,通过 Facebook Page 连接你的 Instagram Business 账号
  3. 打开 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” 并授权
  4. 生成的令牌有效期较短(约 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 工具。
  5. 获取你的 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 账号。

  1. 在 Meta App 中,前往 “Add Products” → 添加 “Threads API”
  2. 前往 “Threads API” → “Settings”:
    • 在“Roles”下将你的 Threads 账号添加为 Threads Tester
    • 在 Threads 应用中接受邀请:Settings → Account → Website permissions → Invites
  3. 生成授权 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 中配置)
  4. 授权后,将代码换成访问令牌:
    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
    
  5. 将其换成长期令牌(约 60 天):
    GET https://graph.threads.net/access_token
      ?grant_type=th_exchange_token
      &client_secret=YOUR_APP_SECRET
      &access_token=SHORT_LIVED_TOKEN
    
  6. 获取你的 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 天后过期。请在过期前刷新:

  • Instagram:使用 meta_refresh_token,并设置 platform=instagram(需要 META_APP_ID 和 META_APP_SECRET)
  • Threads:使用 meta_refresh_token,并设置 platform=threads,或调用:
    GET https://graph.threads.net/refresh_access_token
      ?grant_type=th_refresh_token
      &access_token=CURRENT_LONG_LIVED_TOKEN
    

你可以随时使用 meta_debug_token 检查令牌状态。

已弃用的指标(v22.0+)

以下 Instagram 指标在 Graph API v22.0 中弃用(2025 年 1 月),并于 2025 年 4 月 21 日从所有版本中移除:

已弃用的指标替代项
impressionsviews
video_viewsviews
playsviews
clips_replays_countviews
engagementsaves + shares + likes + comments
email_contacts已移除(无替代项)
phone_call_clicks已移除(无替代项)
text_message_clicks已移除(无替代项)
get_directions_clicks已移除(无替代项)
website_clicks已移除(无替代项)
profile_views已移除(无替代项)

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。