mcpField
P
PlanVortex

PlanVortex

本地服务
planvortex.com社交媒体06 天前更新

关于 PlanVortex

PlanVortex MCP 服务让 AI 助手通过 PlanVortex 管理多个社交平台的发布、评论和私信,也可查询账号指标。AI 计划生成功能需显式开启,且生成结果是草稿。

主要功能

  1. 01创建、更新和重试社交媒体发布
  2. 02查看并回复评论和私信
  3. 03查询发布数据与账号指标
  4. 04上传媒体并查看平台限制
  5. 05生成 AI 计划草稿(需开启)

适用场景

  1. 01安排多个社交平台的帖子
  2. 02整理未读评论并回复消息
  3. 03查看发布表现和账号指标
  4. 04从主题或商品目录生成帖子草稿

MCP 相关

该 MCP 服务向客户端提供发布、评论、消息、媒体、指标和平台目录工具,还提供提示词与资源。可通过 stdio 或 HTTP 模式连接;HTTP 模式需显式启用。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"taliasoftworks-planvortex": {
"command": "npx",
"args": [
"-y",
"planvortex-mcp"
],
"env": {
"PLANVORTEX_CLIENT_ID": "<PLANVORTEX_CLIENT_ID>",
"PLANVORTEX_CLIENT_SECRET": "<PLANVORTEX_CLIENT_SECRET>",
"PLANVORTEX_ORGANIZATION_ID": "<PLANVORTEX_ORGANIZATION_ID>",
"PLANVORTEX_MCP_UPLOAD_DIRS": "<PLANVORTEX_MCP_UPLOAD_DIRS>",
"PLANVORTEX_MCP_READ_ONLY": "<PLANVORTEX_MCP_READ_ONLY>",
"PLANVORTEX_MCP_ALLOW_AI": "<PLANVORTEX_MCP_ALLOW_AI>"
}
}
}
}
启动命令npx -y planvortex-mcp
需要配置的环境变量
PLANVORTEX_CLIENT_IDClient id of a PlanVortex app. Every plan has apps, the free one included. Panel: Settings > Apps.
PLANVORTEX_CLIENT_SECRET密钥Secret of that app.
PLANVORTEX_ORGANIZATION_IDDefault organization id. Optional: saves a discovery call per conversation.
PLANVORTEX_MCP_UPLOAD_DIRSDirectories upload_media may read from. Empty means none.
PLANVORTEX_MCP_READ_ONLYSet to 1 to remove the nine write tools.
PLANVORTEX_MCP_ALLOW_AISet to 1 to add create_ai_plan, which generates a week of posts and spends AI credits.

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

安装包
npmplanvortex-mcp0.13.0

工具

31

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

此工具无需参数。

详细介绍

planvortex-mcp

smithery badge

适用于 PlanVortex 的官方 Model Context Protocol 服务。它可以让 AI 助手——Claude Desktop、Claude Code、Cursor、VS Code——为你在所有社交网络上安排帖子、查看评论收件箱并回复私信:Facebook、Instagram、Threads、LinkedIn、TikTok、X、WhatsApp、YouTube、Google Business、Bluesky、Discord、Telegram、Slack 和 Pinterest。

你需要一个 PlanVortex 应用,每种套餐都包含应用,包括免费套餐。 服务使用 client_id 和 client_secret 进行身份验证;你可以在 PlanVortex 控制面板的 Settings → Apps 下创建它们。套餐之间的区别在于可创建的应用数量:Free 套餐为 1 个,Basic 套餐为 2 个,Pro 套餐为 5 个,Custom 套餐为 10 个。

安装

无需安装:MCP 客户端会通过 npx 启动它。

Claude Desktop、Cursor、VS Code
{
    "mcpServers": {
        "planvortex": {
            "command": "npx",
            "args": ["-y", "planvortex-mcp"],
            "env": {
                "PLANVORTEX_CLIENT_ID": "...",
                "PLANVORTEX_CLIENT_SECRET": "...",
                "PLANVORTEX_ORGANIZATION_ID": "optional, but saves a call per conversation"
            }
        }
    }
}
Claude Code
claude mcp add planvortex \
  --env PLANVORTEX_CLIENT_ID=... \
  --env PLANVORTEX_CLIENT_SECRET=... \
  -- npx -y planvortex-mcp

然后试着提出需求:“这周我安排了哪些内容?还有哪些评论未读?”

功能

共有 31 个工具,按操作对象分组;另有第 32 个工具 create_ai_plan,需要你手动启用(参见使用 AI 生成)。

