Skip to main content
Glama
DevinChen2014

SocialDataX 小红书 Xiaohongshu XHS RedNote MCP

小红书 MCP | Xiaohongshu MCP | XHS MCP | RedNote MCP

This public repository provides public connection docs and MCP metadata for a hosted 小红书 MCP / Xiaohongshu MCP / XHS MCP / RedNote MCP service.

If you are looking for a 小红书 MCP, Xiaohongshu MCP, XHS MCP, or RedNote MCP for social media research workflows, this repository includes:

  • public MCP metadata and client configuration examples

  • the hosted streamable-http endpoint for clients that support remote MCP

  • an mcp-remote fallback example for command/stdio-only MCP clients

The business implementation is privately hosted. This repository exposes only the public connection surface for social media content intelligence workflows.

Search Aliases

Common search phrases for this MCP service:

  • 小红书 MCP

  • 小红书 数据 MCP

  • 小红书 搜索 MCP

  • 小红书 XHS MCP

  • Xiaohongshu MCP

  • Xiaohongshu data MCP

  • XHS MCP

  • XHS data MCP

  • RedNote MCP

  • RedNote data MCP

  • Xiaohongshu note search MCP

Related MCP server: RedNote MCP Server

Service

  • Hosted MCP endpoint: https://mcp.socialdatax.com/xhs/mcp

  • Hosted transport: streamable-http

  • Authentication: Authorization: Bearer <SOCIALDATAX_API_KEY>

  • Product: SocialDataX / 社媒数据助手

  • Website and API Key access: https://socialdatax.com/ai?from=github

  • Registry name: com.52choujiang/xhs-insights

  • Future registry name: com.socialdatax/xhs-insights

  • Current public capability version: 0.1.11. The hosted production tools/list, server card, and public GitHub repository are synchronized at 0.1.11 with all 24 tracked tools. The npm stdio bridge is published as xiaohongshu-xhs-rednote-mcp@0.1.11 and connects to the same hosted surface. The official Registry latest remains 0.1.10 pending publication of 0.1.11. Version 0.1.11 renames the public XHS product search/detail shop fields from seller_* to shop_*.

Platform MCP

Use the hosted streamable-http endpoint directly from clients that support authenticated remote MCP. For clients that only support command/stdio MCP servers, use mcp-remote as a local compatibility proxy.

npm stdio bridge

Requires Node.js 20.18.1 or later.

Command/stdio-only MCP clients can install and start the bridge directly from npm:

{
  "mcpServers": {
    "socialdatax-xhs": {
      "command": "npx",
      "args": ["-y", "xiaohongshu-xhs-rednote-mcp"],
      "env": {
        "SOCIALDATAX_API_KEY": "<SOCIALDATAX_API_KEY>"
      }
    }
  }
}

The package only forwards local stdio MCP messages to the hosted SocialDataX XHS endpoint. It does not contain the private service implementation or store the API Key.

Workflow Scope

This MCP service is designed for social media content intelligence workflows. It does not provide account login, posting, editing, liking, commenting, or other account actions.

Supported workflows include:

  • Query the current API Key account's SocialDataX points balance / 积分余额、剩余积分或点数.

  • Search related Xiaohongshu notes by keyword, with optional sort, note type, and publish-time filters.

  • Search Xiaohongshu products by keyword with page_token continuation.

  • Fetch product details by a complete sku_id supplied by the user or copied from product search results.

  • Fetch one PGY / 蒲公英 enhanced note detail from either a complete note_id or a note link, short link, or share text; successful calls cost 20 points and failures are not charged.

  • Fetch product reviews by a complete sku_id supplied by the user or copied from product search results.

  • Read the Xiaohongshu search hot list with title and heat value.

  • Read Xiaohongshu search suggestions for a keyword or partial phrase.

  • Resolve a shared note link, short link, or share text into structured note details.

  • Read note details when the caller already has a note ID.

  • Fetch paginated first-level comments for comment analysis.

  • Fetch paginated replies under a first-level comment.

  • Read creator profile data from a profile link, short link, share text, or user ID.

  • Fetch paginated creator note lists from a user ID, profile link, short link, or share text for content style and account research.

  • Fetch paginated tag page note lists from a topic URL, short link, share text, or page ID.

  • Submit a video note speech-to-text transcript task; the submit call may wait up to 240 seconds, and unfinished jobs should continue polling the same job_id until terminal.

Tools

Tool

Public purpose

socialdatax_get_points_balance

Query the current API Key account's SocialDataX points balance / 积分余额、剩余积分或点数.

xhs_search_notes

Search Xiaohongshu / 小红书 notes by keyword with optional sort, note type, publish-time filters, and page_token continuation. Use the corresponding detail tool when the caller already has a note link or note_id and needs one note's details; use the corresponding URL/ID tool for comments, replies, or speech-to-text. To continue search pagination, pass the full returned next_page_token back unchanged as page_token; omit page_token on the first request. In every use of a returned note_url, such as final answers, display, references, storage, output, or forwarding, preserve the full URL exactly, including xsec_token; do not rebuild links from note_id.

xhs_search_products

Search Xiaohongshu products by product name, brand, category, or product-related query, with page_token continuation. Use this tool for search terms; if a complete sku_id is already available, including one supplied by the user, use xhs_get_product_detail or xhs_get_product_reviews instead. Do not use product links, sku_id, spu_id, or page_token as the keyword. To continue product search pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_product_detail

