Skip to main content
Glama

List comments

wp_list_comments
Read-onlyIdempotent

List comments, newest first, optionally filtered by status, post and search text. Returns comments: [{comment_id, post_id, author, content, status, date}]; status is "approved", "unapproved", "spam" or "trash", date is RFC 3339 in site time. Paged with per_page and page; no total count is returned, and a page past the end is empty. Needs moderate_comments. Read-only; wp_get_comment returns one comment with its parent. Forwarded by AlphaBridge Connect to the one site this connection reaches.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, starting at 1. Default 1.
searchNoText matched against the comment content and the author's name, email, URL and IP.
statusNoapprove (approved), hold (pending), spam, trash or all. Default "all", which covers approved and pending comments, not spam or trash; any other value counts as all.all
post_idNoOnly comments on this post id. Default 0: comments on all posts.
per_pageNoComments per page, 1–100; other values are clamped. Default 20.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changed
    • addedInput schema / properties / page / default
      Added value: +1
    • addedInput schema / properties / page / description
      Added value: +"Page number, starting at 1. Default 1."
    • addedInput schema / properties / per_page / default
      Added value: +20
    • addedInput schema / properties / per_page / description
      Added value: +"Comments per page, 1–100; other values are clamped. Default 20."
    • addedInput schema / properties / post_id / default
      Added value: +0
    • addedInput schema / properties / post_id / description
      Added value: +"Only comments on this post id. Default 0: comments on all posts."
    • addedInput schema / properties / search / description
      Added value: +"Text matched against the comment content and the author's name, email, URL and IP."
    • addedInput schema / properties / status / default
      Added value: +"all"
    • changedInput schema / properties / status / description
      Previous value: -"approve, hold, spam, trash, all."New value: +"approve (approved), hold (pending), spam, trash or all. Default \"all\", which covers approved and pending comments, not spam or trash; any other value counts as all."
  2. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive), and the description goes well beyond them: the required capability (moderate_comments), the exact return shape, that no total count is returned, and that a page past the end is empty. It also discloses date formatting and site-time semantics.

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 and ordering, then return shape, then pagination caveats, then capability and sibling routing. Dense but every clause carries information; only the trailing forwarding sentence sits slightly apart from the operational content.

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?

There is no output schema, so the description's inline return shape, pagination behavior, and empty-page semantics are exactly the context an agent needs. With annotations covering safety, nothing operationally important is missing.

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 all five parameters are already documented and the baseline is 3. The description adds little parameter detail, and its status vocabulary ('approved', 'unapproved') does not match the schema's accepted values ('approve', 'hold', 'all'), which could mislead an agent rather than clarify.

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 and resource ('List comments, newest first') plus the three filters available. It explicitly distinguishes itself from the sibling wp_get_comment, so an agent can choose between list and single-fetch without opening either schema.

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?

Names the alternative (wp_get_comment for one comment with its parent) and explains the default status scope, which effectively tells the agent that spam and trash are excluded unless requested. It stops short of explicit when-not guidance (e.g. use wp_search for cross-entity search), so not a 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources