RedGo provides 4 read-only tools with structured schemas and Chinese descriptions. All tools have input schemas with typed parameters and descriptions. However, descriptions are verbose (200-300 chars) and written in Chinese, making them harder for English-speaking LLMs to parse. Parameter descriptions are present but lack explicit constraints (enums, ranges, formats). No output schemas are documented. Error handling is comprehensive server-side but not surfaced in tool definitions. Tool names follow verb_noun pattern (search_, get_) which is good. No tool annotations (readOnlyHint, idempotentHint) despite all being read-only operations.
获取笔记的评论列表(一级评论,不含楼中楼)。 xsec_token 必须来自 search_notes 或 get_creator_notes 的返回,不可凭 note_id 构造。 v1 阶段深翻分页未实现,cursor 仅透传。
获取创作者(用户)的笔记列表。 每条结果带 xsec_token——后续查看笔记详情/评论必须透传它。 v1 阶段深翻分页未实现,cursor 仅透传。
获取单条笔记的完整详情(包括正文、所有图片、视频链接、精确发布时刻)。 xsec_token 必须来自 search_notes 或 get_creator_notes 的返回,不可凭 note_id 凭空构造。
搜索小红书笔记,返回结构化笔记列表。 每条结果带 xsec_token——后续查看笔记详情/评论必须透传它,不可凭 note_id 构造。 每条结果带 published_at(发布日期,精度到天);要精确时刻用 get_note。
No output schemas documented. Tools return structured data (NoteDetail, SearchResult, CommentsResult, CreatorNotesResult) but LLMs cannot see field definitions, types, or required fields. This forces LLMs to guess what data is available and risks incorrect field access.
Descriptions are in Chinese only. While technically complete, English-speaking LLMs may struggle with non-English descriptions, reducing tool discoverability and selection accuracy. Descriptions should be in English or bilingual.
No tool annotations despite all tools being read-only. Adding readOnlyHint=true to all 4 tools would signal to agents that these operations are safe to retry and have no side effects.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2025-06-18+ | v2 |
Parameter constraints not formalized. 'page' parameter lacks min/max bounds (should be >=1). 'xsec_token' and 'note_id' lack format/pattern constraints. Enums should replace free-form strings where applicable.
Error handling is server-side only. RedGoError exceptions with codes (LOGIN_EXPIRED, RISK_CONTROL, CHROME_NOT_RUNNING) are well-structured internally but not exposed in tool definitions. LLMs cannot see what errors are possible or how to recover.