Fetch Xiaohongshu product details by a complete sku_id supplied by the user or copied from xhs_search_products results. This tool does not accept spu_id, product links, or search keywords.

xhs_pgy_get_note_detail_by_note_id

Fetch one Xiaohongshu PGY / 蒲公英 enhanced note detail when the caller already has a complete note_id, including content, images or a video summary, author, exposure, reads, engagement counts, and image/video pricing. This is PGY commercial data, not ordinary public note detail; successful calls cost 20 points and failures are not charged.

xhs_pgy_get_note_detail_by_note_url

Fetch one Xiaohongshu PGY / 蒲公英 enhanced note detail from a complete note link, short link, or share text, with the same PGY commercial output. Successful calls cost 20 points and failures are not charged.

xhs_get_product_reviews

Fetch Xiaohongshu product reviews by a complete sku_id supplied by the user or copied from xhs_search_products results; accepts sort_type: general (comprehensive sort, the default) or time_descending, has_image, and page_token continuation. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses. This tool does not accept spu_id, product links, or search keywords.

xhs_get_product_review_replies

Fetch replies under a first-level Xiaohongshu product review. Use a user-provided review_id, or obtain one from xhs_get_product_reviews; accepts opaque page_token continuation. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses. This tool does not accept root_review_id.

xhs_get_search_hot_list

Get the Xiaohongshu / 小红书 search hot list with each item's title and heat value.

xhs_search_suggestions

Get Xiaohongshu / 小红书 search suggestions for a keyword or partial phrase, including suggestion text, search target, and an optional description.

xhs_get_note_detail_by_note_url

Resolve a shared XHS link, short link, or share text into structured note details. In every use of a returned note_url, such as final answers, display, references, storage, output, or forwarding, preserve the full URL exactly, including xsec_token; do not rebuild links from note_id. If note_url is null, do not synthesize or rebuild a public link from note_id.

xhs_get_note_detail_by_note_id

Fetch structured note details when the caller already has a note ID. If note_url is returned, preserve the full URL exactly in every use, such as final answers, display, references, storage, output, or forwarding, including xsec_token; do not rebuild links from note_id. If note_url is null, do not synthesize or rebuild a public link from note_id.

xhs_get_note_comments_by_note_id

Fetch paginated first-level comments when the caller already has a note ID; accepts optional comment sort_type: default, time_descending, or like_count_descending. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_note_comments_by_note_url

Fetch paginated first-level comments directly from a shared note URL, short link, or share text; accepts optional comment sort_type: default, time_descending, or like_count_descending. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_note_sub_comments_by_comment_id

Fetch paginated replies under a first-level comment by note ID and comment ID. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_user_info_by_user_id

Fetch creator profile data when the caller already has a user ID.

xhs_get_user_info_by_profile_url

Resolve a profile link, short link, or share text into creator profile data.

xhs_get_user_posted_notes_by_user_id

Fetch a paginated list of notes published by a creator when the caller already has a user ID. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_user_posted_notes_by_profile_url

Fetch a paginated list of notes published by a creator from a profile link, short link, or share text. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_topic_notes_by_topic_url

Fetch a paginated tag page note list from a topic URL, short link, or share text; accepts sort_type: hot or time_descending. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_get_topic_notes_by_page_id

Fetch a paginated tag page note list when the caller already has the tag page page_id; accepts sort_type: hot or time_descending. To continue pagination, pass the full returned next_page_token back unchanged as page_token; do not truncate, summarize, mask, or replace the middle with ellipses.

xhs_submit_video_speech_text_by_note_url

Submit a video note speech-to-text transcript task from a note link, short link, or share text. The submit call may wait up to 240 seconds; if unfinished, continue polling the same job_id until terminal.

xhs_submit_video_speech_text_by_note_id

Submit a video note speech-to-text transcript task from a note_id. The submit call may wait up to 240 seconds; if unfinished, continue polling the same job_id until terminal.

xhs_get_video_speech_text_job

Check a video note speech-to-text transcript job using a valid job_id supplied by the user, or a job_id returned by a submit tool; this tool does not accept note_id or note links and does not create a new task. Each call waits up to 240 seconds. If unfinished, continue querying the same job_id until terminal. This v1 surface returns transcript plus content context, not summary.

Quick Start

For clients that support authenticated streamable-http, use the hosted endpoint directly:

{
  "mcpServers": {
    "socialdatax-xhs": {
      "type": "streamable_http",
      "url": "https://mcp.socialdatax.com/xhs/mcp",
      "headers": {
        "Authorization": "Bearer <SOCIALDATAX_API_KEY>"
      }
    }
  }
}

A ready-to-copy example is available in examples/streamable_http_config.json.

For command/stdio-only MCP clients, use mcp-remote:

{
  "mcpServers": {
    "socialdatax-xhs": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.socialdatax.com/xhs/mcp",
        "--header",
        "Authorization: Bearer ${SOCIALDATAX_API_KEY}"
      ],
      "env": {
        "SOCIALDATAX_API_KEY": "<SOCIALDATAX_API_KEY>"
      }
    }
  }
}

Claude Code can use remote HTTP directly:

claude mcp add --transport http socialdatax-xhs https://mcp.socialdatax.com/xhs/mcp --header 'Authorization: Bearer ${SOCIALDATAX_API_KEY}'

Persist SOCIALDATAX_API_KEY in the runtime environment or client Secret before restarting Claude Code.

Claude Desktop should use its remote MCP / Connectors UI when available. If a local configuration file in your version only supports command/stdio servers, use the mcp-remote fallback.

