Skip to main content
Glama
WebCake Storefront MCP

WebCake Storefront MCP

by vuluu2k

ingest_html

Read-only

Parse reference HTML into a structural blueprint of headings, text, images, buttons, and colors so you can rebuild the layout as native BuilderX sections instead of pasting raw HTML.

Instructions

Parse reference HTML (e.g. a Google Stitch / Figma / Codex export) into a structural blueprint (title, headings, paragraphs, images, buttons, colour palette) you can rebuild as native BuilderX sections with new_section. Not a 1:1 clone. Rebuild every part native elements can do; use an embed only for a piece no element can (third-party widget, custom animation) — never paste the whole HTML into one (sandboxed iframe: no SEO, broken links, dead forms; rejected on save).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "html": "<html>"
    },
    "name": "ingest_html"
  }
}

Input Schema

NameRequiredDescriptionDefault
htmlYesRaw HTML to analyse

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.31.8

TDQS

A4.4/5.0
Behavior4/5

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

readOnlyHint=true already tells the agent this is a non-mutating parse, and the description is consistent with that. It adds non-obvious downstream consequences beyond the annotation: whole-page embeds run sandboxed (no SEO, broken links, dead forms) and are rejected on save, which meaningfully shapes how the agent acts on the output.

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 is front-loaded in the first clause and the constraints follow in priority order, with no filler sentences. The parenthetical lists are dense but each item carries information; the embed warning is longer than strictly needed but justifies its length with concrete failure modes.

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?

For a one-parameter read tool with no output schema, the description effectively enumerates the return contents and points to the next step (new_section), so nothing essential for correct invocation or follow-up is missing. The only residual gap, distinguishing it from ingest_url, is a minor routing detail rather than a blocker.

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

Parameters4/5

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

Only one parameter and schema coverage is 100% ('Raw HTML to analyse'), so the schema does most of the work and baseline 3 applies. The description earns the extra point by characterizing the expected input ('a Google Stitch / Figma / Codex export'), which tells the agent what kind of markup is appropriate rather than just 'a string'.

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 ('Parse reference HTML ... into a structural blueprint') and enumerates the blueprint's contents (title, headings, paragraphs, images, buttons, colour palette). It also names the downstream tool it feeds (new_section), so an agent can place it in a workflow 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?

Gives explicit framing ('Not a 1:1 clone. Rebuild every part native elements can do; use an embed only for a piece no element can'), which is real when-to-use/when-not guidance. It stops short of naming a sibling alternative such as ingest_url for HTML reachable by URL, so the routing decision between the two is left to inference.

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

Deploy Server

Other Tools