feat(outlook): 添加 Outlook MCP 集成支持并优化分页功能
- 新增 NANO_OUTLOOK_MCP_URL 和 NANO_OUTLOOK_MCP_SERVER_ID 环境变量配置 - 实现 Outlook 邮件和日历的分页查询功能,添加安全参数验证 - 为 app-instance 创建脚本添加 Outlook MCP 服务器 ID 参数 - 更新前端 Outlook 页面实现邮件列表和日历事件的分页浏览 - 添加 Git 忽略文件配置和 Docker 挂载路径修复 BREAKING CHANGE: Outlook 集成现在需要配置 MCP URL 和服务器 ID 环境变量
This commit is contained in:
24
README.md
24
README.md
@ -93,6 +93,12 @@ Browser
|
||||
- 可空,自定义 provider base URL
|
||||
- `NANO_AUTHZ_URL`
|
||||
- 这个值必须是 `app-instance` 容器能访问到的 AuthZ 地址
|
||||
- `NANO_OUTLOOK_MCP_URL`
|
||||
- 可空。
|
||||
- 如果配置了,所有新创建的 `app-instance` 都会默认带一个 Outlook MCP HTTP 工具配置。
|
||||
- `NANO_OUTLOOK_MCP_SERVER_ID`
|
||||
- Outlook MCP 默认 server id。
|
||||
- 推荐固定成 `outlook_mcp`。
|
||||
- `NANO_DEPLOY_URL`
|
||||
- `auth-portal` 和 `authz-service` 在容器网络里访问 deploy-control 的地址
|
||||
|
||||
@ -114,6 +120,8 @@ export NANO_API_KEY='sk-xxxxxxxx'
|
||||
export NANO_API_BASE=''
|
||||
|
||||
export NANO_AUTHZ_URL='http://nano-authz-service:19090'
|
||||
export NANO_OUTLOOK_MCP_URL=''
|
||||
export NANO_OUTLOOK_MCP_SERVER_ID='outlook_mcp'
|
||||
export NANO_DEPLOY_URL='http://nano-deploy-control:8090'
|
||||
```
|
||||
|
||||
@ -236,8 +244,10 @@ docker run -d \
|
||||
--network "$NANO_NET" \
|
||||
-p 8090:8090 \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-v "$PROJECT_ROOT/app-instance:/app-instance" \
|
||||
-v "$PROJECT_ROOT/router-proxy:/router-proxy" \
|
||||
-v "$PROJECT_ROOT/app-instance:$PROJECT_ROOT/app-instance" \
|
||||
-v "$PROJECT_ROOT/router-proxy:$PROJECT_ROOT/router-proxy" \
|
||||
-e APP_INSTANCE_DIR="$PROJECT_ROOT/app-instance" \
|
||||
-e ROUTER_PROXY_DIR="$PROJECT_ROOT/router-proxy" \
|
||||
-e DEPLOY_CONTROL_API_TOKEN="$NANO_DEPLOY_TOKEN" \
|
||||
-e APP_INSTANCE_IMAGE="nano/app-instance:latest" \
|
||||
-e APP_INSTANCE_NETWORK_NAME="$NANO_NET" \
|
||||
@ -246,6 +256,8 @@ docker run -d \
|
||||
-e APP_INSTANCE_API_KEY="$NANO_API_KEY" \
|
||||
-e APP_INSTANCE_API_BASE="$NANO_API_BASE" \
|
||||
-e DEFAULT_AUTHZ_BASE_URL="$NANO_AUTHZ_URL" \
|
||||
-e DEFAULT_AUTHZ_OUTLOOK_MCP_URL="$NANO_OUTLOOK_MCP_URL" \
|
||||
-e DEFAULT_OUTLOOK_MCP_SERVER_ID="$NANO_OUTLOOK_MCP_SERVER_ID" \
|
||||
-e DEPLOY_PUBLIC_SCHEME="http" \
|
||||
-e DEPLOY_PUBLIC_BASE_DOMAIN="$NANO_BASE_DOMAIN" \
|
||||
-e DEPLOY_PUBLIC_PORT="8088" \
|
||||
@ -253,6 +265,14 @@ docker run -d \
|
||||
nano/deploy-control:latest
|
||||
```
|
||||
|
||||
这里不要把宿主机目录挂到容器内的另一个短路径,比如 `/app-instance`。
|
||||
|
||||
原因是 `deploy-control` 会通过挂载进来的 Docker socket 再去创建 `app-instance` 容器;这时传给 Docker 的 bind mount 源路径必须是宿主机真实路径。如果你把宿主机目录映射成容器内短路径,`create-instance.sh` 生成的挂载源就会变成错误路径,最终表现为:
|
||||
|
||||
- 注册接口超时
|
||||
- `app-instance` 容器反复重启
|
||||
- 日志里出现 `Missing nanobot config: /root/.nanobot/config.json`
|
||||
|
||||
当前版本里,新实例的默认大模型配置就是从这里分发的:
|
||||
|
||||
- `APP_INSTANCE_PROVIDER`
|
||||
|
||||
Reference in New Issue
Block a user