Client Examples

Configuration examples are available in examples:

API Key

Request or manage API access from the product website:

https://socialdatax.com/ai?from=github

Use the key as a Bearer token in the Authorization request header. Do not commit real API Key values to code, docs, issues, or screenshots.

Directory Metadata

Public metadata files in this repository:

  • server-card.json: directory-oriented metadata for the hosted service. Official MCP Registry publishing uses the private source repo's registry/xhs/server.json for the current com.52choujiang/xhs-insights entry.

  • mcp.json: generic command/stdio fallback config using mcp-remote.

  • glama.json: Glama repository ownership metadata.

  • SUBMISSION_CHECKLIST.md: checklist for MCP directory submissions.

License

The files in this public repository are released under the MIT License. The license covers the public documentation and configuration examples in this repository only. It does not cover the managed service implementation, hosted infrastructure, or any private backend code outside this repository.

Available Tools

14 tools
xhs_get_note_comments_by_note_idA
Read-only

根据 note_id 获取单篇小红书笔记的一级评论,支持 sort_type 评论排序和 page_token 翻页。 返回的 next_page_token 是不透明分页令牌;继续翻页时必须将完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记、排序或评论链路,不能跨用户、笔记或评论链路复用;一级评论还不能跨排序复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_idYesnote_id 是 24 位小写十六进制稳定笔记 ID。必须原样复制搜索、详情、评论或用户发帖列表返回的完整 note_id;不得截断、缩写、脱敏、补全、格式化、重组,也不得只传前缀。
sort_typeNo评论排序方式,可选:default(默认/综合排序)、time_descending(最新评论优先)、like_count_descending(点赞最多优先)default
page_tokenNo分页令牌。首次请求留空;继续翻页时必须将上一页返回的完整 next_page_token 原样作为 page_token 传回。page_token 是不透明分页令牌,只绑定当前用户、笔记、排序或评论链路,不能跨用户、笔记或评论链路复用;一级评论还不能跨排序复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes当前页一级评论列表
comment_countYes整篇笔记的总评论数,含一级评论与回复;不是当前页 items 数量
next_page_tokenYes下一页不透明分页令牌;为空表示没有更多结果。继续翻页时必须将返回的完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。
top_level_comment_countYes整篇笔记的一级评论总数,不含回复;不是当前页 items 数量;无法获取时为 null

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds significant behavioral detail beyond annotations, especially regarding the opaque pagination token's binding to user, note, sort, and link, and the prohibition on modifying or reusing it. This is valuable for correct invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and then explains pagination. Every sentence is useful, though slightly verbose. It could be more concise but remains clear and structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description adequately covers the tool's purpose and parameters. It does not explain error handling or rate limits, but for a fetch tool with readOnlyHint and openWorldHint, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed descriptions already. The description repeats some info but adds context for pagination usage. It does not add substantial new semantic meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states '根据 note_id 获取单篇小红书笔记的一级评论', specifying the verb '获取' and resource '一级评论' for a single note. It distinguishes from siblings like xhs_get_note_sub_comments_by_comment_id which handles sub-comments.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly guides usage by focusing on top-level comments and explaining pagination with page_token. It does not explicitly list when to avoid this tool, but the context and sibling tools make differentiation clear. The pagination usage is well-explained.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_note_comments_by_note_urlA
Read-only

根据笔记链接、短链接或分享文案获取单篇小红书笔记的一级评论,支持 sort_type 评论排序和 page_token 翻页。 返回的 next_page_token 是不透明分页令牌;继续翻页时必须将完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记、排序或评论链路,不能跨用户、笔记或评论链路复用;一级评论还不能跨排序复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_urlYes小红书笔记链接、短链接或分享文案。支持以下形式:1) 小红书笔记长链接;2) xhslink.com / xhslink.cn / xhsurl.com / xhsurl.cn 短链接;3) 包含上述任一链接的完整分享文案。
sort_typeNo评论排序方式,可选:default(默认/综合排序)、time_descending(最新评论优先)、like_count_descending(点赞最多优先)default
page_tokenNo分页令牌。首次请求留空;继续翻页时必须将上一页返回的完整 next_page_token 原样作为 page_token 传回。page_token 是不透明分页令牌,只绑定当前用户、笔记、排序或评论链路,不能跨用户、笔记或评论链路复用;一级评论还不能跨排序复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes当前页一级评论列表
comment_countYes整篇笔记的总评论数,含一级评论与回复;不是当前页 items 数量
next_page_tokenYes下一页不透明分页令牌;为空表示没有更多结果。继续翻页时必须将返回的完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。
top_level_comment_countYes整篇笔记的一级评论总数,不含回复;不是当前页 items 数量;无法获取时为 null

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include readOnlyHint=true and openWorldHint=true, indicating a safe read operation. The description adds context about page_token binding rules and the fact that first-level comments cannot be reused across sorts, which goes beyond the annotations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is a single paragraph but covers core purpose, sorting, pagination, and token rules efficiently. It front-loads the main function. Every sentence adds value; no fluff. Could be slightly more structured with bullet points, but still good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of annotations, full schema coverage, and an output schema (implied), the description covers essential behavioral aspects. It explains pagination mechanics thoroughly. The only minor gap is explicit mention of the output format, but the output schema likely covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by explaining supported URL formats for note_url, enum options for sort_type, and detailed constraints for page_token (e.g., not modifying, not using across sorts). This enriches the parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves first-level comments of a Xiaohongshu note using the note URL, short link, or share text. It distinguishes from sibling tools like `xhs_get_note_comments_by_note_id` (which uses note ID) and `xhs_get_note_sub_comments_by_comment_id` (sub-comments). The verb '获取' and resource '一级评论' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit instructions for pagination (page_token handling, not modifiable, bound to user/note/sort) and sorting options. Does not explicitly state when to prefer this tool over the note_id variant, but the sibling list provides context. The guidelines are thorough for the intended use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_note_detail_by_note_idA
Read-only

