@prefix sioc: <http://rdfs.org/sioc/ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix content: <http://purl.org/rss/1.0/modules/content/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

<https://lhero.org/portfolio/lh-block-and-shortcode-auditor/>
  a sioc:Post ;
  dc:title "MCP abilities" ;
  dcterms:identifier 147634 ;
  dc:modified "2026-10-15T01:46:08Z"^^xsd:dateTime ;
  dc:created "2026-09-16T22:50:50Z"^^xsd:dateTime ;
  sioc:link <https://lhero.org/portfolio/lh-block-and-shortcode-auditor/mcp-abilities/> ;
  sioc:has_creator <https://lhero.org/author/1/#account> ;
  sioc:has_container <https://lhero.org/#posts> ;
  content:encoded "<ul class=\"lh_portfolio-meta\"><li><strong>Part of:</strong> <a href=\"https://lhero.org/portfolio/lh-block-and-shortcode-auditor/\">LH Block and Shortcode Auditor</a></li></ul><div class=\"lh_portfolio-ability-reference\"><ul class=\"lh_portfolio-ability-reference-index\"><li><a href=\"#ability-find-tag-usage\"><code>find-tag-usage</code></a> Find Tag Usage</li><li><a href=\"#ability-get-site-report\"><code>get-site-report</code></a> Get Site Report</li><li><a href=\"#ability-list-sites\"><code>list-sites</code></a> List Sites</li><li><a href=\"#ability-rescan-site\"><code>rescan-site</code></a> Rescan Site</li></ul><section class=\"lh_portfolio-ability-reference-ability\" id=\"ability-find-tag-usage\"><h2>Find Tag Usage</h2><p class=\"lh_portfolio-ability-reference-meta\"><code>lh-block-and-shortcode-auditor/find-tag-usage</code> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-readonly\">Read-only</span> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-idempotent\">Idempotent</span></p><p>Finds where a block or shortcode is used across the network, from each site&#039;s last content scan. Returns a per-site summary (whether the tag is registered on that site, its provider, uses and item count) and a paged list of the posts, templates and widgets using it, each with title, status, occurrences and edit and view URLs. Pass tag as the full block name (e.g. tribe/event-datetime) or the bare shortcode tag without brackets. Optionally limit to one <code>site_id</code> or one <code>object_status</code>. Requires <code>install_plugins</code>; main site only.</p><figure class=\"wp-block-table lh_portfolio-ability-reference-params\"><table><thead><tr><th>Parameter</th><th>Type</th><th>Required</th><th>Default</th><th>Description</th></tr></thead><tbody><tr><td><code>tag</code></td><td>string</td><td>Yes</td><td></td><td>Block name or shortcode tag (no brackets). Exact match.</td></tr><tr><td><code>tag_type</code></td><td>string</td><td>No</td><td></td><td>Omit to match both. One of: <code>block</code>, <code>shortcode</code>.</td></tr><tr><td><code>site_id</code></td><td>integer</td><td>No</td><td></td><td>Limit to one site. Omit for the whole network.</td></tr><tr><td><code>object_status</code></td><td>string</td><td>No</td><td></td><td>Limit items to one post status, e.g. publish or draft.</td></tr><tr><td><code>per_page</code></td><td>integer</td><td>No</td><td><code>100</code></td><td>Items per page, 1 to 500. Default 100.</td></tr><tr><td><code>page</code></td><td>integer</td><td>No</td><td><code>1</code></td><td>Page of items, from 1. Default 1.</td></tr></tbody></table></figure></section><section class=\"lh_portfolio-ability-reference-ability\" id=\"ability-get-site-report\"><h2>Get Site Report</h2><p class=\"lh_portfolio-ability-reference-meta\"><code>lh-block-and-shortcode-auditor/get-site-report</code> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-readonly\">Read-only</span> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-idempotent\">Idempotent</span></p><p>Returns one site&#039;s blocks and shortcodes, with whether each is registered, its provider and how often it is used. They come from its last registry capture and content scan: each tag with whether it is registered on that site, the plugin, theme or namespace that provides it, its total uses and the number of posts or widgets using it. Filter by <code>tag_type</code>, by registration (use unregistered to find content left behind by removed plugins), or by a search on tag or provider. Use find-tag-usage to list the items using a specific tag. Requires <code>install_plugins</code>; main site only.</p><figure class=\"wp-block-table lh_portfolio-ability-reference-params\"><table><thead><tr><th>Parameter</th><th>Type</th><th>Required</th><th>Default</th><th>Description</th></tr></thead><tbody><tr><td><code>site_id</code></td><td>integer</td><td>Yes</td><td></td><td>Site ID, as returned by list-sites.</td></tr><tr><td><code>tag_type</code></td><td>string</td><td>No</td><td></td><td>Only blocks or only shortcodes. Omit for both. One of: <code>block</code>, <code>shortcode</code>.</td></tr><tr><td><code>registration</code></td><td>string</td><td>No</td><td><code>&quot;all&quot;</code></td><td>all (the default), registered, or unregistered to find tags no longer provided by any active plugin or theme. One of: <code>all</code>, <code>registered</code>, <code>unregistered</code>.</td></tr><tr><td><code>search</code></td><td>string</td><td>No</td><td></td><td>Substring match on tag or provider.</td></tr><tr><td><code>orderby</code></td><td>string</td><td>No</td><td><code>&quot;usage_count&quot;</code></td><td>Sort field: total uses (the default), number of items using the tag, tag name or provider. One of: <code>usage_count</code>, <code>object_count</code>, <code>tag</code>, <code>provider</code>.</td></tr><tr><td><code>order</code></td><td>string</td><td>No</td><td><code>&quot;desc&quot;</code></td><td>Sort direction. Default desc. One of: <code>asc</code>, <code>desc</code>.</td></tr><tr><td><code>per_page</code></td><td>integer</td><td>No</td><td><code>100</code></td><td>Tags per page, 1 to 500. Default 100.</td></tr><tr><td><code>page</code></td><td>integer</td><td>No</td><td><code>1</code></td><td>Page of tags, from 1. Default 1.</td></tr></tbody></table></figure></section><section class=\"lh_portfolio-ability-reference-ability\" id=\"ability-list-sites\"><h2>List Sites</h2><p class=\"lh_portfolio-ability-reference-meta\"><code>lh-block-and-shortcode-auditor/list-sites</code> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-readonly\">Read-only</span> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-idempotent\">Idempotent</span></p><p>Returns active network sites with their registered and unregistered block and shortcode counts, most unregistered uses first. Each site also gives its total unregistered uses, and when it last captured its registry and fully scanned its content. Sorted by unregistered uses, most first. Set <code>only_unregistered</code> to return just the sites with unregistered tags. Use get-site-report for one site&#039;s tags and find-tag-usage for where a tag is used. Requires <code>install_plugins</code>; main site only.</p><figure class=\"wp-block-table lh_portfolio-ability-reference-params\"><table><thead><tr><th>Parameter</th><th>Type</th><th>Required</th><th>Default</th><th>Description</th></tr></thead><tbody><tr><td><code>only_unregistered</code></td><td>boolean</td><td>No</td><td><code>false</code></td><td>Only return sites with at least one unregistered block or shortcode.</td></tr><tr><td><code>search</code></td><td>string</td><td>No</td><td></td><td>Case-insensitive substring match on site name or URL.</td></tr><tr><td><code>per_page</code></td><td>integer</td><td>No</td><td><code>100</code></td><td>Sites per page, 1 to 1000. Default 100.</td></tr><tr><td><code>page</code></td><td>integer</td><td>No</td><td><code>1</code></td><td>Page of sites, from 1. Default 1.</td></tr></tbody></table></figure></section><section class=\"lh_portfolio-ability-reference-ability\" id=\"ability-rescan-site\"><h2>Rescan Site</h2><p class=\"lh_portfolio-ability-reference-meta\"><code>lh-block-and-shortcode-auditor/rescan-site</code> <span class=\"lh_portfolio-ability-reference-annotation lh_portfolio-ability-reference-annotation-idempotent\">Idempotent</span></p><p>Asks one site to recapture its registered blocks and shortcodes and re-scan all of its content. The work runs in the background in that site&#039;s own context, triggered by a request to the site, so results are not immediate: poll get-site-report or list-sites and watch <code>sweep_in_progress</code> and <code>sweep_completed_gmt</code>. Only changes the auditor&#039;s own data, never site content. Requires <code>install_plugins</code>; main site only.</p><figure class=\"wp-block-table lh_portfolio-ability-reference-params\"><table><thead><tr><th>Parameter</th><th>Type</th><th>Required</th><th>Default</th><th>Description</th></tr></thead><tbody><tr><td><code>site_id</code></td><td>integer</td><td>Yes</td><td></td><td>Site ID, as returned by list-sites.</td></tr><tr><td><code>task_id</code></td><td>integer</td><td>No</td><td></td><td>Optional. The lh-tasks task this call is working on. Pass with <code>claim_token</code>: the call is refused unless you hold that claim, and a successful call renews it.</td></tr><tr><td><code>claim_token</code></td><td>string</td><td>No</td><td></td><td>Optional. The <code>claim_token</code> from claim-next-task for <code>task_id</code>. Required when <code>task_id</code> is given.</td></tr></tbody></table></figure></section></div>"^^rdf:XMLLiteral ;
  sioc:content "Part of: LH Block and Shortcode Auditorfind-tag-usage Find Tag Usageget-site-report Get Site Reportlist-sites List Sitesrescan-site Rescan SiteFind Tag Usagelh-block-and-shortcode-auditor/find-tag-usage Read-only IdempotentFinds where a block or shortcode is used across the network, from each site&#039;s last content scan. Returns a per-site summary (whether the tag is registered on that site, its provider, uses and item count) and a paged list of the posts, templates and widgets using it, each with title, status, occurrences and edit and view URLs. Pass tag as the full block name (e.g. tribe/event-datetime) or the bare shortcode tag without brackets. Optionally limit to one site_id or one object_status. Requires install_plugins; main site only.ParameterTypeRequiredDefaultDescriptiontagstringYesBlock name or shortcode tag (no brackets). Exact match.tag_typestringNoOmit to match both. One of: block, shortcode.site_idintegerNoLimit to one site. Omit for the whole network.object_statusstringNoLimit items to one post status, e.g. publish or draft.per_pageintegerNo100Items per page, 1 to 500. Default 100.pageintegerNo1Page of items, from 1. Default 1.Get Site Reportlh-block-and-shortcode-auditor/get-site-report Read-only IdempotentReturns one site&#039;s blocks and shortcodes, with whether each is registered, its provider and how often it is used. They come from its last registry capture and content scan: each tag with whether it is registered on that site, the plugin, theme or namespace that provides it, its total uses and the number of posts or widgets using it. Filter by tag_type, by registration (use unregistered to find content left behind by removed plugins), or by a search on tag or provider. Use find-tag-usage to list the items using a specific tag. Requires install_plugins; main site only.ParameterTypeRequiredDefaultDescriptionsite_idintegerYesSite ID, as returned by list-sites.tag_typestringNoOnly blocks or only shortcodes. Omit for both. One of: block, shortcode.registrationstringNo&quot;all&quot;all (the default), registered, or unregistered to find tags no longer provided by any active plugin or theme. One of: all, registered, unregistered.searchstringNoSubstring match on tag or provider.orderbystringNo&quot;usage_count&quot;Sort field: total uses (the default), number of items using the tag, tag name or provider. One of: usage_count, object_count, tag, provider.orderstringNo&quot;desc&quot;Sort direction. Default desc. One of: asc, desc.per_pageintegerNo100Tags per page, 1 to 500. Default 100.pageintegerNo1Page of tags, from 1. Default 1.List Siteslh-block-and-shortcode-auditor/list-sites Read-only IdempotentReturns active network sites with their registered and unregistered block and shortcode counts, most unregistered uses first. Each site also gives its total unregistered uses, and when it last captured its registry and fully scanned its content. Sorted by unregistered uses, most first. Set only_unregistered to return just the sites with unregistered tags. Use get-site-report for one site&#039;s tags and find-tag-usage for where a tag is used. Requires install_plugins; main site only.ParameterTypeRequiredDefaultDescriptiononly_unregisteredbooleanNofalseOnly return sites with at least one unregistered block or shortcode.searchstringNoCase-insensitive substring match on site name or URL.per_pageintegerNo100Sites per page, 1 to 1000. Default 100.pageintegerNo1Page of sites, from 1. Default 1.Rescan Sitelh-block-and-shortcode-auditor/rescan-site IdempotentAsks one site to recapture its registered blocks and shortcodes and re-scan all of its content. The work runs in the background in that site&#039;s own context, triggered by a request to the site, so results are not immediate: poll get-site-report or list-sites and watch sweep_in_progress and sweep_completed_gmt. Only changes the auditor&#039;s own data, never site content. Requires install_plugins; main site only.ParameterTypeRequiredDefaultDescriptionsite_idintegerYesSite ID, as returned by list-sites.task_idintegerNoOptional. The lh-tasks task this call is working on. Pass with claim_token: the call is refused unless you hold that claim, and a successful call renews it.claim_tokenstringNoOptional. The claim_token from claim-next-task for task_id. Required when task_id is given." ;
  sioc:topic <https://lhero.org/?taxonomy=author&term=cap-1> .

<https://lhero.org/author/1/#account> rdfs:seeAlso <https://lhero.org/author/1/?feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=author&term=cap-1> rdfs:seeAlso <https://lhero.org/?taxonomy=author&term=cap-1&feed=lhrdf&format=turtle> .
