Skip to main content
Glama

ddg_html_to_structured

Extract structured JSON from raw HTML via CSS selectors ($0.002). selectors={'name': 'css'}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
attrNo
htmlYes
modeNoall
agent_idNo
selectorsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations, the description itself must convey side-effect and safety behavior; 'Extract' and 'raw HTML' imply a read-only transformation with no external mutation. It also discloses the $0.002 cost, which is useful operational context. It does not discuss limits, error cases, or optional-parameter effects, but the core stateless behavior is clear.

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?

The description is a single sentence and front-loads the action and cost. The 'selectors=...' fragment adds a compact hint about parameter shape but is cryptic and not formatted as a clear example. It is appropriately brief, though slightly under-explains.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema exists, the description lacks context around the three optional parameters and gives no selection guidance relative to the large sibling set. For a tool with five parameters and no annotations, this terse description leaves meaningful gaps. It covers the happy path but not enough for confident invocation in edge cases.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate, but it only touches 'selectors' via the 'selectors={'name': 'css'}' hint as a mapping of field names to CSS selectors. 'html' is inferable from 'raw HTML,' but 'attr,' 'mode,' and 'agent_id' are left completely unexplained. This is insufficient for a five-parameter schema.

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?

The description opens with a specific action ('Extract structured JSON from raw HTML via CSS selectors'), naming the input, mechanism, and output. It is distinguishable from the sibling list even though it does not explicitly contrast with any sibling. The trailing code-like 'selectors={'name': 'css'}' is cryptic but does not obscure the core purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for parsing raw HTML into JSON, so an agent can infer a basic use case. It gives no explicit when-to-use/when-not-to-use guidance and names no alternatives among the many sibling tools. Selection is left to inference rather than direct routing.

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.