根据 note_id 获取单篇小红书笔记详情。 返回的 note_url 非 null 时,在任何使用场景都必须原样保留完整 URL,包括 xsec_token 等 query 参数;例如最终回答、展示、引用、存储、输出或传递;不得用 note_id 重新拼接链接;note_url 为 null 时不要用 note_id 合成公开链接。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_idYesnote_id 是 24 位小写十六进制稳定笔记 ID。必须原样复制搜索、详情、评论或用户发帖列表返回的完整 note_id;不得截断、缩写、脱敏、补全、格式化、重组,也不得只传前缀。

Output Schema

ParametersJSON Schema
NameRequiredDescription
titleYes笔记标题
videoYes视频摘要信息;无可用视频摘要时为 null
authorYes作者信息;详情页不返回小红书号
contentYes笔记正文
note_idYesnote_id 是 24 位小写十六进制稳定笔记 ID。必须原样复制搜索、详情、评论或用户发帖列表返回的完整 note_id;不得截断、缩写、脱敏、补全、格式化、重组,也不得只传前缀。
note_urlYesnote_url 是可打开笔记内容所需的完整 URL。任何使用该返回链接的场景都必须原样保留完整 URL,包括 xsec_token 等 query 参数;例如最终回答、展示、引用、存储、输出或传递;不得修改、截断、脱敏、规范化、重组,也不得用 note_id 重新拼接链接。无法提供可用链接时为 null;note_url 为 null 时不要用 note_id 合成公开链接。
note_typeYes笔记类型;当前公开值固定为 image 或 video
like_countYes点赞数
topic_tagsYes笔记详情中的话题标签;无话题时为空数组
image_itemsYes图片结构化明细;每项都表示一张图片,Live 图会在对应项携带 live_photo 摘要
ip_locationYes笔记发布时的 IP 属地;没有 IP 属地时为空字符串
share_countYes分享数
update_timeYes更新时间,秒级 Unix 时间戳;没有有效更新时间时为 null
publish_timeYes发布时间,秒级 Unix 时间戳
collect_countYes收藏数
comment_countYes评论数
cover_image_urlYes统一封面图
mentioned_usersYes笔记正文中 @ 到的用户列表;无 @ 时为空数组

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint and openWorldHint. The description adds actionable behavioral detail about note_url handling, which is beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two focused sentences: one for purpose, one for critical usage rule. No redundancy or unnecessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with output schema present, the description is complete. It covers purpose, input constraint, post-usage rule, and is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description already fully covers the note_id parameter (100% coverage). The tool description does not add new semantic meaning about the parameter beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: fetching single note details by note_id. It distinguishes from sibling tools like xhs_get_note_detail_by_note_url by specifying the input identifier type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on handling the returned note_url, including preservation and when not to synthesize. While it doesn't explicitly compare with all siblings, the context implies appropriate use cases based on note_id vs URL.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_note_detail_by_note_urlA
Read-only

根据笔记链接、短链接或分享文案获取单篇小红书笔记详情。 返回的 note_url 在任何使用场景都必须原样保留完整 URL,包括 xsec_token 等 query 参数;例如最终回答、展示、引用、存储、输出或传递;不得用 note_id 重新拼接链接;note_url 为 null 时不要用 note_id 合成公开链接。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_urlYes小红书笔记链接、短链接或分享文案。支持以下形式:1) 小红书笔记长链接;2) xhslink.com / xhslink.cn / xhsurl.com / xhsurl.cn 短链接;3) 包含上述任一链接的完整分享文案。

Output Schema

ParametersJSON Schema
NameRequiredDescription
titleYes笔记标题
videoYes视频摘要信息;无可用视频摘要时为 null
authorYes作者信息;详情页不返回小红书号
contentYes笔记正文
note_idYesnote_id 是 24 位小写十六进制稳定笔记 ID。必须原样复制搜索、详情、评论或用户发帖列表返回的完整 note_id;不得截断、缩写、脱敏、补全、格式化、重组,也不得只传前缀。
note_urlYesnote_url 是可打开笔记内容所需的完整 URL。任何使用该返回链接的场景都必须原样保留完整 URL,包括 xsec_token 等 query 参数;例如最终回答、展示、引用、存储、输出或传递;不得修改、截断、脱敏、规范化、重组,也不得用 note_id 重新拼接链接。无法提供可用链接时为 null;note_url 为 null 时不要用 note_id 合成公开链接。
note_typeYes笔记类型;当前公开值固定为 image 或 video
like_countYes点赞数
topic_tagsYes笔记详情中的话题标签;无话题时为空数组
image_itemsYes图片结构化明细;每项都表示一张图片,Live 图会在对应项携带 live_photo 摘要
ip_locationYes笔记发布时的 IP 属地;没有 IP 属地时为空字符串
share_countYes分享数
update_timeYes更新时间,秒级 Unix 时间戳;没有有效更新时间时为 null
publish_timeYes发布时间,秒级 Unix 时间戳
collect_countYes收藏数
comment_countYes评论数
cover_image_urlYes统一封面图
mentioned_usersYes笔记正文中 @ 到的用户列表;无 @ 时为空数组

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint and openWorldHint. The description adds crucial behavioral context: preserving the full URL with xsec_token and not constructing URLs from note_id. This goes beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no wasted words. Front-loaded purpose in first sentence, followed by specific instructions. Could be slightly more concise but effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter tool with an output schema, the description covers usage constraints (URL preservation). No missing elements for the complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with a detailed parameter description. The main description adds value by instructing to preserve the URL as-is, which is not in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '获取' (get) and resource '笔记详情' (note detail), specifying input types (note link, short link, or sharing text). It distinguishes from the sibling tool 'xhs_get_note_detail_by_note_id' which uses note_id instead of URL.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool versus alternatives. It implies usage when a URL is available, but lacks when-not or alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_note_sub_comments_by_comment_idA
Read-only