分组工具
上下文list_organizations、list_accounts、get_plan_use、get_unread_counts
发布list_publications、get_publication、list_destinations、create_publication、update_publication、retry_publication
AI 规划器get_planner_templates、list_store_products、list_ai_plans、get_ai_plan、get_ai_plan_results,以及启用后可用的 create_ai_plan
媒体upload_media
评论list_comments、get_comment_thread、reply_to_comment、hide_comment、mark_comment_read
消息list_conversations、list_messages、send_message
数据get_dashboard_summary、get_publication_stats、get_top_publications、get_account_metrics
目录get_social_limits、get_social_capabilities、create_connect_link

此外还有 3 个提示词——weekly_plan、inbox_triage、publish_from_brief——以及 4 个资源,提供各社交网络的限制、功能、评论矩阵和你的组织信息。

使用 AI 生成内容

PlanVortex 不只是安排你写好的内容:它还能为你撰写一周的内容。它的规划器可以将主题、你自己的照片、文章或已连接商店的商品目录转化为一周的帖子,而 get_planner_templates 会列出五种模板及其各自的费用。对于已连接到 PlanVortex 的商店(WooCommerce 商店),list_store_products 可以查找适合撰写内容的商品。

读取功能始终可用。创建计划则不同,除非你将其启用:

"env": { "PLANVORTEX_MCP_ALLOW_AI": "1" }

这是刻意为之,考虑的是你的费用,而非安全性。生成计划会消耗你账户中的 AI 额度,而反复重试的 Agent 是调用计费端点时最糟糕的情况。协议为此提供的解决方案——在服务内部要求你确认——目前几乎没有客户端实现,因此确认方式就是这一行:由一个人在任何 Agent 启动前写入一次。若未设置这一行,create_ai_plan 根本不会出现在工具列表中,因此没有任何东西可以调用它。

还有两点值得了解。create_ai_plan 不会返回帖子:它会将计划加入队列并返回预算,而生成需要几分钟——请轮询 get_ai_plan。生成的内容都是草稿;是否安排发布仍由人逐条决定,通过 update_publication 完成。

两件它刻意无法做到的事

它绝不会删除任何内容。 没有任何工具可以删除帖子、账户、联系人或评论。这不是可以开启的选项;代码中根本没有这项功能。原因见下文的安全部分。

它无法连接社交账户。 连接 Instagram 需要完成 OAuth 流程,由用户在 Meta 自己的页面上点击“授权”;拥有客户端凭据的应用无法代劳——任何应用都不行。create_connect_link 会返回一个一次性链接,十五分钟后过期;请将链接交给用户并让其打开。

安全性

此服务在你的计算机上运行,进程中包含应用的 client_secret,并会将公众撰写的文本——评论、评价、私信——提供给大模型,而同一个大模型还持有能够以你的品牌名义发布内容的工具。

从设计上说,这就构成了提示词注入攻击面,了解其处理方式很有必要:

  • 每条评论、评价和收到的消息都会包裹在 untrusted_content 块中,并附有明确提示,说明其中的内容是数据,而非指令。这并非万无一失——任何封装都做不到——但能提高攻击门槛。
  • 没有删除功能。 即使注入攻击得逞,最坏的情况也只是出现一条你看得到并能删除的帖子,而不是四千个联系人被删除。
  • 用于发布、发送、覆盖内容、隐藏评论或消耗 AI 额度的工具都标注了 destructiveHint: true,因为这些操作一旦执行就无法撤回;仅用于读取的工具则标注了 readOnlyHint: true。每个工具都会明确携带全部三种提示。
  • 第三方文本绝不会进入工具描述或缓存资源,因为客户端不会将这些内容标记为不可信。
  • 是否由人工确认发布操作,由你的 MCP 客户端决定,而非此服务。工具会声明相应注释,让客户端显示警告;请保留这些注释。

设置 PLANVORTEX_MCP_READ_ONLY=1,即可从列表中完全移除九个写入工具——如果你想让无人监管的 Agent 只能读取而不能做其他操作,这会很有用。

--http 模式

planvortex-mcp --http 通过 HTTP 提供 MCP 服务,用于可自托管的部署。进程会持有你的 client_secret,因此任何能访问该端口的对象,都可以通过普通的 curl 向你的账户发布内容。因此:

  • 默认绑定到 127.0.0.1;
  • 绑定到其他地址必须设置 PLANVORTEX_MCP_AUTH_TOKEN,否则服务会拒绝启动;
  • 每个请求都会验证 Origin 标头(防止 DNS 重绑定);
  • TLS 由你的反向代理负责——请在前面部署一个反向代理;
  • 请求中的令牌绝不会转发给 PlanVortex。它只用于验证对此进程的访问,到此为止。
docker run --rm -p 127.0.0.1:3000:3000 \
  -e PLANVORTEX_CLIENT_ID=... -e PLANVORTEX_CLIENT_SECRET=... \
  -e PLANVORTEX_MCP_AUTH_TOKEN=$(openssl rand -hex 32) \
  planvortex-mcp --http --host 0.0.0.0

