Skip to main content
Glama

mcp-easy-ai__wp_list_menus

Read-only

Lists the WordPress navigation menus (nav_menu taxonomy terms), 100 per page, ordered by name. Optional: page (1-based, default 1; total_pages says how many there are). Returns { menus: [{ id, name, slug, description, locations, count, term_group, term_taxonomy_id, taxonomy, parent }], total, total_pages, page, per_page }. locations lists the theme locations the menu is assigned to ([] when none); count is WordPress's stored term count, which counts published items only (draft items added on the Menus screen but not saved are left out). Does not return the items themselves — use wp_list_menu_items for that. Requires WordPress 5.9+. Through Royally: its server marks it read-only, so it runs straight away.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number (1-based), 100 menus per page. Default: 1.
site_idNoSite to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses page size and ordering, the exact response envelope, that `locations` is empty when the menu is unassigned, and that `count` reflects only published items (unsaved draft items are excluded). It also explains the execution path across the gateway ("its server marks it read-only, so it runs straight away"), which is real permission/latency context an agent can't get from 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 the core behavior in sentence one, then progressively adds pagination, return shape, field semantics, and constraints. Dense but every clause carries information; the tail note about the Royally gateway is mildly verbose but still actionable.

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, and the description compensates by enumerating the full response object (menus array fields, total, total_pages, page, per_page). Combined with the prerequisite and sibling handoff, an agent has everything needed to call and interpret this tool correctly.

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 is 3, but the description adds value the schema does not: it links `page` to `total_pages` so the agent knows how to paginate, and notes the 100-per-page cap. It doesn't discuss the `site_id` enum, but that parameter is fully self-documented and single-valued.

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?

Specific verb + resource with scope and ordering: lists WordPress navigation menus (nav_menu taxonomy terms), 100 per page, ordered by name. It explicitly distinguishes itself from the sibling wp_list_menu_items, which lists the items inside a menu, so an agent can pick correctly 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 explicitly ("Does not return the items themselves — use `wp_list_menu_items` for that") and states a prerequisite (WordPress 5.9+). The positive trigger — use this to discover menu IDs/slugs before fetching items — is only implied rather than stated, which keeps it short of a full 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