根据 note_id 和一级评论 comment_id 获取二级评论。 返回的 next_page_token 是不透明分页令牌;继续翻页时必须将完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_idYesnote_id 是 24 位小写十六进制稳定笔记 ID。必须原样复制搜索、详情、评论或用户发帖列表返回的完整 note_id;不得截断、缩写、脱敏、补全、格式化、重组,也不得只传前缀。
comment_idYes一级评论 ID。可直接传一级评论结果中的 comment_id
page_tokenNo分页令牌。首次请求留空;继续翻页时必须将上一页返回的完整 next_page_token 原样作为 page_token 传回。page_token 是不透明分页令牌,只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes当前页二级评论列表
next_page_tokenYes下一页不透明分页令牌;为空表示没有更多结果。继续翻页时必须将返回的完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint. The description adds important behavioral context about the opaque pagination token (binding, non-modifiable), which is beyond annotations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences. First sentence states purpose, second explains pagination. Every sentence adds value; no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and full parameter descriptions, the description covers the core purpose and token behavior. It does not mention pagination limits or error cases, but these are not critical for a list tool with output schema. Overall complete enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameter descriptions are already detailed in the schema. The description does not add new meaning beyond what is in the schema; it only repeats token rules. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取二级评论' i.e., get sub-comments) and resource ('note_id 和一级评论 comment_id'). It unambiguously distinguishes from sibling tools that retrieve top-level comments.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains pagination token usage in detail, but does not explicitly state when to use this tool versus the top-level comment tools (e.g., 'first get top-level comments, then use this for replies'). The context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_search_hot_listA
Read-only

获取小红书搜索热榜。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes搜索热榜条目列表

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true and openWorldHint=true, indicating a safe read operation with potentially changing results. The description adds no behavioral context beyond these annotations, but does not contradict them. With annotations present, a score of 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence in Chinese, conveying the purpose with zero waste. It is appropriately sized for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, presence of an output schema (not shown), and annotations, the description is sufficient for a straightforward fetch tool. It could mention that the output is a list, but the output schema likely covers this. Completeness is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, so the schema covers 100%. The description is not required to explain parameters. A baseline of 4 is justified as no information is missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '获取' (get) and the resource '小红书搜索热榜' (Xiaohongshu search hot list). It is specific and distinguishes from sibling tools, which focus on notes, users, or comments. However, it lacks any additional context about the tool's scope or output.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not mention use cases, prerequisites, or exclusions, leaving the agent to infer its role among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_user_info_by_profile_urlA
Read-only

根据主页链接、短链接或分享文案获取单个小红书用户信息。

ParametersJSON Schema
NameRequiredDescriptionDefault
profile_urlYes小红书主页链接、短链接或分享文案。支持以下形式:1) xiaohongshu.com/user/profile/... 主页长链;2) xhslink.com / xhslink.cn / xhsurl.com / xhsurl.cn 短链接;3) 包含上述任一链接的完整分享文案。请传主页链接,不要传笔记链接。

Output Schema

ParametersJSON Schema
NameRequiredDescription
bioYes用户个人简介(biography);没有简介时为空字符串
nameYes用户名称
red_idYes用户公开小红书号;没有小红书号时为空字符串
user_idYes用户 user_id
verifiedYes是否已认证
avatar_urlYes用户头像链接;没有头像链接时为 null
ip_locationYes用户 IP 属地;没有 IP 属地时为空字符串
profile_urlYes用户主页链接;没有主页链接时为 null
profile_tagsYes主页头部标签名称列表;没有标签时为空数组
follower_countYes粉丝数
following_countYes关注数
posted_note_countYes已发布笔记数
verification_nameYes认证主体名称;没有认证主体时为空字符串
received_like_countYes用户内容累计收到的点赞数
is_enterprise_accountYes是否为企业账号
verification_categoryYes认证补充信息;可能是行业类目或认证主体名称;未认证或没有认证信息时为空字符串
received_collect_countYes用户内容累计被收藏数
is_professional_accountYes是否为专业号

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds no further behavioral context. It does not mention any additional traits beyond what annotations provide, and there is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that immediately conveys the tool's purpose with no extraneous content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and an existing output schema, the description is adequate. It does not cover edge cases, but the annotations and schema provide sufficient context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter description thoroughly listing supported input formats. The tool description does not add meaningful information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取'), resource ('用户信息'), and the input methods (profile link, short link, share text). It effectively distinguishes this tool from its sibling 'xhs_get_user_info_by_user_id' by specifying the input type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a profile URL is available, but it does not explicitly state when to use this tool versus alternatives like 'xhs_get_user_info_by_user_id'. No exclusions or alternative suggestions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_user_info_by_user_idA
Read-only

根据 user_id 获取单个小红书用户信息。

ParametersJSON Schema
NameRequiredDescriptionDefault
user_idYes小红书用户 user_id。请直接复制搜索结果、笔记详情、用户信息或用户发帖列表返回的 user_id/author.user_id;如果只有主页链接,请使用 profile_url 入口;不要传小红书号、昵称或主页名称

Output Schema

ParametersJSON Schema
NameRequiredDescription
bioYes用户个人简介(biography);没有简介时为空字符串
nameYes用户名称
red_idYes用户公开小红书号;没有小红书号时为空字符串
user_idYes用户 user_id
verifiedYes是否已认证
avatar_urlYes用户头像链接;没有头像链接时为 null
ip_locationYes用户 IP 属地;没有 IP 属地时为空字符串
profile_urlYes用户主页链接;没有主页链接时为 null
profile_tagsYes主页头部标签名称列表;没有标签时为空数组
follower_countYes粉丝数
following_countYes关注数
posted_note_countYes已发布笔记数
verification_nameYes认证主体名称;没有认证主体时为空字符串
received_like_countYes用户内容累计收到的点赞数
is_enterprise_accountYes是否为企业账号
verification_categoryYes认证补充信息;可能是行业类目或认证主体名称;未认证或没有认证信息时为空字符串
received_collect_countYes用户内容累计被收藏数
is_professional_accountYes是否为专业号

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

注释已提供 readOnlyHint 和 openWorldHint,描述未额外披露行为特性。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

一句话简洁明了,动词在前。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

结合注释和参数描述,基本完整,但未说明返回信息的具体范围。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

参数描述覆盖100%,且参数描述详细,但工具描述本身未增加语义。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

明确指定动作'获取'和资源'用户信息',且通过输入指定 user_id,与通过 profile_url 获取的兄弟工具区分开。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述明确指出使用场景为提供 user_id,虽然没有明确说不适合其他场景,但输入参数描述补充了使用建议。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_user_posted_notes_by_profile_urlA
Read-only

根据主页链接、短链接或分享文案获取用户已发布笔记列表。 返回的 next_page_token 是不透明分页令牌;继续翻页时必须将完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
page_tokenNo分页令牌。首次请求留空;继续翻页时必须将上一页返回的完整 next_page_token 原样作为 page_token 传回。page_token 是不透明分页令牌,只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。
profile_urlYes小红书主页链接、短链接或分享文案。支持以下形式:1) xiaohongshu.com/user/profile/... 主页长链;2) xhslink.com / xhslink.cn / xhsurl.com / xhsurl.cn 短链接;3) 包含上述任一链接的完整分享文案。请传主页链接,不要传笔记链接。

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes当前页用户发帖摘要列表
next_page_tokenYes下一页不透明分页令牌;为空表示没有更多结果。继续翻页时必须将返回的完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint, openWorldHint), the description details critical behavior: the next_page_token is opaque and bound to the current user/note/comment chain, cannot be reused across chains, and must be passed verbatim. This greatly helps the agent avoid misuse.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first for purpose, second for token rules. No fluff, front-loaded, and every sentence is essential. Excellent structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers input, output (implied list), and token handling. Output schema exists, so return values need no explanation. Sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining token behavior (page_token) and gives a caution for profile_url (not note link). This extra context justifies a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a user's posted notes list using a profile URL, short link, or share text. It specifies the exact input types, distinguishing it from sibling tools like xhs_get_user_posted_notes_by_user_id.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly tells when to use by specifying input (profile URL vs. user ID for siblings). However, it does not explicitly state when not to use or mention alternatives, leaving some room for ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_user_posted_notes_by_user_idA
Read-only

根据 user_id 获取用户已发布笔记列表。 返回的 next_page_token 是不透明分页令牌;继续翻页时必须将完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
user_idYes小红书用户 user_id。请直接复制搜索结果、笔记详情、用户信息或用户发帖列表返回的 user_id/author.user_id;如果只有主页链接,请使用 profile_url 入口;不要传小红书号、昵称或主页名称
page_tokenNo分页令牌。首次请求留空;继续翻页时必须将上一页返回的完整 next_page_token 原样作为 page_token 传回。page_token 是不透明分页令牌,只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes当前页用户发帖摘要列表
next_page_tokenYes下一页不透明分页令牌;为空表示没有更多结果。继续翻页时必须将返回的完整 next_page_token 原样作为 page_token 传回。next_page_token 只绑定当前用户、笔记或评论链路,不能跨用户、笔记或评论链路复用;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成,不得用省略号替换中间内容。

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds essential behavioral details on token binding and modification restrictions beyond annotations' readOnlyHint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise yet comprehensive; every sentence adds value, especially detailed token rules.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Fully covers pagination behavior and parameter usage; output schema exists, so return info not needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters have extensive descriptions adding context: user_id source, token handling rules.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states '获取用户已发布笔记列表' (get user's posted notes list) by user_id, distinguishing from sibling using profile_url.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides detailed instructions on pagination token usage, but does not explicitly state when to use this vs sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_get_video_speech_text_jobA
Read-only

查询小红书视频口播转文字任务状态;可选长轮询当前 job,不触发重处理。

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes口播转文字任务 ID。
wait_secondsNo可选长轮询等待秒数;0 表示只查询一次,最大 240 秒。

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorYes失败或过期时的稳定错误结构;非终态或成功时为 null。
job_idYes任务 ID。
statusYes任务状态。
messageYes面向用户/AI 的状态说明。
platformYes任务所属平台。
source_idYes任务来源 ID。
content_idYes平台内容 ID。
transcriptYes成功时的口播转文字结果;非终态或失败时为 null。
is_terminalYes是否已终态。
next_actionYes非终态时建议的下一步查询动作。
content_metaYes作品上下文信息,便于结合转写内容做口播分析。
content_typeYes内容类型。
next_poll_after_secondsYes建议下次查询前等待的秒数;非终态时可用。

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that the operation does not trigger reprocessing and explains the wait_seconds parameter's behavior (long polling vs one-shot), enhancing behavioral understanding beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese covering purpose and key behavioral note. It is concise and front-loaded, but lacks structured formatting (e.g., bullet points) that could improve readability for complex scenarios.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 2 parameters with 100% schema coverage and an output schema present, the description adequately covers the tool's purpose, parameters, and core behavior. However, it omits details like expected status values or response format, though the output schema likely covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters fully described in the input schema. The description restates that wait_seconds enables long polling but does not add novel meaning beyond what the schema already provides, hence a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool queries the status of a video speech-to-text job, specifying the resource ('小红书视频口播转文字任务状态') and action ('查询'). It distinguishes itself from submission siblings like 'xhs_submit_video_speech_text_by_note_url' by focusing on status retrieval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context by mentioning optional long polling ('可选长轮询当前 job') and noting that it does not trigger reprocessing ('不触发重处理'). This guides usage, though it does not explicitly state when to use this tool over siblings; however, the sibling list contrasts submission tools effectively.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_search_notesA
Read-only

按关键词搜索相关小红书笔记。 返回的 note_url 在任何使用场景都必须原样保留完整 URL,包括 xsec_token 等 query 参数;例如最终回答、展示、引用、存储、输出或传递;不得用 note_id 重新拼接链接。

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYes小红书搜索关键词
note_typeNo笔记类型筛选,可选:all(不限,默认)、image(图文)、video(视频)all
sort_typeNo搜索结果排序方式,可选:general(综合,默认)、time_descending(最新发布优先)、like_count_descending(最多点赞优先)、comment_count_descending(最多评论优先)、collect_count_descending(最多收藏优先)general
page_tokenNo搜索分页令牌。首次请求留空;继续翻页时传入上一页返回的 完整 next_page_token 原样作为 page_token 传回。page_token 只能用于同一关键词、排序、笔记类型、发布时间范围和调用方的搜索链路;不得修改、截断、缩写、脱敏、掩码、省略、规范化、重组或自行生成。
publish_time_rangeNo发布时间范围筛选,可选:all(不限,默认)、day(一天内)、week(一周内)、half_year(半年内)all

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes搜索结果中的笔记列表,已过滤非笔记卡片与不可公开笔记;当前页过滤后可能为空数组
next_page_tokenYes下一页不透明分页令牌;为空表示没有更多结果或无法继续 token 翻页。继续搜索时必须将完整 next_page_token 原样作为 page_token 传回。next_page_token 只能用于同一关键词、排序、笔记类型、发布时间范围和调用方的搜索链路。items 为空时不要单独据此判断结束。

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds an important behavioral rule: the returned note_url must be preserved exactly with all query parameters, and not reconstructed from note_id. This goes beyond annotation defaults and prevents misuse. However, it does not mention pagination behavior or result count limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two sentences: the first states the purpose concisely, the second provides a critical usage instruction. It is efficient with no redundancy. However, the second sentence is somewhat lengthy and could be broken into bullet points for better readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich input schema (5 params with full descriptions) and output schema existence, the description compensates by adding the URL preservation rule. It lacks a high-level summary of the return structure (list of notes with fields), but the output schema likely covers that. Pagination is handled in schema via page_token parameter description. Overall, it is fairly complete for a read-only search tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for all 5 parameters. The description adds no additional parameter information beyond what is already in the schema, so it meets the baseline without adding extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states '按关键词搜索相关小红书笔记' (search related Xiaohongshu notes by keyword), which is a specific verb+resource. It distinguishes from sibling tools like xhs_get_note_detail or xhs_get_search_hot_list. However, the description overshadows the purpose with a detailed instruction about URL handling, which slightly reduces clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives (e.g., xhs_get_search_hot_list for trending, xhs_get_user_posted_notes for user-specific notes). There is no mention of when not to use it or any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_submit_video_speech_text_by_note_idA

根据小红书 note_id 提交视频笔记口播转文字任务;提交完成后最多短等 210 秒,未完成时返回 job_id 和下一步查询动作。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_idYesnote_id 是 24 位小写十六进制稳定笔记 ID。必须原样复制搜索、详情、评论或用户发帖列表返回的完整 note_id;不得截断、缩写、脱敏、补全、格式化、重组,也不得只传前缀。

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorYes失败或过期时的稳定错误结构;非终态或成功时为 null。
job_idYes任务 ID。
statusYes任务状态。
messageYes面向用户/AI 的状态说明。
platformYes任务所属平台。
source_idYes任务来源 ID。
content_idYes平台内容 ID。
transcriptYes成功时的口播转文字结果;非终态或失败时为 null。
is_terminalYes是否已终态。
next_actionYes非终态时建议的下一步查询动作。
content_metaYes作品上下文信息,便于结合转写内容做口播分析。
content_typeYes内容类型。
next_poll_after_secondsYes建议下次查询前等待的秒数;非终态时可用。

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the async nature (submission, waiting, polling hint) and the return of job_id and next action. However, it does not mention required permissions, idempotency, or side effects (e.g., whether repeated submissions create duplicate tasks).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, compact sentence with no wasted words. It front-loads the key action and includes essential post-submission behavior. Could be slightly improved by separating input and output details, but still effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and sibling tools for retrieval, the description provides sufficient context for a submission tool: it explains the input, the waiting period, and what to do next. It does not need to detail return values as the output schema handles that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the only parameter note_id, and the schema already provides extensive detail (24-char hex, must be exact). The tool description adds no further semantic meaning beyond what the schema offers, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: submit a video note speech-to-text task using note_id. It distinguishes from sibling tool xhs_submit_video_speech_text_by_note_url by specifying the input is note_id, not URL. The description also explains the behavior after submission (wait up to 210s, return job_id and next action).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: it is for submitting a new transcription task, and after waiting briefly, the agent should use the returned job_id and next query action. However, it does not explicitly state when not to use this tool (e.g., for checking status) or mention alternatives like xhs_get_video_speech_text_job.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

xhs_submit_video_speech_text_by_note_urlA

提交小红书视频笔记口播转文字任务;提交完成后最多短等 210 秒,未完成时返回 job_id 和下一步查询动作。

ParametersJSON Schema
NameRequiredDescriptionDefault
note_urlYes小红书视频笔记链接、短链接或分享文案。

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorYes失败或过期时的稳定错误结构;非终态或成功时为 null。
job_idYes任务 ID。
statusYes任务状态。
messageYes面向用户/AI 的状态说明。
platformYes任务所属平台。
source_idYes任务来源 ID。
content_idYes平台内容 ID。
transcriptYes成功时的口播转文字结果;非终态或失败时为 null。
is_terminalYes是否已终态。
next_actionYes非终态时建议的下一步查询动作。
content_metaYes作品上下文信息,便于结合转写内容做口播分析。
content_typeYes内容类型。
next_poll_after_secondsYes建议下次查询前等待的秒数;非终态时可用。

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the asynchronous nature ('最多短等 210 秒'), the return of a job_id upon timeout, and a subsequent query action. This goes beyond the name to explain the tool's non-immediate behavior, though it doesn't cover error conditions or auth requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with two clauses, no wasted words. It front-loads the main purpose and efficiently adds the timeout behavior. Every part earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has one parameter, an output schema, and a straightforward async pattern, the description provides sufficient context: what the tool does, input needed, and the asynchronous result handling. It does not cover error scenarios, but the output schema likely handles that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameters with a clear description for 'note_url'. The tool description does not add additional parameter-specific meaning beyond what the schema already provides, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: '提交小红书视频笔记口播转文字任务' (submit a Xiaohongshu video note speech-to-text task). It also specifies the input via the tool name (note_url) and the asynchronous behavior (wait up to 210 seconds, return job_id). This distinguishes it from sibling tools like xhs_get_video_speech_text_job or xhs_submit_video_speech_text_by_note_id.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a usage flow (submit, wait, then query if incomplete) but does not explicitly state when to use this tool over alternatives, such as xhs_submit_video_speech_text_by_note_id. It hints at the next step ('返回 job_id 和下一步查询动作') but lacks explicit guidance on prerequisites or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 14 tool updatesv0.1.5
    • First observedxhs_get_note_comments_by_note_id
    • First observedxhs_get_note_comments_by_note_url
    • First observedxhs_get_note_detail_by_note_id
    • First observedxhs_get_note_detail_by_note_url
    • First observedxhs_get_note_sub_comments_by_comment_id
    • First observedxhs_get_search_hot_list
    • First observedxhs_get_user_info_by_profile_url
    • First observedxhs_get_user_info_by_user_id
    • First observedxhs_get_user_posted_notes_by_profile_url
    • First observedxhs_get_user_posted_notes_by_user_id
    • First observedxhs_get_video_speech_text_job
    • First observedxhs_search_notes
    • First observedxhs_submit_video_speech_text_by_note_id
    • First observedxhs_submit_video_speech_text_by_note_url

TDQS

A4.2/5.0

Scored across 14 tools

Disambiguation5/5

Each tool targets a distinct resource or action (note detail, comments, user info, search, etc.), and variants for URL vs ID are clearly differentiated. No two tools have overlapping purposes.

Naming Consistency5/5

All tools follow the 'xhs_verb_noun' pattern in snake_case consistently. Verbs like 'submit', 'get', 'search' are used uniformly, and nouns clearly describe the resource.

Tool Count5/5

14 tools cover a broad but focused set of operations for interacting with Xiaohongshu data. The count is well-scoped without being excessive or insufficient.

Completeness5/5

The server covers all major read operations: note detail, search, hot list, comments (main and sub), user info, user posts, and video speech text. There are no obvious gaps for its intended analysis purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    Enables users to search and retrieve content from Xiaohongshu (Red Book) platform with smart search capabilities and rich data extraction including note content, author information, and images.
    1
    54
    28
    MIT
  • F
    license
    C
    quality
    Not graded
    maintenance
    A Model Context Protocol (MCP) server that enables AI assistants to search, retrieve, and analyze content from Xiaohongshu (Little Red Book), providing access to notes, user information, and trending topics.
    6
    1
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for automating Xiaohongshu (RED Note). Publish posts, search content, comment, like, and analyze creator data on China's largest lifestyle social platform.
    24
    MIT