Skip to main content
Glama

Get a page's real rendered theme styles

get_theme_styles

Inspect a WordPress page path to return its rendered theme name, stylesheet and script URLs, plus inline CSS and JS. Use it to see what a browser actually loads.

Instructions

Inspect the actual rendered HTML of a page path on the connected WordPress site and return its theme name plus the stylesheet URLs, script URLs, inline CSS and inline JS it really loads. Theme-agnostic: works by parsing the rendered HTML rather than relying on theme.json, so it reflects what a browser truly receives (colors resolved by PHP at runtime, page-builder output, etc). Calls the site-local wp-mcp-bridge/v1 REST route.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathNoRelative path of the page to inspect, e.g. "/" or "/about/". Defaults to the homepage.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden and does well: it discloses the mechanism (parsing rendered HTML, calling the site-local wp-mcp-bridge/v1 REST route) and enumerates the returned payload. It stops short of noting auth/preconditions or the cost/side effects of forcing a page render.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and output are front-loaded in the first sentence, with mechanism and caveats following. It is a single dense paragraph with mild redundancy ('actual rendered HTML', 'really loads', 'what a browser truly receives').

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 and no annotations, the description still enumerates what is returned (theme name, stylesheet/script URLs, inline CSS/JS) and how it is obtained, which is what an agent needs to call and interpret it. Missing only auth/prerequisite and latency caveats.

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% and the single 'path' parameter is already documented with an example and its homepage default, so the baseline is 3. The description adds no extra syntax or edge-case detail (trailing slashes, query strings) beyond the schema.

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 and resource ('inspect the actual rendered HTML... return its theme name plus stylesheet URLs, script URLs, inline CSS/JS') and differentiates itself from siblings like get_page/get_asset_content by explaining it parses rendered HTML rather than theme.json. An agent can immediately tell what comes back.

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?

Gives clear context for when this tool is the right choice: when you need what a browser truly receives (runtime-resolved colors, page-builder output) rather than theme.json metadata. However it never names a sibling tool or states an explicit exclusion, so the routing is implied rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.