关于 Postfast
Postfast 是供 AI 客户端管理社交媒体发布和评论的 MCP 服务,支持 11 个平台。可通过托管 OAuth 端点连接,也可使用 API 密钥在本地运行。
主要功能
- 01安排和管理帖子
- 02发布到 11 个社交平台
- 03上传媒体和文档
- 04查看帖子分析与粉丝历史
- 05管理评论收件箱和回复
适用场景
- 01为多个社交账号安排帖子
- 02查看帖子表现和粉丝变化
- 03检查并回复帖子评论
MCP 相关
向 MCP 客户端提供 PostFast 账号、发布、媒体、分析和社交收件箱操作工具。可通过托管 OAuth 端点使用,也可在本地以 API 密钥运行。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
13收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| from | string | 否 | 开始日期筛选条件(ISO 8601,例如 2025-01-01T00:00:00.000Z) |
| ids | array | 否 | 仅获取这些帖子 ID(限定当前工作区;最多 100 个) |
| limit | integer | 否 | 每页帖子数(最多 50 条) |
| page | integer | 否 | 页码(从 0 开始) |
| platforms | array | 否 | 按平台筛选 |
| statuses | array | 否 | 按帖子状态筛选 |
| to | string | 否 | 结束日期筛选条件(ISO 8601,例如 2025-01-31T23:59:59.999Z) |
详细介绍
PostFast MCP 服务
用于 PostFast API 的 MCP 服务 — 通过 Claude、Cursor、VS Code 等 AI 工具安排和管理社交媒体帖子。
托管连接器(无需安装)
不想在本地运行任何程序?连接到托管端点并通过 OAuth 验证身份 — 无需使用 npx,也无需管理 API 密钥:
https://mcp.postfa.st/mcp
在任何支持 OAuth 的客户端(例如 ChatGPT、Claude)中,将其添加为远程/可流式传输 HTTP MCP 服务。首次使用时,系统会提示你登录 PostFast 并授权访问。
想自行运行服务?请使用下方 快速开始 中的 npx + API 密钥设置。
快速开始
1. 获取 API 密钥
登录 PostFast,前往侧边栏中的 API,然后生成密钥。
2. 安装
选择你偏好的方法:
Claude Desktop(推荐)
从 Claude Desktop 扩展目录下载扩展,或手动安装:
- 添加到
claude_desktop_config.json:
{
"mcpServers": {
"postfast": {
"command": "npx",
"args": ["-y", "postfast-mcp"],
"env": {
"POSTFAST_API_KEY": "your-api-key-here"
}
}
}
}
- 重启 Claude Desktop。
Claude Code
通过插件安装:
如果你之前手动添加了 PostFast,请在安装插件前移除该配置项,否则 Claude Code 会显示两组 PostFast 工具。
/plugin marketplace add peturgeorgievv-factory/postfast-mcp
/plugin install postfast@postfast-mcp
安装后,设置 API 密钥 — 选择以下任一方式:
# Option A: Add to your shell profile (~/.zshrc or ~/.bashrc)
export POSTFAST_API_KEY="your-api-key-here"
# Option B: Add to ~/.claude/settings.json
# { "env": { "POSTFAST_API_KEY": "your-api-key-here" } }
然后重启 Claude Code。
通过手动配置:
添加到项目的 .mcp.json:
{
"mcpServers": {
"postfast": {
"type": "stdio",
"command": "npx",
"args": ["-y", "postfast-mcp"],
"env": {
"POSTFAST_API_KEY": "your-api-key-here"
}
}
}
}
或者为每个项目添加配置:
claude mcp add --scope user postfast --env POSTFAST_API_KEY=your-api-key-here -- npx -y postfast-mcp
Cursor
此仓库也是一个 Cursor 插件:其中包含 PostFast MCP 服务及其两个技能,分别用于安排帖子和管理评论收件箱。
要安装,请在 Cursor 中打开 自定义,在市场中搜索 PostFast,选择 安装,并在 Cursor 提示时粘贴你的 API 密钥。Cursor 会使用该密钥启动服务,因此无需进行其他配置。如果 PostFast 尚未出现在市场中,请使用下方配置手动添加服务。
Cursor / VS Code / Windsurf / 其他 MCP 客户端
添加到你的 MCP 配置(.mcp.json、mcp.json 或工具的设置界面):
{
"mcpServers": {
"postfast": {
"type": "stdio",
"command": "npx",
"args": ["-y", "postfast-mcp"],
"env": {
"POSTFAST_API_KEY": "your-api-key-here"
}
}
}
}
3. 使用
向你的 AI 助手提出类似以下请求:
- “列出我已连接的社交账号”
- “安排明天上午 9 点在 Instagram 发布帖子”
- “显示本周所有已安排的帖子”
- “上传这张图片,并据此创建一篇 LinkedIn 帖子”
- “用这段视频创建一个 Facebook 短视频”
- “显示我本月 Instagram 帖子的分析数据”
可用工具
| 工具 | 描述 |
|---|---|
list_accounts | 列出已连接的社交媒体账号(每个账号包含 connectionStatus — CONNECTED/DISABLED —、disabledReason、followerCount/followerCountUpdatedAt 和 inboxCapable) |
list_posts | 按筛选条件列出帖子(特定 ID、账号、平台、状态、日期范围);每个帖子都在 controls 中包含关键设置(Threads 主题、Instagram/Facebook 格式、TikTok 草稿标记、YouTube 隐私设置) |
create_posts | 创建帖子并安排发布时间(批量创建,最多 15 条) |
delete_post | 按 ID 从 PostFast 删除帖子(不会从平台删除已发布的帖子) |
delete_posts | 一次调用即可从 PostFast 删除最多 100 条帖子;返回 deletedIds 和 notFoundIds(不会从平台删除已发布的帖子) |
upload_media | 上传本地文件并获取媒体键(处理完整流程) |
get_upload_urls | 获取用于上传媒体文件的签名 URL |
list_pinterest_boards | 获取账号的 Pinterest 画板 |
list_youtube_playlists | 获取账号的 YouTube 播放列表 |
list_gbp_locations | 获取账号的 Google Business Profile 地点 |
search_places | 查找可在帖子中标记的地点(id 可同时用于 facebookPlaceId 和 instagramLocationId) |
generate_connect_link | 生成供客户端连接账号的链接 — 可限定特定平台,并可设置用户返回的 redirectUrl(携带 status、platform、accountId 和你自己的 externalId;完成 Facebook 或 LinkedIn 主页步骤后还会携带 accountIds) |
get_post_analytics | 获取已发布帖子的表现指标 — Instagram、Facebook、TikTok、Threads、YouTube、LinkedIn(公司主页)、Pinterest(商业账号) |
get_follower_history | 获取账号的每日粉丝数历史记录(当前数量 + 指定日期范围内的 delta)— Facebook Pages、Instagram、YouTube、Pinterest、Threads、Bluesky、Telegram、LinkedIn(公司主页)、TikTok |
list_tiktok_sounds | 获取 TikTok 账号的热门预先审核商业音乐库曲目(通过 controls.tiktokMusicSoundId 附加) |
社交收件箱(评论)
在一个收件箱中查看你帖子下的评论 — TikTok、Instagram、Facebook Pages 和 Threads(账号的 inboxCapable 标记会说明当前支持的功能)。仅支持评论(不支持私信),从连接时开始收集(不回填历史记录)。系统始终会针对每段对话计算回复能力(canReply、maxReplyLength、windowState、disabledReason)— 请根据这些字段进行呈现,不要依赖对平台的假设。
| 工具 | 描述 |
|---|---|
list_inbox_conversations | 列出评论对话(筛选条件:平台、账号、状态、仅未读、受指派人) |
get_inbox_conversation | 获取一段对话及其回复能力字段 |
list_inbox_items | 列出对话中的评论和回复(包含 state,Instagram 还包含 canPrivateReply) |
get_inbox_unread_count | 获取整个工作区的未读评论总数 |
reply_to_inbox_item | 在特定评论下公开回复 |
send_inbox_private_reply | 仅限 Instagram:在 7 天内对每条评论发送一条私密回复 |
set_inbox_item_state | 在平台上隐藏 / 取消隐藏 / 删除评论(删除后无法撤销) |
mark_inbox_conversation_read | 将对话的未读数清零 |
set_inbox_conversation_status | 整理:OPEN / SNOOZED / CLOSED |
assign_inbox_conversation | 将对话指派给工作区成员(或取消指派) |
支持的平台
Facebook、Instagram、X (Twitter)、TikTok、LinkedIn、YouTube、BlueSky、Threads、Pinterest、Telegram、Google Business Profile
平台专属设置
创建帖子时,可以通过 controls 参数传入平台专属设置:
| 平台 | 控制项 |
|---|---|
| X (Twitter) | xRetweetUrl |
instagramPublishType(TIMELINE/STORY/REEL)、instagramTrialReelStrategy(MANUAL/SS_PERFORMANCE — 向非关注者展示的试播 Reel;仅适用于 Reels,不支持协作者)、instagramPostToGrid、instagramCollaborators、instagramLocationId/instagramLocationName(通过 search_places 获取地理标记)、instagramIsAiGenerated(添加“AI 信息”标签;仅可在创建时设置) | |
facebookContentType(POST/REEL/STORY)、facebookAllowComments、facebookPrivacy、facebookCarouselMainLink、facebookCarouselShowEndCard、facebookReelsCollaborators、facebookTargetCountries(ISO alpha-2,最多 25 个)、facebookPlaceId/facebookPlaceName(通过 search_places 获取地理标记) | |
| TikTok | tiktokTitle(图片帖子,最多 90 个字符)、tiktokMusicSoundId/tiktokMusicSoundName(来自 list_tiktok_sounds 的商业音乐库音频;适用于图片、轮播图和视频帖子 — 在视频中,该音频以 50% 音量播放,原始音频音量为 50%;与 tiktokAutoAddMusic 互斥)、tiktokIsDraft、tiktokAllowComments、tiktokAllowDuet、tiktokAllowStitch、tiktokBrandOrganic、tiktokBrandContent、tiktokAutoAddMusic(图片/轮播图帖子)、tiktokIsAigc、tiktokPrivacy(已弃用 — 使用账号默认设置) |
| YouTube | youtubeTitle、youtubePrivacy(PUBLIC/PRIVATE/UNLISTED)、youtubeTags、youtubeCategoryId、youtubeIsShort、youtubeMadeForKids、youtubeContainsSyntheticMedia(对经过修改/合成的内容进行披露;仅可在创建时设置)、youtubePlaylistId、youtubeThumbnailKey、youtubeLanguage(BCP-47 代码,例如 en-GB 或 pt-BR;设置视频语言以及标题和描述的语言)、youtubeCaptionKey(已上传的 .srt/.vtt 文件,将作为视频字幕轨道添加到 youtubeLanguage 所指定的语言中;此项为必填) |
pinterestBoardId(必填)、pinterestLink | |
linkedinAttachmentKey(已上传的 PDF、Word 或 PowerPoint 文件,最大 60MB;会在帖子中显示为可滑动浏览的页面;不能与同一帖子中的图片或视频同时使用)、linkedinAttachmentTitle(文档标题;省略时默认为 "Document") | |
| Threads | threadsTopicTag(帖子的主题:只能有一个主题,不能是列表;1-50 个字符,不能包含 . 或 &;优先级高于内容中的 #hashtag,后者会保留为纯文本。与所有控制项一样,该设置会应用于本次调用中的每个帖子,因此不同主题请分开调用) |
| Google Business Profile | gbpLocationId(必填)、gbpTopicType(STANDARD/EVENT/OFFER)、gbpCallToActionType、gbpCallToActionUrl、gbpEventTitle、gbpEventStartDate、gbpEventEndDate、gbpOfferCouponCode、gbpOfferRedeemUrl、gbpOfferTerms |
媒体上传
upload_media 工具通过一次调用处理完整流程:
- 根据文件扩展名检测内容类型
- 从 PostFast 获取已签名的上传 URL
- 上传文件
- 返回可用于
create_posts的key和type
支持的格式:JPEG、PNG、GIF、WebP、MP4、WebM、MOV,以及适用于 YouTube 的 SRT 和 VTT 字幕文件,还有适用于 LinkedIn 的 PDF、DOC、DOCX、PPT 和 PPTX 文档。字幕文件返回的类型为 CAPTION:将其 key 作为 controls.youtubeCaptionKey 传入,切勿放入 mediaItems。文档返回的类型为 DOCUMENT:将其 key 作为 controls.linkedinAttachmentKey 传入,切勿放入 mediaItems。
如果需要更灵活地控制上传流程,也可以直接使用 get_upload_urls。
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
POSTFAST_API_KEY | 是 | 工作区 API 密钥 |
POSTFAST_API_URL | 否 | API 基础 URL(默认值:https://api.postfa.st) |
测试
使用 MCP Inspector 验证一切运行正常:
POSTFAST_API_KEY=your-key npx @modelcontextprotocol/inspector npx postfast-mcp
API 文档
完整的 REST API 文档:postfa.st/docs
开发
npm install
npm run build
node dist/stdio/index.js
工具只需在 src/core 中编写一次(目录包含架构、描述、注释和各绑定的可用性),即可作为 postfast-mcp/core 提供给使用者;src/stdio 将目录绑定到公开 REST API。
发布:PR 添加 .changeset/*.md;npm run version 会将其合并到版本升级和变更日志中,推送 vX.Y.Z 标签后,CI 会发布 npm、MCP Registry 和 MCPB 版本(使用 OIDC——无需任何令牌)。
徽章
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。