This server has fundamental quality gaps across naming, descriptions, schemas, and error handling. While tool names follow a verb_noun pattern reasonably well, parameter descriptions are minimal or missing entirely, input schemas lack proper type declarations, output schemas are undocumented, and error handling provides no guidance for LLM recovery. The server implements 6 tools for interacting with Xiaohongshu (a Chinese social media platform), but the definitions are too sparse for production LLM use. The codebase shows working API integration but poor tool design for agentic systems.
检测cookie是否失效
获取笔记评论,参数url要带上xsec_token
获取笔记内容,参数url要带上xsec_token
获取首页推荐笔记
发布评论到指定笔记
根据关键词搜索笔记
No documented output schemas. LLMs cannot reason about response structure or extract fields needed for chaining. All tools return formatted strings, but the underlying data model (which fields are available, which are safe to extract) is invisible.
Parameter descriptions are minimal or absent. 'url', 'keywords', 'comment', 'note_id' lack constraints, format specifications, or validation rules. LLMs cannot validate input before calling and risk sending malformed requests.
post_comment is a WRITE operation (irreversible) but the description does not state this. LLMs cannot distinguish safe-to-retry reads from destructive writes. No dry-run, confirmation, or compensation mechanism is offered.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 13 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 36 | - | v1 |
No error handling guidance. Tools return success/failure but do not guide LLMs on what to do when a call fails. E.g., post_comment failure: is the cookie invalid? Is the note_id malformed? Is the comment content rejected?
No pagination or result limits documented. home_feed and search_notes return formatted strings with an arbitrary number of results. Large result sets will bloat context or truncate silently, breaking downstream reasoning.
Tool descriptions are in Chinese and very brief (10 - 30 chars). Even when translated, they lack context on WHEN to use each tool (e.g., when to call home_feed vs search_notes), WHAT the return format is, and WHAT to do on failure.
XHS_COOKIE is injected via environment variable (good), but there is no documentation of authentication flow, cookie expiration, or what happens if the cookie is invalid. The check_cookie tool exists but is not positioned as a mandatory prerequisite before other calls.
Tool parameter types are not explicitly declared in the schema. The code shows 'keywords: str' and 'url: str' and 'comment: str' and 'note_id: str', but without formal JSON Schema type declarations, the LLM cannot validate before calling.