Skip to main content
Glama

Run a security check

fleet__security_triage
Read-onlyIdempotent

Run Royal MCP's read-only security check on each chosen site (up to 50), for sites you suspect were compromised, and return one combined result. Optional site_ids (default every connected site), since (a date such as 2026-10-17: flags plugins, must-use plugins, drop-ins and upgrade folder leftovers changed after it, and counts administrators registered after it), plugin_names (up to 50 plugin slugs or folder names from a published advisory, looked for among regular, unregistered, must-use and drop-in files), option_patterns (up to 20 option names, optionally with one * at the start or end, at least 6 characters besides it; reports present and count only) and checks (any of mu_plugins, unregistered_plugin_folders, plugins, users, option_patterns, upgrade_folder; default all). Per site: summary and indicators (what the site found, in its own words), partial (a size or time limit cut a check short), checks_run and checks_skipped, report (the facts: mu_plugins and dropins with modified dates, mu_plugins_other_entries, unregistered_plugin_folders, plugins with folder and main file modified dates, users_with_extra_caps with roles, capabilities and registration dates, the administrators count, option_patterns, upgrade_folder and indicator_hits, as each check returns them), guardpress (where GuardPress is active: its security_score and security_grade, last_scan and up to 50 scan findings; otherwise active: false) and receipt_id (each site's check is recorded). No secrets, emails or usernames are returned. A summary with no indicators means none were found among the checks run, never that the site is clean. Changes nothing on the sites; sites whose Royal MCP lacks the check come back as errors.

Input Schema

NameRequiredDescriptionDefault
sinceNoA date such as 2026-10-17 or 2026-10-17T00:00:00Z: flag what changed or was registered after it.
checksNoOnly these checks. Default: all.
site_idsNoRestrict to these site ids. Omit for every eligible site.
plugin_namesNoPlugin slugs or folder names from a published advisory to look for.
option_patternsNoOption names, optionally with one * at the start or end (at least 6 characters besides it).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Although annotations already declare readOnly/idempotent/non-destructive, the description adds substantial context annotations cannot express: per-site caps (50 sites, 50 plugins, 20 patterns), a non-obvious correctness caveat that an empty summary never proves a site is clean, the meaning of `partial`, that no secrets/emails/usernames leave the site, and the receipt_id audit trail. It is fully consistent with readOnlyHint=true ("Changes nothing on the sites").

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?

Almost every clause earns its place, and purpose precedes parameters which precede return shape, so it is front-loaded. However the whole thing is one dense run-on paragraph with no separation between input semantics, output shape and caveats, which makes it hard to scan in a tool-selection context.

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 carries the return contract itself: per-site summary, indicators, partial, checks_run/checks_skipped, the detailed report fields, guardpress payload and receipt_id are all enumerated. Combined with parameter semantics and failure behavior, an agent has everything needed to call and interpret it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, yet the description goes well past it: `since` is explained as flagging changes to plugins/mu-plugins/drop-ins/upgrade leftovers and admin registrations after that date, `plugin_names` as matched against regular, unregistered, must-use and drop-in files, and `option_patterns` as returning presence and count only under a single-`*` prefix/suffix rule. This is meaning the schema does not carry.

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?

Opens with a specific verb, resource and scope: a read-only security check across up to 50 chosen sites returning one combined result, then enumerates exactly what is inspected (plugins, mu-plugins, drop-ins, upgrade folder, users, options, GuardPress). The main gap is that it never distinguishes itself from the near-identical fleet__scan_security or recipe__run_security_sweep siblings, so an agent must infer the boundary from the parameter detail alone.

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?

"For sites you suspect were compromised" supplies a clear triggering condition, and the closing note that sites without the check return errors tells the caller when to expect failure. There is no explicit when-not or named alternative tool, so the routing guidance stops short of the top score.

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