ppxc-leads-mcp 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +11 -0
- package/README.md +38 -130
- package/dist/backend/config.js +0 -1
- package/dist/backend/ppxc-client.js +0 -1
- package/dist/backend/ppxc-login-window.js +0 -1
- package/dist/backend/token-store.js +0 -1
- package/dist/browser/comments.js +0 -1
- package/dist/browser/douyin-runner.js +0 -1
- package/dist/browser/kernel/electron-profile.js +0 -1
- package/dist/browser/kernel/logger.js +0 -1
- package/dist/browser/kernel/page-scripts/index.js +0 -1
- package/dist/browser/kernel/runner-page-manager.js +0 -1
- package/dist/browser/kernel/runner-page-session.js +0 -1
- package/dist/browser/kernel/runner-page-session.search-parser.js +0 -1
- package/dist/browser/kernel/runner-page-session.user-agent.js +0 -1
- package/dist/browser/platform-runner.js +0 -1
- package/dist/browser/platforms/detect-platform.js +0 -1
- package/dist/browser/platforms/douyin/adapter.js +0 -1
- package/dist/browser/platforms/douyin/comments.js +0 -1
- package/dist/browser/platforms/kuaishou/adapter.js +0 -1
- package/dist/browser/platforms/kuaishou/comments.js +0 -1
- package/dist/browser/platforms/registry.js +0 -1
- package/dist/browser/platforms/shared/cdp-json-waiter.js +0 -1
- package/dist/browser/platforms/types.js +0 -1
- package/dist/browser/platforms/xiaohongshu/adapter.js +0 -1
- package/dist/browser/platforms/xiaohongshu/comments.js +0 -1
- package/dist/browser/usage-throttle.js +0 -1
- package/dist/main.js +0 -1
- package/dist/mcp/battle-report.js +0 -1
- package/dist/mcp/content-insights.js +0 -1
- package/dist/mcp/diagnostics.js +0 -1
- package/dist/mcp/server.js +0 -1
- package/dist/version.js +0 -1
- package/package.json +2 -9
package/LICENSE.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# PPXC Leads MCP Proprietary License
|
|
2
|
+
|
|
3
|
+
Copyright (c) PPXC. All rights reserved.
|
|
4
|
+
|
|
5
|
+
This package is provided only for use with the PPXC service.
|
|
6
|
+
|
|
7
|
+
You may install and run this package to connect an MCP-capable assistant to your own PPXC account.
|
|
8
|
+
|
|
9
|
+
You may not copy, modify, decompile, reverse engineer, republish, redistribute, sublicense, sell, rent, host, or use this package or any substantial part of it to build a competing or derivative service without prior written permission from PPXC.
|
|
10
|
+
|
|
11
|
+
This package is provided "as is" without warranties of any kind. PPXC may update, limit, suspend, or discontinue access to service-backed functionality according to PPXC account, billing, safety, and abuse-control rules.
|
package/README.md
CHANGED
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
# PPXC Leads MCP
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
PPXC Leads MCP lets an MCP-capable assistant help a PPXC user find potential customers from public comments on supported social platforms.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
公开仓库:<https://github.com/yuanjian068yuan/ppxc-leads-mcp>
|
|
5
|
+
Package: <https://www.npmjs.com/package/ppxc-leads-mcp>
|
|
6
|
+
Setup guide: <https://opc1.me/download/mcp>
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
> 1. [`AGENTS.md`](./AGENTS.md) — 本仓库的硬性边界规则(AI 协作员必读第一文件)
|
|
11
|
-
> 2. [`docs/开发手册.md`](./docs/开发手册.md) — 架构、工具契约、平台适配层、验收标准
|
|
12
|
-
>
|
|
13
|
-
> 产品化(从本地半成品到正式可分发小组件)的路线:[`docs/产品化规划-2026-06-11.md`](./docs/产品化规划-2026-06-11.md)
|
|
8
|
+
## Install MCP
|
|
14
9
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
在支持 MCP 的智能体(Claude 桌面版 / Cursor / 其他)配置里加一段:
|
|
10
|
+
Add this server to an MCP-capable host:
|
|
18
11
|
|
|
19
12
|
```json
|
|
20
13
|
{
|
|
@@ -27,11 +20,7 @@
|
|
|
27
20
|
}
|
|
28
21
|
```
|
|
29
22
|
|
|
30
|
-
|
|
31
|
-
- 默认连 PPXC 生产站;开发联调时在 `env` 里加 `PPXC_API_BASE` 指向本地后端。
|
|
32
|
-
- 装好后对智能体说「检查登录状态」,按提示完成 PPXC 登录和平台扫码即可使用。
|
|
33
|
-
|
|
34
|
-
Windows 宿主如果不能直接执行 `npx`,用:
|
|
23
|
+
If a Windows host cannot execute `npx` directly, use:
|
|
35
24
|
|
|
36
25
|
```json
|
|
37
26
|
{
|
|
@@ -44,136 +33,55 @@ Windows 宿主如果不能直接执行 `npx`,用:
|
|
|
44
33
|
}
|
|
45
34
|
```
|
|
46
35
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
用户在智能体里一行配置装好本工具包;首次登录 PPXC 账号 + 按需扫各平台二维码;之后对智能体说「分析这条内容 / 用这个词在小红书找客户」,工具包用自带的隐藏浏览器内核抓取数据、送 PPXC 后端分析,把「总体判断 + 高意向客户 + 跟进话术 + 内容选题」直接返回给智能体。
|
|
50
|
-
|
|
51
|
-
## 支持的平台
|
|
52
|
-
|
|
53
|
-
| 平台 | 链接分析评论 | 关键词搜索 | 数据获取方式 |
|
|
54
|
-
|---|---|---|---|
|
|
55
|
-
| 抖音 | ✅ | ✅ | 页内 fetch + 搜索 sniffer(已真机验证) |
|
|
56
|
-
| 小红书 | ✅ 真机验证通过(2026-06-11) | ✅ 真机验证通过(2026-06-11) | CDP 监听 + 滚动;笔记页需带 xsec_token 签名链接 |
|
|
57
|
-
| 快手 | ✅ 真机验证通过(2026-06-11) | ✅ 真机验证通过(2026-06-11) | CDP 监听 graphql(rootCommentsV2);搜索走 /rest/v/search/feed |
|
|
36
|
+
First launch downloads the local browser runtime. Node.js 18 or newer is required.
|
|
58
37
|
|
|
59
|
-
##
|
|
38
|
+
## Install Skill
|
|
60
39
|
|
|
61
|
-
|
|
62
|
-
- **不是**浏览器插件:不依赖用户手动安装插件
|
|
63
|
-
- **不是**爬虫平台:借用户本人登录态、保守频率、撞验证就请真人处理,不做任何过验证 / 共享账号的灰色手段
|
|
40
|
+
The official workflow skill is distributed in:
|
|
64
41
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
- 平台登录态和 PPXC 登录凭证只保存在用户本机。
|
|
68
|
-
- 不上传平台 token / Cookie,不把它们写进日志或诊断包。
|
|
69
|
-
- 评论文本会通过 HTTPS 发送到 PPXC 后端做 AI 意向判断和话术生成。
|
|
70
|
-
- 分析出的客户结果会写入用户自己的 PPXC 客户池。
|
|
71
|
-
- 遇到验证码或平台安全验证时,组件只会弹出窗口让用户本人处理,不做自动绕过。
|
|
72
|
-
|
|
73
|
-
## 形态(方案 A:自带浏览器内核的 CDP MCP)
|
|
74
|
-
|
|
75
|
-
```
|
|
76
|
-
智能体(Claude / Cursor / ...)
|
|
77
|
-
│ MCP 协议(stdio)
|
|
78
|
-
▼
|
|
79
|
-
本工具包(无界面后台进程)
|
|
80
|
-
├── MCP 协议层 ← 7 个 tool,platform 参数 / 链接自动识别
|
|
81
|
-
├── 浏览器执行层 ← 平台插座 + 三平台方言件 + 隐藏窗口内核
|
|
82
|
-
└── 后端对接层 ← 调 PPXC 生产后端的同步分析接口
|
|
42
|
+
```text
|
|
43
|
+
skills/ppxc-find-customers/SKILL.md
|
|
83
44
|
```
|
|
84
45
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
| 工具 | 用户场景 | 状态 |
|
|
88
|
-
|---|---|---|
|
|
89
|
-
| `check_status_and_login` | 检查 PPXC + 抖音/小红书/快手登录;`login_*` 弹对应扫码窗 | 已接入三平台 |
|
|
90
|
-
| `list_products` | 列出账号下产品,拿 productId | 第二期 |
|
|
91
|
-
| `analyze_video_comments` | 给内容链接 + 产品 → 读评论 → AI 分析 → 战报 + 入池;platform 可省略 | 抖音已验;小红书/快手待真机 |
|
|
92
|
-
| `search_keyword_for_leads` | 给关键词 + **platform** → 搜内容 → 读评论 → 分析 → 汇总战报 | 抖音已验;小红书/快手待真机 |
|
|
93
|
-
| `suggest_search_keywords` | 开搜前先要词:读后端想词委员会为产品生成的精选搜索词(带词型+理由) | 0.2 新增 |
|
|
94
|
-
| `query_leads` | 问「之前挖到的客户 / 高意向有哪些」→ 只读查客户池,支持按词/天数/状态筛 | 0.2 新增 |
|
|
95
|
-
| `export_diagnostics` | 用户说「不好用 / 要反馈」→ 把运行日志打包成桌面上的诊断文件 | 已实测 |
|
|
96
|
-
|
|
97
|
-
## FAQ
|
|
98
|
-
|
|
99
|
-
### 需要什么环境?
|
|
100
|
-
|
|
101
|
-
macOS 或 Windows,Node.js 18+,以及一个 PPXC 账号。目标平台账号由用户本人扫码登录。
|
|
102
|
-
|
|
103
|
-
### 为什么不能云托管?
|
|
104
|
-
|
|
105
|
-
本工具依赖用户本机的平台登录态和扫码/验证码窗口,必须在用户自己的电脑上运行。市场上架时请选择 Local / stdio 模式。
|
|
106
|
-
|
|
107
|
-
### 第一次启动慢怎么办?
|
|
108
|
-
|
|
109
|
-
首次会下载 Electron 浏览器内核,约 100MB。下载失败通常是网络问题,换网络重试即可;国内网络可按官网 FAQ 加镜像环境变量。
|
|
46
|
+
Install the whole `skills/ppxc-find-customers/` folder into your assistant's skill directory, or import the folder through the host's skill UI. For Codex Desktop / Codex CLI, the usual destination is:
|
|
110
47
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
不做。工具只帮助识别潜在客户、生成跟进话术和主页/来源链接,具体触达由用户本人判断和执行。
|
|
114
|
-
|
|
115
|
-
### 怎么反馈问题?
|
|
116
|
-
|
|
117
|
-
对智能体说「导出诊断信息」,它会在桌面生成脱敏诊断文件,发给 PPXC 支持人员即可。
|
|
118
|
-
|
|
119
|
-
## 桌面战报(0.2)
|
|
120
|
-
|
|
121
|
-
两件分析工具挖到客户后,会在用户桌面自动生成一份**客户战报**(自包含网页文件,离线可开):总览数字、行动清单(先跟谁 + 为什么)、客户卡片(评论原话 / 判断理由 / 一键复制话术 / 主页直达)、每个词的成绩单。可转发给同事直接照着跟进。
|
|
122
|
-
|
|
123
|
-
## 官方技能说明书(教智能体怎么用)
|
|
124
|
-
|
|
125
|
-
[`skills/ppxc-find-customers/SKILL.md`](./skills/ppxc-find-customers/SKILL.md) 是给智能体的标准工作流:先查登录 → 选产品 → 要词 → 开搜 → 固定格式汇报(含战报文件位置)→ 隔天复盘换词,并写死了额度 / 验证码 / 电力的应对话术。装进 Claude / Cursor 等宿主的技能目录即可,npm 包里也随包分发。
|
|
126
|
-
|
|
127
|
-
## 风控(按平台分日额度 + 全局 30 秒间隔)
|
|
128
|
-
|
|
129
|
-
详见 [`docs/开发手册.md` §8](./docs/开发手册.md)。小红书/快手初版比抖音更保守。
|
|
130
|
-
|
|
131
|
-
## 网络代理
|
|
132
|
-
|
|
133
|
-
平台网页登录窗口(抖音 / 小红书 / 快手)会单独设置 Electron 代理策略。抖音 / 小红书默认 `direct`,避免被系统 HTTP 代理或代理软件拖慢登录二维码加载;快手默认 `system`,因为实测快手在部分 Clash/TUN 网络下走 `direct` 会导航超时,而系统代理配合直连规则更稳定。该设置只影响平台 BrowserWindow,不影响 MCP stdio 或 PPXC 后端 API 调用。
|
|
134
|
-
|
|
135
|
-
如需恢复系统代理:
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
PPXC_MCP_PLATFORM_PROXY=system npx -y ppxc-leads-mcp
|
|
48
|
+
```text
|
|
49
|
+
~/.codex/skills/ppxc-find-customers/
|
|
139
50
|
```
|
|
140
51
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
也可以只覆盖单个平台:
|
|
52
|
+
MCP installation exposes the tools. Skill installation teaches the assistant the safe workflow: check login, choose product, suggest keywords, search for leads, query the customer pool, and export diagnostics when needed.
|
|
144
53
|
|
|
145
|
-
|
|
146
|
-
PPXC_MCP_PLATFORM_PROXY_KUAISHOU=direct npx -y ppxc-leads-mcp
|
|
147
|
-
PPXC_MCP_PLATFORM_PROXY_XIAOHONGSHU=system npx -y ppxc-leads-mcp
|
|
148
|
-
PPXC_MCP_PLATFORM_PROXY_DOUYIN=system npx -y ppxc-leads-mcp
|
|
149
|
-
```
|
|
54
|
+
## Tools
|
|
150
55
|
|
|
151
|
-
|
|
56
|
+
The package exposes seven MCP tools:
|
|
152
57
|
|
|
153
|
-
|
|
58
|
+
- `check_status_and_login`
|
|
59
|
+
- `list_products`
|
|
60
|
+
- `suggest_search_keywords`
|
|
61
|
+
- `search_keyword_for_leads`
|
|
62
|
+
- `analyze_video_comments`
|
|
63
|
+
- `query_leads`
|
|
64
|
+
- `export_diagnostics`
|
|
154
65
|
|
|
155
|
-
|
|
156
|
-
- 桌面客户端:从 `ppxc-desktop` 稳定线**单向搬运**执行内核,搬完解耦。
|
|
66
|
+
## Privacy And Safety
|
|
157
67
|
|
|
158
|
-
|
|
68
|
+
- Platform login sessions and PPXC login credentials stay on the user's machine.
|
|
69
|
+
- Platform tokens and cookies are not uploaded to PPXC and are not written to diagnostics.
|
|
70
|
+
- Public comment text is sent to PPXC over HTTPS for customer-intent analysis, follow-up suggestions, and customer-pool storage.
|
|
71
|
+
- Results are saved only to the user's own PPXC customer pool.
|
|
72
|
+
- Captchas, QR-code login, and security checks are handled by the user in a local window. This package does not bypass verification.
|
|
73
|
+
- The tool does not send private messages or automate outreach.
|
|
159
74
|
|
|
160
|
-
##
|
|
75
|
+
## Troubleshooting
|
|
161
76
|
|
|
162
|
-
|
|
77
|
+
If the assistant says the MCP tools are unavailable, restart or refresh the MCP host after adding the config.
|
|
163
78
|
|
|
164
|
-
|
|
79
|
+
If startup is slow, wait for the browser runtime download to finish. In mainland China networks, the setup guide includes a mirror configuration for Electron downloads.
|
|
165
80
|
|
|
166
|
-
|
|
167
|
-
- 阶段 B:**小红书真机验证通过**——扫码登录、关键词搜索(17 笔记/20 评论)、短链笔记拉评论(10 评论 + 主页链接)三链路实测 OK。探路结论:① 访客也有 web_session cookie,登录态必须读页面状态;② 笔记页必须带 xsec_token 签名链接,裸链接会被「暂时无法浏览」拦截;③ 短链跳转在慢网络下需轮询等待。MCP 工具层端到端(含后端分析+入池)待联调。
|
|
168
|
-
- 阶段 C:**快手真机验证通过**——扫码登录、关键词搜索(20 视频/18 评论)、单视频链接拉评论(13 评论 + 主页链接)三链路实测 OK。探路结论:① 扫码先发 passToken(id.kuaishou.com),主站会话票叫 `kuaishou.server.webday7_st`(带灰度后缀且 httpOnly),userId/did 都不能当登录凭证;② 搜索接口是 `/rest/v/search/feed`(作者在 feed 级、评论数字段不可靠);③ 视频页评论走 graphql `visionCommentList`,真数据在 `rootCommentsV2`(老字段是空壳)。MCP 工具层端到端(含后端分析+入池)待联调。
|
|
169
|
-
- 阶段 D:后端 `userProfileUrl` 优先使用 MCP 传入的主页链接;开发手册/README 已更新。
|
|
81
|
+
If a platform asks for QR-code login or verification, complete it manually in the local window, then retry the assistant request.
|
|
170
82
|
|
|
171
|
-
|
|
83
|
+
If something fails, ask the assistant to run `export_diagnostics` and send the generated diagnostic file to PPXC support.
|
|
172
84
|
|
|
173
|
-
|
|
174
|
-
npm run regression:static # 静态回归(无需登录)
|
|
175
|
-
npm run smoke:comments # 抖音 smoke(需登录 + PPXC_MCP_VIDEO_URL)
|
|
176
|
-
PPXC_MCP_PLATFORM=xiaohongshu PPXC_MCP_LOGIN=1 npm run spike:probe # 小红书探路
|
|
177
|
-
```
|
|
85
|
+
## License
|
|
178
86
|
|
|
179
|
-
|
|
87
|
+
This package is proprietary. It may be installed and used as part of the PPXC service, but copying, modifying, reverse engineering, republishing, or redistributing it is not allowed except with written permission from PPXC.
|
package/dist/backend/config.js
CHANGED
package/dist/browser/comments.js
CHANGED
|
@@ -6,4 +6,3 @@ Object.defineProperty(exports, "buildCommentUrl", { enumerable: true, get: funct
|
|
|
6
6
|
Object.defineProperty(exports, "commentsFromJson", { enumerable: true, get: function () { return comments_1.commentsFromJson; } });
|
|
7
7
|
Object.defineProperty(exports, "extractAwemeId", { enumerable: true, get: function () { return comments_1.extractAwemeId; } });
|
|
8
8
|
Object.defineProperty(exports, "isDouyinShortLink", { enumerable: true, get: function () { return comments_1.isDouyinShortLink; } });
|
|
9
|
-
//# sourceMappingURL=comments.js.map
|
|
@@ -12,4 +12,3 @@ Object.defineProperty(exports, "startDouyinLogin", { enumerable: true, get: func
|
|
|
12
12
|
Object.defineProperty(exports, "startPlatformLogin", { enumerable: true, get: function () { return platform_runner_1.startPlatformLogin; } });
|
|
13
13
|
Object.defineProperty(exports, "shutdownRunner", { enumerable: true, get: function () { return platform_runner_1.shutdownRunner; } });
|
|
14
14
|
Object.defineProperty(exports, "mapSearchResultForDouyin", { enumerable: true, get: function () { return platform_runner_1.mapSearchResultForDouyin; } });
|
|
15
|
-
//# sourceMappingURL=douyin-runner.js.map
|
package/dist/main.js
CHANGED
package/dist/mcp/diagnostics.js
CHANGED
package/dist/mcp/server.js
CHANGED
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,17 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ppxc-leads-mcp",
|
|
3
3
|
"productName": "PPXC Leads MCP",
|
|
4
|
-
"version": "0.1.
|
|
5
|
-
"description": "PPXC 找客户能力的 MCP
|
|
4
|
+
"version": "0.1.8",
|
|
5
|
+
"description": "PPXC 找客户能力的 MCP 本地连接器",
|
|
6
6
|
"license": "UNLICENSED",
|
|
7
7
|
"homepage": "https://opc1.me/download/mcp",
|
|
8
|
-
"repository": {
|
|
9
|
-
"type": "git",
|
|
10
|
-
"url": "git+https://github.com/yuanjian068yuan/ppxc-leads-mcp.git"
|
|
11
|
-
},
|
|
12
|
-
"bugs": {
|
|
13
|
-
"url": "https://github.com/yuanjian068yuan/ppxc-leads-mcp/issues"
|
|
14
|
-
},
|
|
15
8
|
"main": "dist/main.js",
|
|
16
9
|
"type": "commonjs",
|
|
17
10
|
"bin": {
|