Skip to main content
Glama

列出文章

list_articles

Retrieve a CSDN account's articles, including drafts, with optional filters for state and title.

Instructions

列出账号的文章。scope="published"(默认)走公开接口、不需要 Cookie,只含已发布文章;scope="all" 走作者后台接口、需要 Cookie,包含草稿,并在 counts 里给出 draft/publish 等分类计数——这是唯一能回答「我有哪些草稿」的口径(公开接口看不到草稿,get_article 又要先知道 id)。注意后台接口的每页条数由 CSDN 服务端固定,page_size 传入后可能被忽略,返回的 pageSize 是实际值。state / title_contains 是本地筛选(CSDN 接口没有这两个参数):会自动多翻几页凑够匹配项(最多 5 页),返回的 total 仍是 CSDN 的总数。不要用它判断某篇文章是否发布成功——看不到不等于没发布,请用 verify_article。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo
scopeNo
stateNo
page_sizeNo
title_containsNo标题包含的关键词(不区分大小写),本地筛选

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.0.4
    • addedInput schema / properties / state
      Added value: +{
      +  "enum": [
      +    "draft",
      +    "published",
      +    "reviewing",
      +    "rejected",
      +    "unknown"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / title_contains
      Added value: +{
      +  "description": "标题包含的关键词(不区分大小写),本地筛选",
      +  "minLength": 1,
      +  "type": "string"
      +}
  2. First observedv1.0.1

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and delivers: auth requirements per scope (Cookie needed only for scope=all), what each scope includes (drafts vs published only), the fact that page_size may be silently ignored and pageSize reflects the real value, and that state/title_contains trigger local over-fetch up to 5 pages while total stays CSDN's count. This is unusually rich disclosure beyond the schema.

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?

Front-loaded with purpose, then scoping, then caveats. Dense but every clause conveys non-obvious behavior; a slight compaction of the repeated scope explanation would tighten it further.

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?

No output schema exists, yet the description still names the counts field and the returned pageSize, covering the essential return shape. For a 5-param list tool with no annotations, this is nearly complete; pagination edge cases beyond the pageSize note are the only gap.

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?

Schema description coverage is only 20%, so the description must compensate and does: it defines both scope values, explains that state/title_contains are local filters absent from the CSDN API, and warns that page_size may be overridden. Only the trivial `page` param is left implicit.

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?

States a specific verb+resource (列出账号的文章) and immediately splits its behavior by scope, making it distinguishable from siblings like get_article and verify_article without opening any schema.

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

Usage Guidelines5/5

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

Explicitly routes the agent: scope="all" is named as the only way to answer 'what drafts do I have', and it ends with a clear when-NOT-to-use ('不要用它判断某篇文章是否发布成功…请用 verify_article'). Alternatives are named, not implied.

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