Skip to main content
Glama

mcp-easy-ai__wp_list_menu_items

Read-only

Lists all items in a WordPress navigation menu (published items; 100 per page by default). Each item includes: type (custom=custom URL, post_type=links to a post/page, taxonomy=links to a term, post_type_archive), type_label (the label wp-admin shows for that type, e.g. "Page", "Custom Link"), title (as displayed, after title filters, tags stripped), title_raw (the item's own title as stored, or for an item without one the linked post's or term's title, before the menu item's display filters and without tag stripping), url, object (post type or taxonomy slug, e.g. "post", "page", "category"), object_id (the ID of the linked post/term for post_type and taxonomy items), menu_order (1-based position), parent (parent item ID, 0 if top-level), target ("_blank" or "" for the same tab), attr_title (the link's title attribute), description, classes (array of CSS classes) and xfn (array of link relationship values). Through Royally: its server marks it read-only, so it runs straight away.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number (1-based). Default: 1.
menu_idYesThe ID of the menu to retrieve items from.
site_idNoSite to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com)
per_pageNoNumber of items per page (1–100). Default: 100.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already cover read-only/non-destructive, but the description adds real behavioral context: it notes the server marks it read-only so it runs immediately, that only published items are returned, and the default page size. The long field-by-field account of the response shape compensates for the absent output schema, though it stops short of saying how to detect the last page or whether a total count is returned.

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 key scoping sentence is front-loaded, which is good, but the remainder is one enormous run-on sentence enumerating a dozen fields, which is hard to scan. The content is mostly warranted given no output schema, yet it could have been structured as a short list rather than dense prose.

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?

With no output schema, describing every returned field is genuinely necessary and is done thoroughly, and the read-only/pagination context is present. The main gap is pagination termination and how menu_id is sourced, which an agent would need to call this reliably across multiple pages.

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%, so the schema already documents page, per_page, site_id and menu_id. The description's only added parameter meaning is the '100 per page by default' pagination note, which largely restates the per_page default; menu_id's provenance is never explained.

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 opening sentence gives a specific verb and resource ("Lists all items in a WordPress navigation menu") plus scope (published items, 100 per page). It implicitly distinguishes itself from menu-level siblings like wp_list_menus / wp_get_menus by being about items, but it never names the closest sibling (royal-mcp__wp_get_menu_items) explicitly.

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?

There is no statement of when to use this versus alternatives such as wp_get_menu_items, wp_get_menu, or wp_reorder_menu_items, and no note that menu_id must first be obtained from a menu-listing call. Usage is only inferable from the tool name and the 'published items' scope.

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