# Social Auto Hub(Monorepo) [English](./README.md) 仓库已改造为 **workspace monorepo**,结构上清晰拆分为: - `apps/xhs-mcp`:小红书 MCP 服务(`xhs_*`) - `apps/xhh-mcp`:小黑盒 MCP 服务(`xhh_*`) - `packages/core`:共享基础设施(`browser/config/cookie/server/utils`) ## 目录结构 ```text apps/ xhs-mcp/ xhh-mcp/ packages/ core/ ``` ## 快速开始 ### 前置要求 - Node.js >= 22 - pnpm ### 安装依赖 ```bash pnpm install npx rebrowser-playwright install chromium ``` ### 构建全部包 ```bash pnpm build ``` ### 启动小红书服务 ```bash pnpm start:xhs ``` 默认运行参数: - `PORT=9527` - `COOKIE_DIR=~/.social-mcp-xhs` ### 启动小黑盒服务 ```bash pnpm start:xhh ``` 默认运行参数: - `PORT=9528` - `COOKIE_DIR=~/.social-mcp-xhh` ## 根目录兼容脚本 根脚本保留为转发壳: - `pnpm build` - `pnpm lint` - `pnpm test` - `pnpm start:xhs` - `pnpm start:xhh` - `pnpm dev:xhs` - `pnpm dev:xhh` 也可以直接按包执行: ```bash pnpm --filter @social/core build pnpm --filter @social/xhs-mcp start pnpm --filter @social/xhh-mcp start ``` ## MCP 地址 - XHS MCP: `http://127.0.0.1:9527/mcp` - XHH MCP: `http://127.0.0.1:9528/mcp` ## REST 地址 - XHS REST: `http://127.0.0.1:9527/api/xhs/*` - XHH REST: `http://127.0.0.1:9528/api/xhh/*` 两个服务使用各自 `COOKIE_DIR` 下的独立 Bearer token。 ## Claude Desktop 接入示例 ```json { "mcpServers": { "mcp-xhs": { "url": "http://127.0.0.1:9527/mcp" }, "mcp-xhh": { "url": "http://127.0.0.1:9528/mcp" } } } ``` ## Docker 单一 Dockerfile 支持通过 `APP_NAME` 构建双目标: - `APP_NAME=xhs-mcp` - `APP_NAME=xhh-mcp` `docker-compose.yml` 和 `deploy/docker-compose.yml` 已配置双服务。 ## 迁移说明 - 旧的根入口(`src/index.ts`)已移除。 - 服务代码迁移到 `apps/*`。 - 共享基础能力迁移到 `packages/core`。 - 锁文件策略改为 pnpm(`pnpm-lock.yaml`)。