# 错误字典

> 当工具调用返回错误时，**必须**按以下步骤处理，禁止直接将原始错误抛给用户。

## 处理步骤

1. 工具返回错误响应（含错误码、错误信息等）
2. **立即查阅**本字典，根据错误信息匹配对应条目
3. 向用户展示：错误原因（来自字典）、建议操作，并附上追踪字段（`X-Tc-Trace` / `rpcUuid`）供排查
4. 若字典中无对应条目，则原样展示错误信息，并附上追踪字段

## 禁止行为

- **禁止在未查阅本字典的情况下**，直接将原始错误信息抛给用户
- **禁止自行猜测错误原因**，必须以字典内容为准
- **禁止重复调用已明确失败的接口**

---

---

## 网络与异常错误

> 当 MCP 工具调用出现网络不通、连接超时、请求失败或其他非预期错误时，按以下指引处理。

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|----------|
| 网络不通 / 连接超时 / Connection refused / URLError / timeout | 网络异常 | 请检查网络环境；若 MCP URL 非 `https://mcp.meeting.tencent.com/mcp/wemeet-open/v1`，可换用该地址重试；仍失败则引导访问 https://meeting.tencent.com/ai-skill?fromSource=troubleshot 重新下载 Skill 或查看开发者文档 |
| MCP请求失败 / HTTP 请求失败 / 创建请求失败 | 服务连接异常 | 若 MCP URL 非 `https://mcp.meeting.tencent.com/mcp/wemeet-open/v1`，可换用该地址重试；仍失败则引导访问 https://meeting.tencent.com/ai-skill?fromSource=troubleshot 重新下载 Skill 或查看开发者文档 |
| 其他非预期异常 | 未知异常 | 展示原始错误信息；若 MCP URL 非 `https://mcp.meeting.tencent.com/mcp/wemeet-open/v1`，可换用该地址重试；仍失败则引导访问 https://meeting.tencent.com/ai-skill?fromSource=troubleshot 重新下载 Skill 或查看开发者文档 |

---

## 通用错误

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|----------|
| 每天总接口调用次数超过限制 | 限频 | 告知用户已触发每日调用限制，**当天不能再调用该工具**，请明天再试 |
| 每分钟总接口调用次数超过限制 | 限频 | 告知用户已触发每分钟调用限制，**等待 1 分钟后再重试** |
| 每分钟单个接口调用次数超过限制 | 限频 | 告知用户已触发每分钟单接口限制，**等待 1 分钟后再重试** |
| 鉴权失败 / Token 无效 | 鉴权失败 | 告知用户 Token 未配置或已失效，请访问 https://meeting.tencent.com/ai-skill 重新获取 Token 并配置环境变量 `TENCENT_MEETING_TOKEN` |

---

## 会议管理工具

### `get_meeting` — 查询会议详情

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 会议信息不存在 | 数据不存在 | 告知用户会议不存在，请确认 meeting_id 是否正确 |
| 会议号无效 | 数据不存在 | 告知用户会议号无效，可能已被回收或不存在，请确认会议号 |
| 查询实时转写失败 | 传参错误 | 检查传入的参数是否符合工具说明，meeting_id 必须为纯数字（uint64） |

---

### `get_meeting_by_code` — 通过会议号查询

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 会议号无效 | 数据不存在 | 告知用户会议号无效，请确认会议号是否正确（最少 9 位纯数字） |
| 会议信息不存在 | 数据不存在 | 告知用户会议信息不存在，请确认会议号 |
| MEETING NOT EXIST | 数据不存在 | 告知用户会议信息不存在，请确认会议号 |
| 参数异常 | 传参错误 | 会议号（meeting_code）必须是**最少 9 位的纯数字**，请检查后重试 |

---

### `schedule_meeting` — 创建会议

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| start_time or end_time illegal | 传参错误 | 检查会议开始/结束时间格式，必须为 ISO 8601 格式（如 `2026-03-25T15:00:00+08:00`），且结束时间必须晚于开始时间 |
| 时间设置错误 | 传参错误 | 检查会议时间设置，开始时间不能早于当前时间，结束时间必须晚于开始时间 |

---

### `update_meeting` — 修改会议

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 会议已开始，不能修改会议信息 | 操作限制 | 告知用户会议已开始，**无法修改**，如需调整请等会议结束后重新创建 |

---

### `cancel_meeting` — 取消会议

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| MEETING CANCLED | 操作限制 | 告知用户该会议已经被取消，无需重复操作 |
| MEETING NOT EXIST | 数据不存在 | 告知用户会议不存在，请确认 meeting_id 是否正确 |
| 已开始的会议不能取消 | 操作限制 | 告知用户会议已开始，**无法取消**，如需结束请前往会议中操作 |
| 该操作者可能没有对应的操作权限 | 权限问题 | 告知用户只有**会议创建者**才能取消会议 |
| meetingId必须是整型 | 传参错误 | meeting_id 必须为纯数字（uint64），请检查参数格式后重试 |

---

## 会议成员工具

### `get_meeting_participants` — 获取参会成员明细

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 无权限操作 | 权限问题 | 告知用户仅限**会议创建者、主持人、联席主持人**（且与创会者同企业）才能查看参会成员 |
| 周期性会议查询sub_meeting_id参数不可为空 | 传参错误 | 查询周期性会议参会成员时，必须传入 `sub_meeting_id`，可通过 `get_meeting` 获取 `current_sub_meeting_id` |
| subMeetingId is illegal | 传参错误 | `sub_meeting_id` 格式非法，请检查参数值是否正确 |
| illegal meeting_id, must be numeric characters | 传参错误 | meeting_id 必须为纯数字（uint64），请检查参数格式 |
| 查询时间范围不得大于90天 | 传参错误 | 查询时间范围不得超过 **90 天**，请缩小时间范围后重试 |
| 会议信息不存在 | 数据不存在 | 告知用户会议不存在，请确认 meeting_id 是否正确 |

---

### `get_meeting_invitees` — 获取受邀成员列表

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 无权限操作 | 权限问题 | 告知用户仅限**会议创建者**才能查询受邀成员列表 |

---

### `get_waiting_room` — 获取等候室成员

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 无权限操作 | 权限问题 | 告知用户仅限**会议创建者、主持人、联席主持人**才能查询等候室成员 |

---

### `get_user_meetings` — 查询用户会议列表

> 通用限频错误请参考上方「通用错误」章节。

---

## 录制相关工具

### `get_records_list` — 查询录制列表

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 参数非法，请对照接口文档检查您的参数 | 传参错误 | 检查 `meeting_code` 参数是否正确（最少 9 位纯数字），或检查时间参数格式是否为 ISO 8601 |
| 查询时间范围不得大于31天且开始时间必须早于结束时间 | 传参错误 | 查询时间范围不得超过 **31 天**，且开始时间必须早于结束时间，请调整后重试 |
| MCP 查询起始时间不得早于 1 年前 | 传参错误 | 查询起始时间不得早于 **1 年前**，请调整 `start_time` 后重试 |
| 查询起始时间必须早于当前时间 | 传参错误 | `start_time` 不能晚于当前时间，请检查时间参数 |
| 非法的meeting_id参数 | 传参错误 | meeting_id 必须为纯数字（uint64），请检查参数格式 |

---

### `get_record_addresses` — 获取录制下载地址

| 错误信息 | 问题类型 | 处理指引                                                                        |
|---------|---------|-----------------------------------------------------------------------------|
| meeting_record_id为必填参数 | 传参错误 | `meeting_record_id` 为必填参数，需通过 `get_records_list` 获取后传入，且必须为非 0 的纯数字（uint64） |
| 非法的meeting_record_id参数 | 传参错误 | `meeting_record_id` 格式非法，必须为非 0 的纯数字（uint64），请通过 `get_records_list` 重新获取    |
| 参数非法，请对照接口文档检查您的参数 | 传参错误 | 检查所有参数格式，`meeting_record_id` 必须为非 0 的纯数字（uint64）                            |
| 录制权限校验失败 | 权限问题 | 可尝试发起申请录制权限，若无法申请则告知用户没有权限查看该会议的录制，仅限有权限的成员访问                               |

---

### `get_transcripts_details` — 查询转写详情

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 找不到会议录制文件 | 数据不存在 | 检查 `record_file_id` 是否正确，需通过 `get_records_list` 重新获取有效的 `record_file_id` |
| Invalid RecordFileId | 传参错误 | `record_file_id` 无效，必须为非 0 的纯数字（uint64），请通过 `get_records_list` 重新获取 |
| 纪要无内容 | 数据不存在 | 该会议暂无转写内容，可能未开启转写功能 |
| 纪要不存在 | 数据不存在 | 该会议的纪要不存在，请确认会议是否已生成转写 |
| 该录制文件未开启转写 | 操作限制 | 告知用户该录制文件未开启转写功能，无法获取转写内容 |
| 录制文件已经被删除 | 数据不存在 | 告知用户录制文件已被删除，无法获取转写内容 |
| oauth corp cannot query minutes | 权限问题 | 可尝试发起申请录制权限，若无法申请则告知用户当前账号**暂无权限**使用转写查询工具 |
| 获取会议纪要错误 | 其他问题 | 服务端异常，可稍后重试；若持续失败请联系腾讯会议支持 |

