geo-publisher-mcp
v0.1.6
Published
Agent-agnostic GEO publisher MCP with workspace profile, article, cover, and browser publishing tools
Downloads
1,216
Readme
GEO Publisher MCP
一个独立的、面向任意 Agent 的 GEO 发布 MCP Server。
它不依赖灵犀桌面端运行时,核心思路是:
- Agent 通过
stdio连接这个 Node MCP - MCP 在本地维护工作区
.geo/数据 - Chrome 扩展通过
native host + WebSocket bridge连接 MCP - 发布动作复用用户自己 Chrome 里的真实登录态
这套设计适合 WorkBuddy、Codex、Claude Desktop、Cursor 或任何支持 stdio MCP 的 Agent。
当前能力
- 客户 8 要素资料检查、读取、更新
- 5 维词库保存与轮换
- 标题与正文保存
- 封面图片保存
- 发布任务创建、查询、重试
- Chrome native host 安装
- Chrome 扩展连接状态检查
- 搜狐号、头条号、百家号发布
推荐安装心智
不要把“安装 native host”设计成 Agent 首次调用业务 tool 的副作用。
更好的方式是把安装和排障做成 CLI,一次人工执行,之后 Agent 只跑业务:
geo-publisher-mcp setup
geo-publisher-mcp doctor
geo-publisher-mcp mcp这样更符合现在 MCP 生态里常见的 setup / doctor / mcp 分层。
工作区结构
每个工作区都会生成一个本地 .geo/ 目录:
.geo/
customer-profile.md
config.json
intent-words.json
runs.jsonl
articles/
covers/
jobs/这是面向 Agent 的本地事实源,不依赖灵犀 store。
工具列表
geo_profile_checkgeo_profile_readgeo_profile_updategeo_generation_contextgeo_intent_words_savegeo_intent_words_pickgeo_article_savegeo_cover_savegeo_publish_articlegeo_get_job_statusgeo_retry_jobgeo_validate_bridgegeo_install_native_hostgeo_connection_status
CLI 命令
1. setup
geo-publisher-mcp setup作用:
- 安装或更新 Chrome native host manifest
- 输出 WorkBuddy 推荐配置
- 提示下一步
注意:setup 不建议直接通过临时 npx 环境执行,因为 manifest 需要稳定路径。
2. doctor
geo-publisher-mcp doctor作用:
- 检查 manifest 是否已安装
- 检查当前脚本路径是否稳定
- 检查 bridge 当前是否可达
- 输出排障建议
3. config
geo-publisher-mcp config --global
geo-publisher-mcp config默认输出 npx 版 WorkBuddy 配置;加 --global 输出全局安装版配置。
4. mcp
geo-publisher-mcp mcp这是给 WorkBuddy / Codex / Claude 等 Agent 作为 stdio MCP 进程启动的命令。
5. --native-host
geo-publisher-mcp --native-host这个模式由 Chrome Native Messaging 启动,通常不需要手工执行。
首装方式
方式 A:npm 全局安装(推荐)
npm install -g geo-publisher-mcp
geo-publisher-mcp setup方式 B:本地源码安装
npm install
npm run build
node dist/index.js setup方式 C:curl 安装器
可以后续提供:
curl -fsSL https://your-domain/install-geo-publisher.sh | bash脚本本质上仍然应该做“稳定安装 + setup”,而不是只跑一次临时 npx setup。
建议的 MCP 配置
WorkBuddy 推荐:全局安装版
{
"mcpServers": {
"geo-publisher": {
"command": "geo-publisher-mcp",
"args": ["mcp"]
}
}
}WorkBuddy 备选:npx 版
{
"mcpServers": {
"geo-publisher": {
"command": "npx",
"args": ["-y", "geo-publisher-mcp@latest", "mcp"]
}
}
}说明:
npx版适合启动 MCP 进程- 但首次
setup仍建议通过全局安装或 curl 稳定安装器执行
本地路径版
{
"mcpServers": {
"geo-publisher": {
"command": "node",
"args": [
"/absolute/path/to/mcp-servers/geo-publisher-mcp/dist/index.js",
"mcp"
]
}
}
}环境变量
这些变量都是可选的;默认值兼容你当前正在使用的 GEO Chrome 扩展。
| Variable | Default | Purpose |
|---|---|---|
| GEO_PUBLISHER_WS_PORT | 9886 | 扩展桥 WebSocket 端口 |
| GEO_PUBLISHER_DISCOVERY_PORT | 9885 | 本地 discovery/status 端口 |
| GEO_NATIVE_HOST_NAME | com.lingxi.geo_publisher | Chrome native host name |
| GEO_PUBLISHER_EXTENSION_ID | okkogkclmpkahabmdbiaeekhcpdmhokb | Chrome 扩展 ID |
| GEO_PUBLISHER_EXTENSION_LABEL | GEO Publisher Chrome Extension | 面向用户的扩展名称 |
| GEO_PUBLISHER_HOST_DESCRIPTION | GEO Publisher native messaging host | manifest 描述 |
| GEO_NATIVE_HOST_APP_DIR | GEO Publisher | Windows native host 存放目录名 |
| GEO_PUBLISHER_TAB_GROUP_TITLE | GEO Publisher | 自动发布标签组标题 |
| GEO_PUBLISHER_READY_HINT | 请确保 Chrome 扩展与 native host 已连接,然后重试。 | 连接失败提示 |
稳定连接设计
当前实现不是“扩展直接连 localhost websocket”的裸连方案,而是:
- MCP 主进程启动本地 discovery + bridge
- Chrome 扩展通过 native host 获取 bridge 状态
- native host 再把扩展与 MCP 连接起来
这样做的好处是:
- 连接链路更明确,Agent 和浏览器职责分离
- 可以通过 manifest 安装保证浏览器端入口稳定
- 更适合 WorkBuddy 这类内置 Node 的宿主
- 后续更容易被其他 Agent 复用
补一句很关键的:
npx很适合“启动 MCP”- 但 不适合充当 native host manifest 的长期目标路径
所以推荐拆成:
setup:稳定安装mcp:日常运行
内容约束
- 标题强制不超过 30 个中文字符
- 正文保存为可发布的富文本 HTML 与纯文本
- 不走 Markdown 原文直发
- 登录、验证码、滑块、风控、账号异常会返回
action_required
平台范围
当前代码里已实装搜狐号、头条号、百家号发布流程。
微信公众号、腾讯号、网易号可以继续沿用同一 MCP 接口与目录结构扩展。
平台无关的 Agent 使用建议
推荐任何 Agent 都按下面顺序工作:
geo_profile_checkgeo_profile_readgeo_generation_context- 生成并保存 5 维词
- 生成标题,限制 30 字内
- 生成正文,输出富文本友好的内容
- 生成封面并
geo_cover_save geo_publish_article- 失败时读取
geo_get_job_status
macOS / Windows
- macOS:已按 Chrome native host 路径实现
- Windows:已按
LOCALAPPDATA/<dir>/NativeMessagingHosts和注册表实现
本轮只做了代码级兼容,尚未在 Windows 真机上验证。
