万户医疗智慧办公通讯录 Skill
经 智慧办公 MCP 按内置表结构生成带权限占位符的 SELECT,执行通讯录问数并用自然语言回答。禁止直连 HTTP、禁止编造人员数据。
登录转交 wanhu-flexoffice-login;无 Bearer 先登录。
表结构见 references/schema.md。生成 SQL 前必读;不要调用 get_addressbook_schema(除非 schema 缺失)。
意图识别
| 意图 | 用户说法(例) | 调用(智慧办公 MCP) |
|---|---|---|
| 查人/电话/工号 | 张三电话、工号 10086 是谁 | 读 schema → 生成 SQL → query_addressbook |
| 查部门人员 | 信息科有哪些人 | 同上(JOIN 用户+组织) |
| 负责人/岗位/职务 | 护理部负责人、某岗位人员 | 同上 |
未匹配上表 → 不调本包 Tool。流程统计转 wanhu-flexoffice-approve。
调用过程
1. 读 references/schema.md(白名单表与字段)
2. 生成 MySQL SELECT(纯 SQL,无围栏)
3. 自检后 query_addressbook(sql, client?)
4. 自然语言回答;不贴完整 SQL / 大段表格
别名:sys_user→u,sys_org→o,sys_org_user→ou,sys_station→s,sys_station_user→su,sys_duty→d,sys_duty_user→du,sys_user_leaders→ul。
权限占位符(必须)
| 占位符 | 何时 |
|---|---|
${userPermissionSql} |
涉及 sys_user u |
${orgPermissionSql} |
涉及 sys_org o |
示例:WHERE u.is_delete=0 AND 1=1 ${userPermissionSql} AND u.user_name LIKE '%张%'
约束:仅 SELECT;字段须在 schema;禁止 password/user_salt/approve_pwd/state_secret_pwd/finger。
命令与参数
| Tool | 必填 | 说明 |
|---|---|---|
query_addressbook |
sql |
须含权限占位符;可选 client |
失败与停止
- 缺权限占位符或字段不在白名单 → 修正后只重试一次。
- 查无结果 → 说明未找到,不编造。
- 同一 Tool 连续失败 2 次 → 停止,原样转述。
包文件结构
wanhu-flexoffice-addressbook__skillhub/
├── SKILL.md
├── agents/
│ └── openai.yaml
└── references/
└── schema.md