这里的标志不是可选项:镜像默认使用 stdio 通信,因为 MCP 客户端启动时就是这样运行的(docker run -i planvortex-mcp),服务目录也会以这种方式检查它。--http 是部署模式,需要由你明确指定。

--hosted 模式

--hosted 是 PlanVortex 自行运行的多用户模式,用户可以通过登录,将 PlanVortex 账户连接到助手,无需应用凭据。自托管不需要此模式:那是 --http。它不会持有任何应用的 client_secret,并且如果发现以下任一配置,便会拒绝启动:默认组织、PLANVORTEX_MCP_ALLOW_AI、PLANVORTEX_MCP_AUTH_TOKEN 或 PLANVORTEX_MCP_UPLOAD_DIRS,因为在共享服务上,这些配置会应用于所有人。

每个请求都必须携带由 PlanVortex 的 Keycloak 为此服务(其 aud)以及该服务接受的某个助手客户端(其 azp)签发的 OAuth 访问令牌。服务会验证该令牌,并将其交换为自己的令牌(RFC 8693);只有交换后的令牌会传递给 API,因此助手保存的令牌本身无法访问 PlanVortex API。没有有效令牌的请求会收到 401 响应,其 WWW-Authenticate 会指向 /.well-known/oauth-protected-resource。作用域包括 planvortex:read(必需)和 planvortex:write:缺少后者时,不会列出写入工具。此模式不支持创建 AI 计划,也不支持 create_connect_link:连接链接只能签发给应用,因此用户需要在 PlanVortex 面板中连接社交账户,服务会将此情况告知模型。

服务在请求之间保留的所有内容(交换后的令牌、组织列表、重复操作防护和速率限制)都按人员分别保存,以令牌的 sub 为键。运行 planvortex-mcp --help 查看其环境变量。

每个通过身份验证的请求结束时,都会记录一行日志:sub、助手客户端、方法、工具、请求的结束方式(如果 API 拒绝,会记录 PlanVortex 错误代码)、HTTP 状态和耗时。工具调用以 info 级别记录,其余内容以 debug 级别记录,日志行中不会包含令牌、参数或结果。

环境变量

变量必填作用
PLANVORTEX_CLIENT_ID是你账户中的应用。每个计划都有应用。
PLANVORTEX_CLIENT_SECRET是应用的密钥。绝不会作为工具参数传递。
PLANVORTEX_ORGANIZATION_ID否默认组织。每次对话可省去一次发现调用。
PLANVORTEX_BASE_URL否指向其他 PlanVortex 部署。
PLANVORTEX_MCP_UPLOAD_DIRS否upload_media 可读取的目录。留空表示没有目录。
PLANVORTEX_MCP_AUTH_TOKEN使用 --http 且非本地回环时HTTP 端点要求的 Bearer 令牌。
PLANVORTEX_MCP_READ_ONLY否1 会移除九个写入工具。
PLANVORTEX_MCP_ALLOW_AI否1 会添加 create_ai_plan,该工具会消耗 AI 点数。
PLANVORTEX_MCP_LOG_LEVEL否debug、info、warn、error、silent。始终输出到 stderr。
上传媒体

使用 stdio 时,服务运行在你的机器上,因此 upload_media 接受本地绝对路径——但路径必须位于 PLANVORTEX_MCP_UPLOAD_DIRS 中,该变量默认为空。将其设置为你确实希望允许访问的文件夹:

PLANVORTEX_MCP_UPLOAD_DIRS=/Users/you/Pictures,/Users/you/Downloads

读取任意路径正是被注入的提示词可能要求做的事,因此无法禁用允许列表。使用 --http 模式时会直接拒绝本地路径:该路径指向的是服务所在机器,而不是你的机器。请改为传入公开的 https URL。

使用哪个组织?

PlanVortex 中几乎所有内容都隶属于某个组织。服务会按以下三个步骤解析组织:模型传入的 id_organization 参数、PLANVORTEX_ORGANIZATION_ID,最后——仅当你的应用只关联一个组织时——使用该组织。如果应用关联了多个组织,且未指定组织,工具会返回组织名称和 ID 列表,供模型据此重试,而不是只返回一个错误。

开发

npm install
npm test          # layers 1 and 2: no network, no credentials
npm run build
npm run inspector # MCP Inspector against the built server

基于官方 Node 客户端 planvortex 构建。此服务本身不使用 HTTP 通信:每次调用都通过该库完成,错误目录、令牌缓存、分段上传和分页功能也都由该库提供。

指南

planvortex.com 上的详细文章:

链接

MIT © Talia Softworks

评论

支持 Markdown

第一次接触 MCP?

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

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