Skip to main content
Glama

TypedPull

Server Details

Return only the schema fields you name from one public web page. No raw HTML.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

B3/5.0

Scored across 4 tools

Disambiguation4/5

The three extraction tools have distinct roles: explain_extractor is metadata-only, extract handles one page, and extract_batch fans out up to 20 calls. keys.create is clearly separate. The only mild overlap is between explain_extractor and extract, but the descriptions explicitly clarify that explain does not fetch the page.

Naming Consistency3/5

Three tools use snake_case verb_noun naming (explain_extractor, extract, extract_batch), but keys.create uses a dotted namespace convention, breaking the pattern. The names are still readable and semantically clear, but the convention is mixed.

Tool Count4/5

Four tools is a lean, focused surface for an extraction service, and each tool has a distinct job. It sits at the low end of the comfortable range, and one slot is spent on key minting rather than core extraction capability.

Completeness3/5

Extraction is covered from single-page through batch, but there is no way to enumerate available extractors or schemas before calling explain/extract. Key management is create-only, with no list or revoke operation, leaving lifecycle dead ends.

Available Tools

4 tools
explain_extractorExplain extractorC
Read-only
Inspect

Show selectors, version, and hit count. This does not fetch the page.

NameRequiredDescriptionDefault
urlNo
json_schemaNo
extractor_idNo

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds one genuinely useful behavioral fact — that no page fetch occurs — but says nothing about what happens with an invalid extractor_id, how selectors are resolved, or what the response looks like.

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?

Two tight sentences with no filler, and the negative constraint is placed where the agent reads it. It is efficient but borders on under-specification given the untouched parameters.

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?

For a tool with three undocumented parameters, a nested object parameter, and no output schema, the description leaves too much unspecified — particularly how url and extractor_id interact and what the returned selectors/version/hit count structure is. Only the no-fetch guarantee is clarified.

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

Parameters1/5

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

Schema description coverage is 0% across three parameters, including a nested free-form 'json_schema' object, and the description mentions none of them. It gives no clue about the url vs extractor_id relationship or which one drives the lookup, so it fails to compensate for the total documentation gap.

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 names the concrete outputs (selectors, version, hit count) and adds that it does not fetch the page, which separates it from the sibling 'extract'. It stops short of a single crisp verb+object statement like 'inspect an extractor's configuration without running it', so intent still requires a small inference.

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?

'This does not fetch the page' implies the dry-run/inspection use case versus actually extracting, but no sibling (extract, extract_batch, keys.create) is named and no explicit when-to-use/when-not condition is given. The guidance is inferable rather than stated.

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

extractExtract fieldsCInspect

Return schema fields from one public page. A miss returns compile_disabled.

NameRequiredDescriptionDefault
urlYes
max_age_sNo
json_schemaYes

TDQS

C2.4/5.0
Behavior2/5

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

"A miss returns compile_disabled" is a genuinely useful disclosure of an error path. However, the annotations declare readOnlyHint=false, and the description never explains why a tool that "returns" fields is not read-only — presumably extraction compiles/caches an extractor, but the agent must guess. max_age_s suggests caching behavior that is never described.

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?

Two short sentences with the action front-loaded and no filler. It is efficient, though the brevity crosses into under-specification rather than tight precision.

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?

With zero schema coverage, a nested object parameter, no output schema, and a non-obvious readOnlyHint=false annotation, the description does far too little. An agent cannot know the json_schema contract, what max_age_s does, or why the operation is not read-only.

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% across three parameters. The description only loosely gestures at url ("one public page") and json_schema ("schema fields"); max_age_s is never mentioned, and the shape/format of the nested json_schema object — the hardest parameter to get right — is left entirely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Return schema fields from one public page" gives a verb and a scope, but "schema fields" is ambiguous — it could mean fields defined by the json_schema parameter or fields scraped from the page. The phrase "one public page" implicitly contrasts with extract_batch, but neither sibling is named and explain_extractor is not distinguished at all.

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

Usage Guidelines2/5

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

There is no statement of when to choose this over extract_batch (multiple pages) or explain_extractor (understanding an extractor). The only routing signal is the incidental word "one", which the agent must infer means "single page".

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

extract_batchExtract batchBInspect

Run up to 20 extract calls. Each item has its own status.

NameRequiredDescriptionDefault
itemsYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description adds genuinely new behavior — 'Each item has its own status' signals per-item partial success/failure — but says nothing about execution order, concurrency, or how failed items are reported.

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?

Two short sentences, no filler, with the batch-size constraint front-loaded. It is efficient, though the second sentence is very terse and could carry more signal without becoming bloated.

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?

For a batch tool with a nested-array parameter and no output schema, the description should explain the per-item result shape it alludes to ('its own status') and what json_schema controls. Neither is covered, so an agent must guess at both input semantics and return structure.

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%; the nested 'url' and 'json_schema' fields are undocumented in both schema and description. The description confirms the 20-item cap already encoded as maxItems, but never explains that json_schema is the per-item extraction target schema, leaving the most consequential parameter opaque.

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 action and scope: running up to 20 extract calls in one batch, which implicitly distinguishes it from the single-call sibling 'extract'. It does not explicitly name a sibling for contrast, but the batch framing is unambiguous.

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 'up to 20 extract calls' — an agent can infer this replaces N individual extract calls. However, there is no explicit when-to-use statement, no threshold below which single 'extract' is preferred, and no mention of sibling tools like explain_extractor.

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

keys.createCreate caller keyAInspect

Mint a pf_ caller key. The raw key is shown once.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation/safety profile is covered. The description adds the single most important behavioral fact beyond that: "the raw key is shown once," warning the agent that the secret is unrecoverable after the response and must be surfaced immediately. It does not mention permission requirements or whether created keys can be revoked.

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?

Two short sentences, front-loaded with the action and followed by the critical caveat. Every clause carries information; there is no 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?

With no input parameters and no output schema, the description covers the essentials: what is produced, the key format, and the one-time visibility of the raw value. It leaves open the default scope/expiry of the minted key, which is the only notable gap for a zero-input tool.

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?

The tool takes zero parameters, so the schema-based baseline of 4 applies. The description correctly implies a bare invocation with no input configuration, and adds nothing misleading about inputs.

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?

"Mint a pf_ caller key" gives a specific verb (mint/create) and resource (caller key), plus the key prefix format. The sibling tools (explain_extractor, extract, extract_batch) are unrelated to key management, so no sibling differentiation is needed or possible here, which keeps it just shy of a 5.

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

Usage Guidelines2/5

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

The description states what the tool does but never says when to call it — no mention of prerequisites (admin/auth requirements), no guidance on how many keys to create, and no alternatives to consider. An agent must guess whether this is a routine step or a privileged one-off action.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • First observedexplain_extractor
    • First observedextract
    • First observedextract_batch
    • First observedkeys.create

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables users to extract structured data from a given web page URL by describing the desired data and its fields in a natural language prompt. It returns the requested fields as clean, structured output for use directly within MCP-compatible agents and editors.
    237 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables agents to extract structured, prompt-defined data from any web page by supplying a URL and a description of the fields to retrieve. It exposes this capability as a single tool for use in MCP-compatible clients such as Claude, VS Code, Cursor, and Windsurf.
    237 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources