mkt
Registered as a reserve 'mobile-appium' transport channel in the channel registry, available as a fallback channel for mobile app automation.
Email channel backed by Gmail: read-only CDP scanning of the Gmail inbox and bounce detection, plus SMTP queue sending using Gmail App Password credentials supplied only via environment variables (MKT_EMAIL_USER / MKT_EMAIL_APP_PASSWORD).
Provides an OS-input transport that simulates macOS keyboard/mouse and accessibility (AX) actions, acting as a fallback channel for automation (listed as UNVERIFIED).
Provides Reddit channel tools over browser-CDP: read-only search, replying to posts through the write pipeline (gates, throttling, read-back verification, screenshots, dry-run stop point), and publishing new subreddit posts capped at 3 per day. Marked UNVERIFIED — selectors have not been tested on a real run yet.
Registered as a reserve 'rss-public' transport channel in the channel registry, providing read-only public RSS consumption as a fallback channel.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mktcheck operational status and channel health for X and Gmail"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
marketing-ops-automation
多平台全链路的自动化营销运营工具:目标驱动(业务目标→plan→客群→波次→执行→复盘)、多渠道(X / Email / Reddit / LinkedIn,可扩展)、多通道(API / browser-CDP / OS 键鼠模拟 / SMTP 等四类十种,含降级储备)、零凭据优先。 统一六原语(publish / reply / message / engage / search / inbox)、统一写路径事务管道(门禁→节流→回读校验→截图→dry-run 停点→发送→确认→账本)、统一账本。 三种外壳共用本内核:CLI(mkt.py)/MCP(mcp_server.py)/Skill(skills/marketing-ops)。
定位一句话:agent 当参谋(出方案,产出可校验的数据工件)、内核当执行(守门禁,上限是内核属性)、人当闸门(未经人审的计划拒跑)。 配套的调研与设计文档(现状盘点/架构/渠道风控调研等)存于本地工作区,不随本仓库分发;仓库内
data/schemas.md自含全部数据契约。
合规与纪律(先读这个)
仅用于本人拥有/运营的账号;不碰他人账号、不做代运营自动化
CDP 通道零凭据:不保存任何密码/token/Cookie;SMTP 凭据只走环境变量
一切写操作默认 dry-run,
--go才实跑失败即停(不重试轰炸);回读校验不一致绝不发送(449 空正文事故的固化)
人类节奏:随机间隔 + 单次硬上限 + 日预算(core/throttle.py 的表)
不群发:千人千面内容为前提;占位符残留会被门禁直接拒绝
不做对抗:不绕验证码、不伪造指纹、不用代理池
Related MCP server: branchlift
安装与启动
pip install -r requirements.txt # 仅 playwright;CDP 走系统 Chrome,无需下载浏览器
./launch.command # 双击亦可:首次复制登录 profile,启动 CDP 9222
python3 mkt.py check # 确认 CDP 会话与 X/Gmail 登录态命令矩阵与验证等级
命令 | 说明 | 等级 |
| 全局账本聚合 | — |
| CDP 会话检查(X/Gmail/Reddit/LinkedIn) | — |
| 一页纸运营报告(异常/暂停态/抑制名单) | — |
| 全局暂停总闸(一切写操作拒跑且留痕) | — |
| 线索库操作(幂等去重/DNC 隐藏/er-batch 导入) | — |
| X 全动作(vendor x-ops-automation) | PROVEN |
| SMTP 发信队列 | PORTED |
| CDP 只读扫 Gmail / 退信 | PORTED(模式 PROVEN) |
| 只读搜索 | UNVERIFIED |
| 评论(回读校验管道) | UNVERIFIED |
| 发帖(日 ≤3) | UNVERIFIED |
| 只读搜人 | UNVERIFIED |
| 半自动连接请求(终端确认) | UNVERIFIED |
等级含义:PROVEN=真实账号跑通;PORTED=模式已验证、本封装未整跑;UNVERIFIED=选择器未实测,首跑必须人工盯跑(首跑清单见 03 渠道文档 §5)。
规划层:计划是数据,人审是闸门(05 产品方案 §2)
# 1. agent/人 按 data/schemas.md 的 plan schema 写 data/plans/<plan_id>.json
# 2. 校验(schema/能力矩阵/size≤内核日预算/判据预注册)
python3 -c "from core.planlint import load_plan, lint_plan; print(lint_plan(load_plan('data/plans/x.json')))"
# 3. 人审通过后置 review.human_approved=true —— 否则 send_queue 与 MCP 都拒跑该 campaign
# 4. 生成 data/queues/<campaign>.json 并执行(见上表)上限是内核属性:计划里的 size 超过 core/throttle.py 日预算会被 lint 拒收。
MCP 服务(mcp_server.py,stdio,零依赖)
{"mkt": {"command": "python3", "args": ["/绝对路径/marketing-ops-automation/mcp_server.py"]}}6 个工具:mkt_status / mkt_channels / mkt_plan_lint / mkt_search / mkt_ledger_query(只读)+ mkt_run_queue(写,默认 dry-run;UNVERIFIED 渠道拒实跑;未经人审的 plan 拒跑)。只暴露队列粒度写操作——没有绕过留痕的路径。
Skill(skills/marketing-ops/SKILL.md)
agent 操作协议:目标→plan→客群→人审→执行→复盘七步。装入 ~/.agents/skills/ 即可在 ZCode 等宿主触发(内容协作走 warm-email-outreach / expert-review-outreach / b2b-account-mapping)。
通道层(core/transports.py)
ACTIVE×4:api(OAuth,Reddit 二期)|browser-cdp(PROVEN)|os-input(macOS 键鼠/AX 模拟,UNVERIFIED,transports/os_input.py)|protocol(SMTP/IMAP,PROVEN)。
RESERVE×6(通道储备库):webdriver|rss-public(只读)|esp-api(事务邮件)|mobile-appium|integration(平台原生)|semi-auto-ui(人工确认兜底)。
每渠道×动作声明首选+降级链;降级用于"路不通",不用于"绕风控"——风控信号的响应是降节奏或 mkt pause,不是换马甲。风控阈值与账号限额见项目 06 文档(官方口径亲核;代码预算一律低于官方上限,见 throttle.INTERVALS/OFFICIAL_LIMITS)。
环境变量
变量 | 用途 |
| CDP 端点(默认 http://127.0.0.1:9222) |
| Gmail SMTP(App Password,绝不入库) |
| 解锁 LinkedIn 全自动(不建议;默认半自动需终端确认) |
数据三件套(data/,gitignore)
queues/<campaign>.json队列;ledger.jsonl全局账本;contacts.jsonl线索库suppress.txt抑制名单(每行一个目标);shots/留证;state/日预算状态schema 详见
data/schemas.md
结构
core/ ledger 账本 · gates 门禁 · throttle 节流 · pipeline 写路径事务 · evidence 留证 · cdp 会话 · transports 通道注册表 · planlint 计划校验/人审强制
channels/ x/(vendor+adapter) · email_smtp · email_cdp · reddit · linkedin
transports/ os_input(macOS 键鼠/AX 模拟,UNVERIFIED)
skills/ marketing-ops(agent 操作协议)
tests/ 离线单测(33 项,含 449 事故回归与人审门禁):python3 -m unittest discover tests -v
mcp_server.py MCP 外壳(stdio JSON-RPC,零依赖)X 渠道 vendor 引入 x-ops-automation(上游 github: roy-tong/x-ops-automation),
不改写已验证代码(见 channels/x/vendor/PROVENANCE.md);上游修选择器时同步。
License
MIT(见 LICENSE)。channels/x/vendor/ 引入自同作者仓库 x-ops-automation(MIT)。
This server cannot be deployed
Maintenance
Related MCP Connectors
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
Inspect and edit media canvases, run existing Flows, and retrieve results. Vyrl MCP token required.
Read-only MCP for identity resolution and write guardrails.
Google Ads MCP with 20,000+ account peer context and staged approve-then-execute writes.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceAn MCP server exposing scoped, read-only enterprise operations tools with fail-closed credential handling. It returns opaque approval IDs for mutations and requires a separate operator approval command to release one-time capabilities.MIT
- AlicenseNot gradedqualityAmaintenanceEnables local MCP access to attach to isolated backend environments, monitor runtime health/logs, check security posture, manage snapshots and diffs, audit events, and view sanitized remote inventory.9 npmApache 2.0
- AlicenseAqualityAmaintenanceEnables MCP clients to query Google Analytics 4 reporting and configuration data through 27 read-only tools, including pivots, funnels, realtime reports, Admin API inspection, and diagnostics, with identifiers redacted by default.2779 npmApache 2.0
- FlicenseCqualityCmaintenanceEnables stdio-capable MCP clients to run governed enterprise operations tasks, including policy/runbook retrieval and ticket and user lookups or writes. High-risk actions are held for human approval and role-based access is enforced server-side, so clients cannot bypass governance.41-