Skip to main content
Glama

compile

Turn known site extraction steps into a validated recipe a small model can run in one call; Scout saves it only when every example passes.

Instructions

Compile what you worked out about a site into a recipe a small model can run in one call. Scout runs it on every example and saves it only if all pass; the reply carries the one-line card for the small model. name: '/'. input_name: what the caller supplies ('model', 'sku'; empty for none). examples: 2+ inputs. steps, run in order, each a one-key object: {"input": [[regex, repl], ...], "lower": true} rewrite the input (slug rules) {"map": "https://site", "filter": "/product/{input}$"} the site's own urls; first match becomes {url} {"reach": "https://site/p/{input}" | "{url}", "want": regex} read a page {"find": regex} first link on the page matching (url or text) becomes {url} {"links": "/chapter//"} a link family from families(); last step = all its links, else the first is {url} {"jsonld": {"price": "offers.price", "sku": "sku"}, "type": "Product"} from the page's schema.org data {"extract": {"field": "regex with one group", "optional?": "..."}} every field must be found, except a name ending in ? Prefer map over a guessed url template: sites are inconsistent about case and slugs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
aboutNo
stepsYes
examplesNo
input_nameNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A3.8/5.0
Behavior4/5

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

No annotations, so the description carries the full burden, and it does disclose real behavior: the recipe is executed against every example and only saved if all pass, and the reply carries a one-line card. This is meaningful beyond a bare 'compile' claim, though side effects, failure messaging, and storage semantics are not covered.

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?

Front-loads purpose, then presents the step types as a clean, indented reference where each line earns its place. It is long, but density is justified by the DSL it documents; nothing reads as filler.

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?

For a complex DSL-compiler tool with no annotations, no output schema, and 0% schema coverage, the description supplies the purpose, the saving gate, the reply contents, and a nearly complete step grammar. Remaining gaps ('about', error behavior on failed compilation) are small relative to the complexity handled.

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?

Schema coverage is 0%, so the description must compensate, and it documents name ('<host>/<slug>'), input_name (what the caller supplies, empty for none), examples (2+ inputs), and the entirety of the steps DSL. Only the 'about' parameter is left unexplained, which is a minor gap against otherwise strong compensation.

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?

States a specific verb and resource: 'Compile what you worked out about a site into a recipe a small model can run in one call,' and adds the downstream workflow ('Scout runs it on every example and saves it only if all pass'). It is distinguishable from most siblings, though it leans on domain jargon and does not explicitly contrast itself with 'recipes', 'run', or 'scout'.

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?

Usage is implied by the workflow narrative (compile then Scout validates) and one conditional hint is given: 'Prefer map over a guessed url template.' But there is no explicit statement of when to choose compile over siblings like recipes, run, or scout, nor any prerequisite conditions.

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