@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/?post_type=lh-portfolio&#038;p=145394>
  a sioc:Post ;
  dc:title "LH MCP Block Transformer" ;
  dcterms:identifier 145394 ;
  dc:modified "2026-08-10T12:41:26Z"^^xsd:dateTime ;
  dc:created "2026-08-10T12:41:25Z"^^xsd:dateTime ;
  sioc:link <https://lhero.org/portfolio/lh-mcp-block-transformer/> ;
  sioc:has_creator <https://lhero.org/author/1015845/#account> ;
  sioc:has_container <https://lhero.org/#posts> ;
  content:encoded """<ul class="lh_portfolio-meta"><li><strong>Type:</strong> Plugin</li></ul><p>Converts HTML or Markdown content into native Gutenberg block markup, and back, using the <a href="https://github.com/Automattic/blocks-engine/tree/trunk/php-transformer">automattic/blocks-engine-php-transformer</a> library. Exposed as MCP abilities so AI-authored content can be written as real, editable Gutenberg blocks instead of opaque HTML.</p>
<p>Internal developer/content tooling &mdash; not migration-critical, not independently useful outside LocalHero&#8217;s own MCP surface, so this entry is kept private.</p>
<h2>Abilities</h2>
<ul>
<li><code>lh-mcp-block-transformer/convert-to-blocks</code> &ndash; HTML or Markdown &rarr; serialized block markup, with fallback diagnostics for anything that didn&#8217;t match a specific block.</li>
<li><code>lh-mcp-block-transformer/convert-from-blocks</code> &ndash; the mirror: existing block markup &rarr; HTML or Markdown, for reading an existing block-based post before revising it.</li>
<li><code>lh-mcp-block-transformer/get-pattern-guide</code> &ndash; static reference data describing the HTML/CSS shapes that reliably trigger richer blocks (cover, columns, media-text, buttons), so content can be authored to hit them intentionally rather than falling back to a generic wrapper.</li>
</ul>
<h2>Architecture note</h2>
<p>Both convert-to-blocks and convert-from-blocks route through the same <code>FormatBridge::convertResult()</code> call, which is symmetric across the html/markdown/blocks adapters &mdash; markdown input just cannot express the CSS shapes that trigger the richer block patterns, since it has no way to declare inline styles.</p>
"""^^rdf:XMLLiteral ;
  sioc:content """Type: PluginConverts HTML or Markdown content into native Gutenberg block markup, and back, using the automattic/blocks-engine-php-transformer library. Exposed as MCP abilities so AI-authored content can be written as real, editable Gutenberg blocks instead of opaque HTML.
Internal developer/content tooling &mdash; not migration-critical, not independently useful outside LocalHero&#8217;s own MCP surface, so this entry is kept private.
Abilities

lh-mcp-block-transformer/convert-to-blocks &ndash; HTML or Markdown &rarr; serialized block markup, with fallback diagnostics for anything that didn&#8217;t match a specific block.
lh-mcp-block-transformer/convert-from-blocks &ndash; the mirror: existing block markup &rarr; HTML or Markdown, for reading an existing block-based post before revising it.
lh-mcp-block-transformer/get-pattern-guide &ndash; static reference data describing the HTML/CSS shapes that reliably trigger richer blocks (cover, columns, media-text, buttons), so content can be authored to hit them intentionally rather than falling back to a generic wrapper.

Architecture note
Both convert-to-blocks and convert-from-blocks route through the same FormatBridge::convertResult() call, which is symmetric across the html/markdown/blocks adapters &mdash; markdown input just cannot express the CSS shapes that trigger the richer block patterns, since it has no way to declare inline styles.
""" ;
  sioc:topic <https://lhero.org/lh_portfolio-type/plugin/>, <https://lhero.org/?taxonomy=author&term=cap-1015845> .

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