Skip to main content
Glama

mcp-easy-ai__wp_history_list

Read-only

List change-history entries for write operations performed via MCP. Filter by object, tool, user, or date range. Returns summaries only — call wp_history_get to see before/after payloads. Each item names its object in object_title (post or product title, term name, user display name; null when the object is gone, when you may not read it, or when more than five inherit attachments that each have a parent run in a row starting with it, following post_parent, or they loop (a cycle); callers with easy_mcp_ai_view_all_history are not refused for any reason but a gone object) and its user in user_login. Non-admin callers (without the easy_mcp_ai_view_all_history capability) cannot view other users' history: any wp_user_id filter they pass is silently overridden and pinned to their own user ID, with no error or notice. Through Royally: its server marks it read-only, so it runs straight away.

Input Schema

NameRequiredDescriptionDefault
limitNo
sinceNoGMT datetime, e.g. 2026-05-01 00:00:00
untilNo
actionNo
offsetNo
site_idNoSite to run this tool on: 8ef2e52b-bd07-4671-a363-ebe8b480b65c (https://demo.royalplugins.com)
audit_idNoFilter to one MCP request audit id.
object_idNo
tool_nameNo
wp_user_idNoFilter by originating user ID. Non-admin callers cannot filter by another user's ID — this is silently overridden with their own user ID.
auth_sourceNo
object_typeNoFilter by object type. Core content: post, term, user, comment, option. Term assignments: object_terms (object_id "{post_id}:{taxonomy}", before/after term_ids). Custom fields: meta (post meta), term_meta, user_meta, comment_meta. Network settings: site_option. WooCommerce: wc_product, wc_order. BuddyPress: bp_activity. Raw database capture: db_row (full before/after) and db_sql (statement only). Remote services: external. Free-form string rather than an enum, so a type added in a later release does not break existing callers.
oauth_client_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the bar is lower, yet the description adds real substance: the silent wp_user_id override for non-admins, the capability gating, and null object_title conditions. The dense parenthetical about inheritance/cycles is hard to parse and slightly obscures the value, but the behavioral disclosures are genuine and specific.

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 first two sentences are front-loaded and useful, but the object_title parenthetical is a rambling, difficult-to-parse clause about inherit attachments and cycles that undercuts readability. The final 'Through Royally' sentence is contextually odd filler.

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 13-param read-only list tool with no output schema, the description explains the summary shape (object_title, user_login), the get-for-details path, and permission behavior — enough to call it correctly. Missing coverage of pagination (limit/offset) and action filtering keeps it from full completeness.

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?

With 38% schema coverage many params (limit, offset, action, until, tool_name, object_id, auth_source, oauth_client_id) are undocumented anywhere. The description covers the wp_user_id override and the summary-field semantics and implies the filter dimensions, but several parameters remain unexplained in both places.

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 (list change-history entries for MCP write operations) and immediately differentiates from siblings: 'Returns summaries only — call wp_history_get to see before/after payloads.' An agent can distinguish it from wp_history_get and wp_history_diff without opening a 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?

Explicitly routes the agent to wp_history_get for before/after payloads and lists the available filters (object, tool, user, date range). It does not address when to prefer this over wp_history_diff or how to combine filters, so it falls short of a full when/when-not treatment.

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