Skill: liangdabiao/amazon-sorftime-research-reviews-skill (version 1.0.0)

--- name: "review-analysis" description: "对亚马逊商品评论进行深度分析，自动识别产品痛点、分析退货原因，生成改进建议和客服回复模板。Invoke when user uses /review-analysis command with a product ASIN." --- # 亚马逊商品评论深度分析 ## 快速参考 | 步骤 | 操作 | 说明 | |------|------|------| | 1. 获取API密钥 | 读取 `.mcp.json` | 获取 Sorftime API 密钥 | | 2. 创建报告目录 | mkdir + data子目录 | 创建 `review-analysis-reports/{ASIN}_{站点}_{日期}/data/` | | 3. 获取产品数据 | `product_detail` API | 验证ASIN并获取产品信息，保存原始SSE数据 | | 4. 获取评论数据 | `product_reviews` API | 获取全部评论数据，保存原始SSE数据 | | 5. 解析并分类差评 | 内存处理 | 提取1-3星评论，按痛点分类 | | 6. 保存分析数据 | JSON输出 | 保存差评分析数据到 `data/negative_reviews_analysis.json` | | 7. 生成分析报告 | Markdown输出 | 保存最终报告到 `report.md` | ## 报告输出结构 ``` review-analysis-reports/ └── {ASIN}_{站点}_{YYYYMMDD}/ ├── report.md # 完整分析报告（Markdown） └── data/ # 原始数据和分析结果 ├── raw_product_sse.txt # 原始产品详情SSE响应 ├── raw_reviews_sse.txt # 原始评论SSE响应 └── negative_reviews_analysis.json # 差评分析结构化数据 ``` ## 触发条件 当用户使用 `/review-analysis` 命令并提供一个亚马逊产品 ASIN 时，启动此分析流程。 **调用格式**: ``` /review-analysis {ASIN} {站点} ``` **示例**: `/review-analysis B0D9ZTW7PS US` ## 角色设定 你是一位拥有10年经验的**亚马逊高级产品开发顾问**和**客户体验专家**，专精于通过用户评论挖掘产品痛点和改进机会。 你的核心任务是基于提供的**差评文本**，深度剖析产品的核心痛点，并给出**能直接落地**的解决方案。 参考文档中的分析框架，但根据实际评论内容灵活调整。 ## 分析流程（优化版 v7.0 - 6维分析框架） ### 第一步：读取 API 密钥 ```python # 使用 Read 工具读取配置文件 Read("D:/amazon-mcp/.mcp.json") # 从 JSON 中提取 API 密钥 # 格式: "url": "https://mcp.sorftime.com?key={API_KEY}" ``` ### 第二步：创建报告目录结构 ```bash # 创建报告目录和数据子目录 REPORT_DIR="D:/amazon-mcp/reports/review-analysis/{ASIN}_{站点}_20260315" mkdir -p "$REPORT_DIR/data" ``` ### 第三步：获取产品数据并保存原始响应 使用 Bash 工具调用 Sorftime API，并保存原始响应： ```bash # 获取产品详情并保存原始SSE响应 [REDACTED_SECRET]" curl -s -X POST "https://mcp.sorftime.com?key=${API_KEY}" \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"product_detail","arguments":{"amzSite":"US","asin":"ASIN"}}}' \ > "$REPORT_DIR/data/raw_product_sse.txt" ``` **如果返回 "Authentication required" 或 "授权失败"**： - 告知用户 API 密钥无效或已过期 - 指引用户访问 https://sorftime.com/zh-cn/mcp 获取新密钥 - 更新 `.mcp.json` 文件 **如果返回 "未查询到对应产品"**： - 验证 ASIN 格式（应为10位字母数字） - 尝试使用其他站点 - 提示用户确认产品是否在该站点销售 ### 第四步：获取评论数据并保存原始响应 **使用 `reviewType: "Negative"` 参数专门获取差评**： ```bash # 获取差评（1-3星），保存原始SSE响应 curl -s -X POST "https://mcp.sorftime.com?key=${API_KEY}" \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"product_reviews","arguments":{"amzSite":"US","asin":"ASIN","reviewType":"Negative"}}}' \ > "$REPORT_DIR/data/raw_reviews_sse.txt" ``` **重要提示**： - Sorftime 返回的是 SSE (Server-Sent Events) 格式 - 数据格式: `event: message\ndata: {JSON}\n\n` - 如果数据超过 25KB，会自动保存到临时文件 - 使用 Read 工具读取临时文件获取完整数据 - `reviewType: "Negative"` 只返回1-3星评论，最多100条 - `reviewType: "Both"` 返回所有评论，但差评可能被稀释 **处理大文件响应**： ```bash # 如果响应被保存到临时文件，复制到报告目录 cp /path/to/temp/file.txt "$REPORT_DIR/data/raw_reviews_sse.txt" ``` ### 第五步：解析评论数据并生成分析JSON **在内存中处理评论数据，同时生成结构化分析数据**： ```python import json # SSE 数据解析步骤： # 1. 从响应中提取 "data: " 后的 JSON # 2. 解析 JSON 获取 result.content[0].text # 3. text 中包含 Unicode 转义的中文和评论数组 # 4. 从评论数组中过滤 1-3 星评论 # 解析示例： start_idx = content.find('data: ') + 6 json_str = content[start_idx:] data = json.loads(json_str) # 提取评论文本 text = data['result']['content'][0]['text'] # 查找评论数组起始位置 reviews_start = text.find('[{') reviews_json = text[reviews_start:] reviews = json.loads(reviews_json) # 过滤 1-3 星评论 negative_reviews = [r for r in reviews if float(r.get('评星', 5)) <= 3.0] # 按6大类别归类差评（v7.0 增加服务维度） pain_points = { "电子模块故障": [], "结构/组装问题": [], "设计/功能缺陷": [], "外观/材质问题": [], "描述不符": [], "服务/物流问题": [] } ``` **服务维度分类关键词**： ```python # 服务/物流问题 - 优先检查 service_keywords = { '收到二手/瑕疵品': ['used', 'gross', 'dirty', 'scratch', 'ear wax', 'dirt', 'opened', 'previous owner'], '配件缺失': ['missing', 'no cord', 'no cable', 'no charger', 'no ear tip', 'no accessory'], '退换货困难': ['return', 'refund', 'exchange', 'difficult', 'challenging'], '客服问题': ['customer service', 'seller', 'vendor', 'support'], '物流问题': ['shipping', 'delivery', 'package', 'packaging'], '发错货': ['wrong item', 'wrong color', 'wrong size', 'sent wrong'] } ``` **保存分析数据到JSON**： ```bash # 使用 Write 工具生成分析数据文件 # 文件路径: $REPORT_DIR/data/negative_reviews_analysis.json ``` JSON文件结构应包含： - 产品基础信息（标题、品牌、价格、评分） - 痛点分类统计（类别、数量、占比、严重程度） - 每个痛点的详细分析（根源、改进建议、客户引用） - 安全警示（如有） - 质量指标估算 ### 第六步：生成分析报告 ```python import json # SSE 数据解析步骤： # 1. 从响应中提取 "data: " 后的 JSON # 2. 解析 JSON 获取 result.content[0].text # 3. text 中包含 Unicode 转义的中文和评论数组 # 4. 从评论数组中过滤 1-3 星评论 # 解析示例： start_idx = content.find('data: ') + 6 json_str = content[start_idx:] data = json.loads(json_str) # 提取评论文本 text = data['result']['content'][0]['text'] # 查找评论数组起始位置 reviews_start = text.find('[{') reviews_json = text[reviews_start:] reviews = json.loads(reviews_json) # 过滤 1-3 星评论 negative_reviews = [r for r in reviews if float(r.get('评星', 5)) <= 3.0] ``` ### 第七步：生成最终分析报告 **使用 Write 工具生成完整的 Markdown 报告**： ``` 报告路径: $REPORT_DIR/report.md ``` ## 分析框架 ### 痛点归类（6大类别） | 类别 | 判断标准 | |------|----------| | **1. 结构/组装问题** | 零件破损、密封失效、接口断裂、安装孔位偏差、组装困难、结构不稳 | | **2. 电子模块故障** | USB/充电失效、LED不亮、APP连接失败、蓝牙断连、功能失效、电路问题 | | **3. 设计/功能缺陷** | 尺寸不合理、功能缺失、操作复杂、触感不符、人体工程学问题、使用不便 | | **4. 外观/材质问题** | 有异味、材质过敏、色差、划痕、生锈、表面处理差、材质廉價感 | | **5. 描述不符** | 尺寸预期偏差、功能与描述不符、颜色差异、款式与图片不一致、蓝牙版本不符 | | **6. 服务/物流问题** | 客服响应慢、退换货困难、物流延迟、发错货、配件缺失、**收到二手产品/瑕疵品**、包装破损 | ### 服务维度细分 服务维度问题需进一步细分统计： | 细分类别 | 判断标准 | 严重程度 | |----------|----------|----------| | **收到二手/瑕疵品** | 评论提及 used、dirty、ear wax、scratch、opened、previous owner | **高** | | **配件缺失** | 缺少充电线、耳塞、说明书、保修卡等 | **高** | | **退换货困难** | 退货流程复杂、退款慢、卖家推诿、买家承担高额运费 | 中 | | **客服响应慢/态度差** | 客服不回复、回复慢、态度恶劣、无法解决问题 | 中 | | **物流延迟/包装差** | 发货慢、物流停滞、包装破损、快递服务差 | 低 | | **发错货** | 颜色/尺寸/款式发错 | 中 | ### 严重程度评估 | 程度 | 判断标准 | |------|----------| | **高** | 影响核心功能或存在安全隐患（如破损、泄漏、过敏、漏电） | | **中** | 影响使用体验（如操作复杂、触感不佳、尺寸偏差） | | **低** | 外观细节问题（如轻微划痕、包装瑕疵、个人偏好） | ### 解决方案双轨制 对于每个痛点，提供： 1. **产品/供应链改进方案** - 必须具体可执行（如：将封口宽度从3mm增加到6mm） - 避免笼统描述（如："提高质量"是不可接受的） 2. **客服话术/Listing优化建议** - 客服邮件模板（遵守亚马逊合规要求） - Listing 文案/图片改进建议 ## 报告模板 ```markdown # {产品标题} - 评论深度分析报告 > ASIN: {ASIN} | 站点: {站点} | 分析时间: {时间} --- ## 产品基础信息 | 项目 | 内容 | |------|------| | 产品标题 | {标题} | | 品牌 | {品牌} | | 价格 | ${价格} | | 评分 | {评分}/5.0 | | 评论总数 | {总数} | | 分析样本 | {差评数量} 条 (1-3星) | --- ## 痛点分析汇总 基于 {差评数量} 条差评的深度分析： ### 痛点分布概览 | 排名 | 痛点类别 | 数量 | 占比 | 严重程度 | |------|----------|------|------|----------| | 1 | {类别} | {数量} | {占比}% | {高/中/低} | | 2 | {类别} | {数量} | {占比}% | {高/中/低} | | ... | ... | ... | ... | ... | --- ## 核心痛点深度分析 ### 痛点 #1: {痛点名称} **类别**: {类别} | **严重程度**: {程度} | **影响**: {数量}条评论 ({占比}%) #### 客户反馈摘要 > "{典型差评引用1}" > > "{典型差评引用2}" #### 根源分析 - **设计问题**: {分析} - **生产问题**: {分析} - **包装问题**: {分析} (如适用) #### 产品改进建议 1. {具体可执行的改进1} 2. {具体可执行的改进2} #### 客服回复模板 **Subject**: {邮件主题} **Dear [Customer Name],** {完整的邮件内容} **Best regards,** [Your Name] [Brand Name] Customer Success Team --- [重复其他痛点...] --- ## 给您的产品开发专家建议 ### 产品质量改进 - {建议1} - {建议2} ### 供应链端的"防呆"设计 - {建议1} - {建议2} ### Listing与营销层面的"预期管理" - {建议1} - {建议2} ### 服务与运营优化（如存在服务维度问题） - **客服培训**: 建立标准话术库，确保24小时内响应差评 - **退换货流程**: 简化退货流程，提供预付运费标签 - **发货质检**: 100%出库质检，杜绝二手/瑕疵品流出 - **配件管理**: 建立配件清单核对机制，确保包装完整 - **物流合作**: 评估物流服务商，选择可靠的配送渠道 --- ## 亚马逊差评回复邮件模板库 ### 模板类型（根据痛点类别提供） 1. **产品质量问题**（电子模块故障、结构问题、设计缺陷） 2. **服务问题**（收到二手/瑕疵品、配件缺失、退换货困难） 3. **物流问题**（延迟、包装破损、发错货） 4. **描述不符**（功能预期偏差、尺寸颜色差异） [根据具体产品类型和痛点提供3-5个针对性模板] ### 服务问题专项模板示例 **收到二手/瑕疵品**: ``` Subject: 我们深表歉意 - 立即为您更换全新产品 Dear [Customer Name], 我们非常抱歉您收到了有瑕疵的产品。这绝不符合我们的质量标准。 请立即联系 [support email]，我们将为您免费更换全新产品，无需退回原产品。 再次致歉！ [Brand] Customer Service ``` --- ## 操作建议（避坑指南） 1. **话术避讳**: 严禁使用 "Change your review" 或 "Remove your review" 2. **回复渠道**: 使用亚马逊后台 "Contact Buyer" 功能 3. **时效性**: 1星评价4小时内响应，2星12小时内，3星24小时内 4. **跟进策略**: 首封邮件聚焦解决问题，不主动提补偿 --- *报告生成时间: {时间戳}* *数据来源: Sorftime MCP* *分析方法: LLM 整体评论分析* ``` ## 亚马逊合规要求 生成邮件模板时必须遵守： 1. 严禁直接请求删除/修改评价 2. 不得用利益交换评价 3. 使用官方渠道 Contact Buyer 4. 24小时内响应差评 ## 支持的站点 US, GB, DE, FR, IN, CA, JP, ES, IT, MX, AE, AU, BR, SA ## 故障排查 ### API 授权失败 **症状**: 返回 "Authentication required" 或 "授权失败" **解决方案**: 1. 访问 https://sorftime.com/zh-cn/mcp 获取新密钥 2. 更新 `.mcp.json` 中的 API 密钥 3. 重新执行分析 ### 产品未找到 **症状**: 返回 "未查询到对应产品" **解决方案**: 1. 检查 ASIN 格式（10位字母数字） 2. 确认站点是否正确 3. 尝试使用其他站点 ### 中文乱码 **症状**: 返回的数据包含 `\u4ea7\u54c1` 等 Unicode 转义 **解决方案**: - Python: `json.loads()` 会自动解码 - 如有 Mojibake: `text.encode('latin-1').decode('utf-8')` ### 数据过大被截断 **症状**: 返回 "Output too large... saved to: {temp_file}" **解决方案**: 1. 从提示的临时文件路径读取完整数据 2. 使用 Read 工具的 offset/limit 参数分块读取 3. 或使用 Grep 工具提取特定模式 ### 服务问题识别 **症状**: 评论中频繁出现服务相关差评 **服务维度警告阈值**: | 问题类型 | 警告阈值 | 危险阈值 | |----------|----------|----------| | 收到二手/瑕疵品 | >2% | >5% | | 配件缺失 | >1% | >3% | | 退换货困难投诉 | >5% | >10% | | 客服负面评价 | >3% | >7% | **改进建议**: - **二手/瑕疵品问题**: 立即审查仓库质检流程，考虑产品召回 - **配件缺失**: 检查包装流水线，增加配件扫码核对 - **退换货困难**: 简化退货流程，提供预付运费标签 - **客服问题**: 增加客服培训，建立24小时响应机制 ### 差评数量很少 **症状**: 产品显示有几百条评论，但只返回几条差评 **可能原因**: 1. **产品质量好**: 差评率低是好事，说明客户满意度高 2. **API限制**: Sorftime API 最多返回100条评论 3. **使用 `reviewType: "Negative"`**: 只获取1-3星评论，数量自然会少 **数据分析建议**: - 如果差评少于5条：分析结果仅供参考，建议结合其他数据源 - 如果差评少于10条：在报告中明确说明样本量限制 - 如果差评超过20条：分析结果具有较高的统计意义 **补充数据方案**: 1. 手动查看亚马逊产品页面的差评 2. 使用其他评论抓取工具获取更多数据 3. 结合客服记录了解常见问题 ## 最佳实践 1. **路径处理**: 在 Windows 环境下使用正斜杠 `/` 或反斜杠 `\` 均可，但保持一致 2. **数据保存**: 所有中间数据必须保存到 `data/` 子目录，确保可追溯和复用 3. **JSON结构**: 分析数据应采用结构化JSON格式，便于后续程序化处理 4. **错误处理**: 每个步骤后检查返回结果，及时发现问题 5. **用户反馈**: 遇到问题时清晰告知用户原因和解决方案 ### 中间数据文件说明 | 文件名 | 用途 | 格式 | |--------|------|------| | `raw_product_sse.txt` | 产品详情原始API响应 | SSE格式 | | `raw_reviews_sse.txt` | 评论数据原始API响应 | SSE格式 | | `negative_reviews_analysis.json` | 差评分析结构化数据 | JSON | ### 数据复用场景 - **趋势分析**: 对比同一产品不同时间段的差评变化 - **竞品对比**: 批量分析多个产品的差评数据 - **质量追溯**: 基于原始数据验证分析结论的准确性 - **报表生成**: 基于JSON数据自动生成Excel/图表 --- *本技能文档版本: v7.0 (6维分析框架) | 最后更新: 2026-03-15*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)