feat: TaskSelector v2 全链路展示 + 同步检查 + MCP Server + 服务器 Git 排除
- admin-web: TaskSelector 重构为按域+层全链路展示,新增同步检查功能 - admin-web: TaskConfig 动态加载 Flow/处理模式定义,DWD 表过滤内嵌域面板 - admin-web: App hydrate 完成前显示 loading,避免误跳 /login - backend: 新增 /tasks/sync-check 对比后端与 ETL 真实注册表 - backend: 新增 /tasks/flows 返回 Flow 和处理模式定义 - apps/mcp-server: 新增 MCP Server 模块(百炼 AI PostgreSQL 只读查询) - scripts/server: 新增 setup-server-git.py + server-exclude.txt - docs: 更新 LAUNCH-CHECKLIST 添加 Git 排除配置步骤 - pyproject.toml: workspace members 新增 mcp-server
This commit is contained in:
58
apps/mcp-server/README.md
Normal file
58
apps/mcp-server/README.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# MCP Server
|
||||
|
||||
为阿里云百炼 AI 应用提供 PostgreSQL 只读查询能力的 MCP 服务。
|
||||
|
||||
## 用途
|
||||
|
||||
小程序端调用百炼 AI 应用时,百炼通过 MCP 协议连接本服务,读取 `etl_feiqiu` 数据库中的运营数据(会员、订单、支付、助教业绩、财务汇总等)。
|
||||
|
||||
## 架构
|
||||
|
||||
```
|
||||
微信小程序 → 百炼 AI 应用 → MCP (Streamable HTTP) → 本服务 → PostgreSQL (etl_feiqiu)
|
||||
```
|
||||
|
||||
## 暴露的 Tools
|
||||
|
||||
| Tool | 说明 |
|
||||
|------|------|
|
||||
| `list_tables` | 列出指定 schema 下的表 |
|
||||
| `describe_table` | 查看单表结构 |
|
||||
| `describe_schemas` | 批量返回多个 schema 的表结构(含主键) |
|
||||
| `query_sql` | 在指定 schema 内执行只读 SQL |
|
||||
|
||||
## 可访问的 Schema
|
||||
|
||||
`ods` / `dwd` / `dws` / `core` / `meta` / `app`(etl_feiqiu 六层架构)
|
||||
|
||||
## 安全策略
|
||||
|
||||
- 仅允许 SELECT/WITH/SHOW/EXPLAIN,禁止 DDL/DML
|
||||
- 正则 + sqlparse 双重校验
|
||||
- 跨 schema 引用白名单限制
|
||||
- 可选 Bearer Token 鉴权(`MCP_TOKEN` 环境变量)
|
||||
- 生产环境建议使用只读数据库账号
|
||||
|
||||
## 配置
|
||||
|
||||
环境变量优先级:`MCP_PG_*` > `DB_*` / `ETL_DB_NAME` / `PG_NAME` > 项目根 `.env`
|
||||
|
||||
| 变量 | 说明 | 默认值 |
|
||||
|------|------|--------|
|
||||
| `MCP_PG_HOST` | 数据库主机(优先) | 回退 `DB_HOST` |
|
||||
| `MCP_PG_PORT` | 数据库端口(优先) | 回退 `DB_PORT`,默认 5432 |
|
||||
| `MCP_PG_DATABASE` | 数据库名(优先) | 回退 `ETL_DB_NAME` → `PG_NAME` |
|
||||
| `MCP_PG_USER` | 数据库用户(优先) | 回退 `DB_USER` |
|
||||
| `MCP_PG_PASSWORD` | 数据库密码(优先) | 回退 `DB_PASSWORD` |
|
||||
| `MCP_TOKEN` | 鉴权 token(空则不启用) | 空 |
|
||||
| `MCP_MAX_ROWS` | query_sql 最大返回行数 | 500 |
|
||||
| `PORT` | 服务监听端口 | 9000 |
|
||||
|
||||
## 启动
|
||||
|
||||
```bash
|
||||
cd apps/mcp-server
|
||||
python server.py
|
||||
```
|
||||
|
||||
百炼端 MCP 服务地址配置为:`https://mcp.langlangzhuoqiu.cn/mcp`
|
||||
Reference in New Issue
Block a user