关于 seenpaid
seenpaid 是面向单一运营者的可自托管社交发布服务,提供 25 个平台适配器、排队重试和 REST API。其 MCP 服务支持 Agent 安排和管理帖子;该仓库不含收入归因功能。
主要功能
- 0125 个平台适配器
- 02跨平台发布队列与失败重试
- 03REST API 与 16 个 MCP 工具
- 04帖子安排、编辑和取消
- 05媒体库与账户健康检查
- 06单一运营者 API 密钥认证
适用场景
- 01安排帖子并分发到多个社交平台
- 02批量安排一周的社交内容
- 03检查平台账户状态并验证帖子
MCP 相关
MCP 服务通过 POST /mcp 向 Agent 提供 16 个工具,用于帖子安排、编辑、媒体管理和账户健康检查。请求需携带 Bearer API_KEY。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
seenpaid
问问你的 AI Agent:你的哪些帖子赚了钱。
这个问题由 seenpaid.com 解答——这是一款托管云产品,可以将 Stripe 销售额对应到促成这些销售的具体帖子。这个仓库不是这款产品。这个仓库是其底层的开源发布层:一项可自托管的服务,提供 25 个平台适配器,可对投递进行排队和重试,并通过 MCP(模型上下文协议)向 AI Agent 提供服务,让 Agent 能代你安排帖子发布。你可以让 Agent 连接自己的实例;如果还想了解收入情况,也可以让它连接 seenpaid.com——MCP 接口形式相同,功能深度不同。
这是什么
- 一个由 BullMQ 支持的发布流程:只需安排一次帖子,就会将其分发到每个已连接的平台,并作为独立任务进行重试。
- 通过统一接口提供 25 个平台适配器——根据各平台实际采用的方式,支持 OAuth、webhook、API 密钥和自行粘贴凭据等流程。(托管产品 seenpaid.com 宣传支持 21 个平台:也就是客户无需注册自己的开发者应用即可连接的平台。自托管时,你需要自备凭据,因此可以使用全部 25 个。两个数字都属实,但不能混为一谈。)
- 提供 REST API 和一个包含 16 个工具的 MCP 服务,涵盖排期、编辑、媒体和账号健康状况——脚本和 AI Agent 都可以通过相同方式驱动它。
- 专为单个操作者设计:一个 API 密钥,没有登录界面,也没有多租户概念。部署它,设置密钥,然后使用即可。
这不是什么
- 不提供收入归因。 此仓库不会追踪点击、匹配销售额,也不会告诉你哪篇帖子带来了收入。这是托管产品 seenpaid.com 的核心功能,有意不包含在此仓库中。
- 不支持多用户账号、团队或角色。 一个实例,一个操作者。如果你需要这些功能,应该选择云产品。
- 不提供计费、套餐或使用限额。 没有什么需要计量——这是你自行运行的软件,不是订阅服务。
如果你真正想知道的是“哪篇帖子赚了钱”,单靠此仓库无法回答——请将实例中的数据连接到 seenpaid.com,或者在投入时间自托管之前,先阅读 SELF_HOST.md,了解实际的利弊。
快速开始
git clone <this-repo>
cd seenpaid
cp .env.example .env
# fill in API_KEY and TOKEN_ENCRYPTION_KEY (openssl rand -hex 32 for each)
docker compose up -d
docker compose exec api npm run db:migrate
API 现在正在 http://localhost:3001 上监听。完整操作指南(包括连接平台和 Agent)请参阅 SELF_HOST.md。
16 个 MCP 工具
让支持 MCP 的 Agent 连接到 POST /mcp(Bearer API_KEY),即可使用:
| 工具 | 功能 |
|---|---|
list_accounts | 已连接的账号 — 平台、账号名、ID、状态 |
list_posts | 帖子及其状态、计划发布时间、目标平台和发布错误 |
get_post | 获取单篇帖子的完整信息 |
schedule_post | 计划发布或立即发布到一个、多个或所有平台 |
bulk_schedule | 一次调用安排一周的帖子;一篇失败不会影响其余帖子 |
update_post | 编辑草稿或已计划帖子的文案或时间 |
cancel_post | 在帖子发出前取消;已发布的目标平台不受影响 |
delete_post | 永久删除 — 建议优先使用 cancel_post |
list_media | 媒体库,按最新顺序排列 |
add_media_from_url | 从公开 URL 获取图片或视频 |
generate_image | 通过文本提示词生成图片,无需密钥,并保存到媒体库 |
get_account_health | 查看哪些账号仍可正常使用 — 大批量操作前请先检查 |
get_connect_url | 供用户打开以连接账号的链接(OAuth 需要用户操作) |
disconnect_account | 断开账号连接 |
get_platform_requirements | 文案限制、是否必须提供媒体,以及各平台的注意事项 |
validate_post | 在不发布的情况下,试运行文案在各平台的校验结果 |
以上就是全部功能。这里没有 get_analytics、get_top_posts 或任何与收入相关的功能 — 这些功能只在托管版 seenpaid.com MCP 服务中提供,因为要回答这类问题,需要本仓库未包含的闭源归因引擎。
可在 mcp-connector/README.md 查看可直接复制粘贴的客户端配置。
支持的平台
| 平台 | 连接方式 |
|---|---|
| X (Twitter) | 使用你自己的 OAuth 1.0a 应用密钥 |
| Bluesky | 应用密码 |
| OAuth | |
| OAuth (Meta) | |
| OAuth (Meta) | |
| TikTok | OAuth |
| Discord | Webhook URL |
| Telegram | Bot 令牌 + 频道 |
| Mastodon | OAuth |
| Nostr | 私钥 (nsec/hex) |
| Dev.to | API 密钥 |
| Hashnode | 个人访问令牌 |
| Medium | Integration 令牌 |
| OAuth | |
| Threads | OAuth |
| Tumblr | OAuth |
| OAuth | |
| VK | OAuth |
| Slack | Incoming webhook URL |
| WordPress | 应用程序密码 |
| Ghost | Admin API 密钥 |
| Lemmy | 实例登录信息 |
| Generic webhook | URL + 可选的签名密钥 |
| Micro.blog | App 令牌 |
| Matrix | Homeserver + 访问令牌 + 房间 |
每个适配器都位于 src/platforms/。只有配置了凭据的平台才能使用 — 其他平台都会明确报错并正常失败,不会阻塞应用的其余部分。各平台完整的环境变量列表见 SELF_HOST.md。
架构
src/
platforms/ 25 adapters + registry — one publish()/OAuth interface
domain/features/
posts/ Create/list/cancel a post; fans out to per-platform jobs
accounts/ Connect/list/disconnect a platform account
media/ Presigned upload, URL ingestion, optional free AI image generation
jobs/ BullMQ queue + worker: the actual publish pipeline
entry-points/
api/ REST API (Express)
mcp/ The 16-tool MCP server
auth/ Single-operator API-key auth (see below)
data-access/ Drizzle ORM schema, repositories, migrations
身份验证模型
本项目有意不采用 SaaS 产品所需的多租户 JWT/RBAC 系统。自托管意味着你是唯一用户,因此这里的身份验证只需一个共享密钥:在 .env 中设置 API_KEY,并在每个请求中通过 Authorization: Bearer <key>(或 X-Api-Key: <key>)发送。无需注册、登录界面、会话或密码哈希。这与大多数由单个运营者管理的自托管工具的身份验证方式一致 — 一个密钥,每个请求都进行校验,无需考虑更多事项。
如果你需要在一个实例上支持多名用户或基于角色的访问权限(例如,代理机构为多个客户运行此服务),这是有意缩减的范围 — 如何提出相关建议,请参见 CONTRIBUTING.md。
许可证
核心部分(除 mcp-connector/ 外的所有内容)采用 AGPL-3.0 许可 — 详见 LICENSE。简而言之:你可以自由地自托管、修改和再分发,但如果你将修改后的版本作为网络服务提供给他人,就必须同时向他们提供修改后的源代码。此许可证旨在防止项目被克隆为闭源竞争服务,却不将修改回馈到上游。
mcp-connector/(仅包含用于连接 Agent 的客户端配置)采用 MIT 许可 — 详见 mcp-connector/LICENSE — 因此可以自由复制到 Agent 目录和其他工具中,无需担心许可证限制。
贡献
提交 PR 前请先阅读 CONTRIBUTING.md,其中说明了范围和响应时间方面的预期。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。