---

### `get_transcripts_paragraphs` — 查询转写段落列表

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 找不到会议录制文件 | 数据不存在 | 检查 `record_file_id` 是否正确，需通过 `get_records_list` 重新获取 |
| Invalid RecordFileId | 传参错误 | `record_file_id` 无效，必须为非 0 的纯数字（uint64），请通过 `get_records_list` 重新获取 |
| 纪要不存在 | 数据不存在 | 该会议的纪要不存在，请确认会议是否已生成转写 |
| oauth corp cannot query minutes | 权限问题 | 可尝试发起申请录制权限，若无法申请则告知用户当前账号**暂无权限**使用该工具 |

---

### `search_transcripts` — 搜索转写内容

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| 找不到会议录制文件 | 数据不存在 | 检查 `record_file_id` 是否正确，需通过 `get_records_list` 重新获取 |
| record_file_id is invalid | 传参错误 | `record_file_id` 无效，必须为非 0 的纯数字（uint64），请通过 `get_records_list` 重新获取 |
| oauth corp cannot query minutes | 权限问题 | 可尝试发起申请录制权限，若无法申请则告知用户当前账号**暂无权限**使用该工具 |

---

### `get_smart_minutes` — 获取智能纪要

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| record_file_id参数查询不到数据 | 传参错误 | 检查传入的是否为 `record_file_id`（非 `meeting_record_id`），需通过 `get_records_list` 获取正确的 `record_file_id` |
| record_file_id参数错误 | 传参错误 | `record_file_id` 格式错误，必须为非 0 的纯数字（uint64），请通过 `get_records_list` 重新获取 |
| 转写暂未生成，请稍后再试 | 其他问题 | 告知用户智能纪要正在生成中，**不要重复调用**，等待 **5 分钟**后再尝试 |
| 智能化数据生成中 | 其他问题 | 告知用户智能化数据正在生成中，请稍后再试 |
| 智能化开关已关闭 | 操作限制 | 告知用户智能化功能开关未打开，需前往腾讯会议设置中开启后再使用 |
| 暂无智能化数据，请重新生成 | 数据不存在 | 告知用户暂无智能化数据，请前往腾讯会议客户端重新生成后再查询 |

---

### `apply_record_permission_prepare` — 申请录制权限-预览

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| meeting_record_id为必填参数 | 传参错误 | `meeting_record_id` 为必填参数，需通过 `get_records_list` 获取后传入，且必须为非 0 的纯数字（uint64） |
| 非法的meeting_record_id参数 | 传参错误 | `meeting_record_id` 格式非法，必须为非 0 的纯数字（uint64），请通过 `get_records_list` 重新获取 |
| 录制不存在 | 数据不存在 | 告知用户该录制不存在或已被删除，无法发起权限申请 |
| 已有进行中的申请 | 操作限制 | 告知用户该录制存在尚未完结的权限申请，请等待审批结果或前往审批链接查看进度，**不要重复发起申请** |
| 当前用户已具备录制权限 | 操作限制 | 告知用户当前账号已具备录制权限，无需重复申请，可直接访问对应录制资源 |
| 录制所有者不允许申请权限 | 权限问题 | 告知用户该录制所有者已关闭权限申请通道，请直接联系录制所有者获取访问权限 |

---

### `apply_record_permission_commit` — 申请录制权限-提交

| 错误信息 | 问题类型 | 处理指引 |
|---------|---------|---------|
| meeting_record_id为必填参数 | 传参错误 | `meeting_record_id` 为必填参数，且必须与 prepare 阶段一致 |
| 非法的meeting_record_id参数 | 传参错误 | `meeting_record_id` 格式非法，必须为非 0 的纯数字（uint64） |
| 申请预览已过期 | 操作限制 | 告知用户预览信息已过期，需要**重新调用 `apply_record_permission_prepare`** 获取最新预览并请用户重新确认 |
| 已有进行中的申请 | 操作限制 | 告知用户该录制存在尚未完结的权限申请，**不要重复提交**，请前往审批链接查看进度 |
| 当前用户已具备录制权限 | 操作限制 | 告知用户当前账号已具备录制权限，无需重复申请 |
| 提交申请失败，请稍后重试 | 其他问题 | 服务端异常，告知用户稍后重试；若持续失败请联系腾讯会议支持 |
