Skip to main content
Glama
Unilytics MCP Server

Unilytics MCP Server

Official

content_scrape

Read-only

Extract web page content, headings, and structure from a URL; optionally include metadata and OpenGraph tags for SEO and content audits.

Instructions

Scrape a web page and extract its content, headings, and structure.

Args:
    url: Full URL to scrape (e.g. "https://example.com/blog/post")
    include_metadata: Include meta tags and OpenGraph data (default: False)

[Provider: Firecrawl]

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "url": "<url>"
    },
    "name": "content_scrape"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlYes
include_metadataNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.1.0
    • removedInput schema / properties / config
      Removed value: -{
      -  "default": null,
      -  "title": "config",
      -  "type": "string"
      -}
  2. First observedv1.0.0

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered structurally. The description adds only the provider tag ("Firecrawl") and the meaning of include_metadata, but says nothing about behavior an agent would care about, such as whether JavaScript is executed, timeout/limit behavior, or what happens on dynamic or blocked pages.

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-loaded one-line purpose followed by a compact Args block; nothing is padded. The trailing "[Provider: Firecrawl]" line is low value but small.

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

Completeness3/5

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

For a simple two-parameter read-only tool with no output schema, the description covers inputs and roughly what is returned (content, headings, structure). It is still incomplete on the key behavioral question for a scraper — JS rendering versus static HTML — which is exactly what separates it from the js_scrape sibling.

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 description coverage is 0%, so the description must carry the load, and it does document both parameters: url as a full URL with a concrete example, and include_metadata as meta tags and OpenGraph data with a stated default. That is decent, but url semantics like scheme requirements or supported page types are not clarified beyond the example.

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 ("Scrape") and resource ("a web page") plus what is extracted (content, headings, structure), which distinguishes it from generic fetch tools. It does not differentiate itself from the sibling tools js_scrape or batch_scrape, so an agent cannot tell from this text which scrape variant to pick.

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 guidance on when to use this versus the obvious siblings js_scrape (JS-rendered pages) or batch_scrape (multiple URLs). The example URL is the only hint about appropriate input, and no exclusions or prerequisites are stated.

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

Deploy Server

Other Tools