Skip to main content
Glama

Analyze Web Page

diffbot.pages.analyze
Read-onlyIdempotent

Extract structured data from any URL by auto-detecting page type (product, article, image, video) using AI. Supports forced modes and fallback extraction.

Instructions

Auto-detect page type (product, article, image, video) and extract structured data from any URL using AI (Diffbot)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesWeb page URL to auto-detect type and extract structured data
modeNoForce extraction mode instead of auto-detection
fallbackNoFallback extraction type if auto-detection fails
timeoutNoRequest timeout in milliseconds (5000-30000, default 15000)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultNoTool response payload. Shape varies per tool — consult the tool description and inputSchema. May be an object, array, string, or number depending on the upstream provider response.
errorNoPresent only when the call failed. Includes error code, message, request_id, and any provider-specific extras.
Behavior2/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds no additional behavioral context (e.g., what happens if the page is unparseable, rate limits, or that it relies on a remote AI service). It merely repeats the action without enriching the agent's understanding of side effects or error conditions.

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?

The description is a single sentence of 18 words, immediately front-loading the core purpose. There is no redundant or extraneous information, and every phrase earns its place.

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?

Given that an output schema exists (not shown but indicated by 'has output schema: true'), the description need not explain return values. It adequately covers the tool's capability to auto-detect and extract. However, it could mention that the tool supports multiple page types or that it can be forced via parameters, which is implicit but not exhaustive. Overall, complete enough for a well-annotated tool.

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?

The input schema has 100% description coverage for all 4 parameters, including enum descriptions. The description does not add substantial meaning beyond the schema (e.g., explaining when to use 'mode' vs letting it auto-detect). Baseline score of 3 is appropriate since the schema already does the heavy lifting.

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?

The description clearly states the tool's purpose: 'Auto-detect page type (product, article, image, video) and extract structured data from any URL using AI (Diffbot)'. It specifies the verb (analyze), resource (web page), and key capability (auto-detection of page type), which distinguishes it from siblings like diffbot.articles.extract and diffbot.products.extract that require a specific mode.

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 does not explicitly state when to use this tool versus alternatives. While the 'mode' and 'fallback' parameters imply some decision-making, there is no direct guidance (e.g., 'Use this when page type is unknown; otherwise use diffbot.articles.extract'). The context of siblings is present but not leveraged in the description.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/whiteknightonhorse/APIbase'

If you have feedback or need assistance with the MCP directory API, please join our Discord server