Skip to main content
Glama

mcp-easy-ai__wp_list_users

Read-only

Lists WordPress users. Optional: search (matches name/username/email; wrapped in * wildcards unless search_exact is true), roles (array of role slugs — e.g. ["editor","author"] — OR operation), per_page (default 10, max 100), page, orderby (id/name/registered_date/email/slug/url, or WP_User_Query's login/post_count/meta_value/meta_value_num), order (asc/desc). WP_User_Query filters: role (role slugs the user must ALL hold, or ["none"] for users with no role on this site), role__not_in, capability (capabilities the user must all have), capability__not_in, login, login__in, login__not_in, nicename, nicename__in, nicename__not_in, include, exclude (user IDs), has_published_posts (post types), search_columns, and meta_key with optional meta_value/meta_compare/meta_type — a meta filter is refused for a key wp_get_user_meta would withhold from this caller. network (multisite, super admin with manage_network_users) lists every user of the network instead of this… Through Royally: its server marks it read-only, so it runs straight away.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number for pagination.
roleNoRole slugs the user must hold ALL of (WP_User_Query `role`). ["none"] alone lists the users who have no role on this site.
loginNoExact user login.
orderNoSort direction.asc
rolesNoArray of role slugs to filter by (e.g. administrator, editor, author).
searchNoSearch query to filter users.
excludeNoExclude these user IDs.
includeNoOnly these user IDs.
networkNoMultisite only: list every user of the network (WP_User_Query blog_id 0) instead of this site. Needs a super admin with manage_network_users. `roles` in the result are each user's roles on this site.
orderbyNoField to order results by. login, post_count (published posts of type post, plus the private ones you may read), meta_value and meta_value_num (both need meta_key) are WP_User_Query orderings.id
site_idNoSite to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com)
meta_keyNoOnly users with this user meta key (and, with meta_value, this value). Refused for a key wp_get_user_meta would withhold from you. Required by meta_value, meta_compare, meta_type and the meta_value orderings.
nicenameNoExact user_nicename (the URL slug).
per_pageNoNumber of users per page (1-100).
login__inNoOnly these user logins.
meta_typeNoCast applied to the stored value before comparing. Needs meta_key.
capabilityNoCapabilities the user must have ALL of, through a role or a direct grant (WP_User_Query `capability`, WordPress 5.9+).
meta_valueNoValue compared with meta_key's value. Needs meta_key.
meta_compareNoComparison between the stored value and meta_value (default "="). Needs meta_key.
nicename__inNoOnly these user_nicename values.
role__not_inNoExclude users holding any of these roles.
search_exactNoWhen true, `search` is passed to WP_User_Query as typed, without the leading and trailing `*` the REST API adds: an exact match unless the query itself starts or ends with `*` (WP-CLI semantics). Requires `search`.
login__not_inNoExclude these user logins.
search_columnsNoUsers-table columns `search` looks in (WP_User_Query names). Requires `search`.
nicename__not_inNoExclude these user_nicename values.
capability__not_inNoExclude users having any of these capabilities.
has_published_postsNoOnly users with at least one published post of these post types (each must be registered).
include_capabilitiesNoAdd capabilities (every capability the user has), extra_capabilities (the user's own capability map) and cap_key (the user meta key that stores it) to each user.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already mark it read-only and non-destructive, and the description adds useful behavioral details such as meta filters being refused for keys wp_get_user_meta would withhold and network mode requiring manage_network_users. It also repeats the read-only execution context, which aligns with the annotations rather than contradicting them.

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

Conciseness3/5

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

The description is front-loaded with the core purpose but then becomes a dense, run-on parameter reference that substantially duplicates the schema. It is relevant to the tool's 28 parameters, but it would be more usable if structured and trimmed.

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 28-parameter list tool with full schema descriptions and read-only annotations, the definition covers the important filtering, permission, and refusal behaviors thoroughly. The main gap is that it does not describe the return shape or pagination metadata, which matters somewhat because there is no output schema.

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 the baseline would be 3, but the description adds real meaning beyond the schema: search wildcard wrapping unless search_exact is true, roles as OR versus role as ALL, and the ['none'] role case. It still omits a few parameters like site_id and include_capabilities, so it is not complete enough for a 5.

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 opens with a clear verb and resource: "Lists WordPress users." It is unambiguous about the core operation, but it does not distinguish this tool from sibling user-listing or single-user tools such as mcp-easy-ai__wp_get_user or royal-mcp__wp_get_users.

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 enumerates many filters but never states when to use this tool instead of alternatives like wp_get_user for a single user or another user-listing endpoint. There are some contextual notes, such as network requiring a super admin, but no explicit when-to-use or when-not-to-use guidance.

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