Skip to main content
Glama

draft_site

Read-onlyIdempotent

Draft and preview a docs site entry to validate selectors, paths, and crawl settings before saving; probe a new site or adjust an existing one with overrides, without writing config.

Instructions

Draft a site entry and preview one page extracted with it. Never writes the config. With url, probes a new docs site the way doc-scraper add does (robots.txt, llms.txt, sitemap, framework detection). With only site_key, starts from that configured site's entry without probing. overrides sets entry fields by their config names (content_selector, allowed_path_prefix, disallowed_path_patterns, max_depth, ...); durations are strings such as "1s". Judge the preview (code blocks kept, nav_leak, chars), draft again with overrides until it looks right, then pass entry to save_site.

Input Schema

NameRequiredDescriptionDefault
urlNoA docs URL to probe as a new site
site_keyNoWith url: the key for the new site. Without url: the configured site to start from
overridesNoEntry fields to set, by config field name
preview_urlNoThe page to preview (default: the sampled docs page, else the seed or first start URL)

Output Schema

NameRequiredDescriptionDefault
entryYesThe site entry by config field name; pass it, changed as needed, to save_site
existsYesWhether site_key is configured now; save_site then needs replace: true
previewYes
evidenceYes
site_keyYes
warningsYes
frameworkNo
generatorNo
confidenceNo
entry_yamlYes
next_actionsYes
config_writesYesenabled or disabled; save_site needs enabled
signal_sourceNo
sitemap_page_countNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.24.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/idempotent/non-destructive, and the description reinforces this with 'Never writes the config' while disclosing what probing actually does (robots.txt, llms.txt, sitemap, framework detection) — real behavioral context beyond the hints. It stops short of covering failure modes or network cost/rate limits for the probe.

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

Conciseness5/5

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

Front-loads purpose and the no-write guarantee, then moves through the two modes, the overrides format, and the recommended workflow. Dense but zero filler sentences; every clause carries operational information.

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 4-param tool with a nested free-form object and an output schema present, the description supplies the missing pieces: overrides field naming/format, the meaning of the preview, and the explicit handoff to save_site. Return-value details are correctly delegated to the output schema.

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 coverage is 100%, so baseline is 3. The description does add value for `overrides` — naming concrete config field names (content_selector, allowed_path_prefix, disallowed_path_patterns, max_depth) and the duration string format ('1s') — which compensates for the nested object having no defined properties, but url/site_key/preview_url semantics are already fully covered by 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 ('Draft a site entry and preview one page extracted with it') plus a negative scope clause ('Never writes the config'). This clearly separates it from the sibling save_site, which is named explicitly as the follow-up step.

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

Usage Guidelines5/5

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

Gives an explicit branching rule: with `url` it probes a new docs site the way `doc-scraper add` does; with only `site_key` it starts from an existing configured entry without probing. It also states the full iteration loop (judge preview → re-draft with overrides → pass entry to save_site), naming the alternative tool that commits.

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