Skip to main content
Glama
mysleekdesigns

CrawlForge MCP Server

localization

Set a country, language, timezone, or geolocation for scraping requests to bypass geo-blocks and retrieve region-specific content or pricing.

Instructions

Use this to scrape geo-restricted content or emulate a specific locale/timezone - region-specific pricing, geo-blocks, searching in another language. Use operation:"configure_country" to set country context for the scraping calls that follow. Not for an ordinary page read (scrape). Cost: 2 credits. Example: localization({operation:"configure_country", countryCode:"DE", language:"de"})

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoURL — required for handle_geo_blocking; for auto_detect it is optional metadata used only as a TLD country hint (the page is never fetched)
contentNoPage content (HTML or plain text) to analyze — required for auto_detect; no fetching is performed
currencyNoISO 4217 currency code (e.g. 'USD', 'EUR')
languageNoLanguage code (e.g. 'en', 'fr', 'de')
responseNoHTTP response for geo-blocking analysis
timezoneNoIANA timezone identifier (e.g. 'America/New_York')
operationNoLocalization operation to performconfigure_country
userAgentNoCustom user agent string
countryCodeNoISO 3166-1 alpha-2 country code
geoLocationNoGPS coordinates for geolocation emulation
searchParamsNoSearch parameters for localized search queries
customHeadersNoCustom HTTP headers for localized requests
proxySettingsNoProxy configuration for geo-targeted requests
acceptLanguageNoAccept-Language header value
browserOptionsNoBrowser context options for locale emulation

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed11 schema fields changedv6.0.0
    • removedInput schema / additionalProperties
      Removed value: -false
    • removedInput schema / properties / browserOptions / additionalProperties
      Removed value: -false
    • addedInput schema / properties / browserOptions / properties / extraHTTPHeaders / propertyNames
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / customHeaders / propertyNames
      Added value: +{
      +  "type": "string"
      +}
    • removedInput schema / properties / geoLocation / additionalProperties
      Removed value: -false
    • removedInput schema / properties / proxySettings / additionalProperties
      Removed value: -false
    • removedInput schema / properties / proxySettings / properties / fallback / additionalProperties
      Removed value: -false
    • removedInput schema / properties / proxySettings / properties / rotation / additionalProperties
      Removed value: -false
    • removedInput schema / properties / response / additionalProperties
      Removed value: -false
    • removedInput schema / properties / searchParams / additionalProperties
      Removed value: -false
    • addedInput schema / properties / searchParams / properties / headers / propertyNames
      Added value: +{
      +  "type": "string"
      +}
  2. Changed3 schema fields changedv5.0.4
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • changedInput schema / properties / content / description
      Previous value: -"Content for auto-detection of language and locale"New value: +"Page content (HTML or plain text) to analyze — required for auto_detect; no fetching is performed"
    • changedInput schema / properties / url / description
      Previous value: -"URL for geo-blocking detection or auto-detection"New value: +"URL — required for handle_geo_blocking; for auto_detect it is optional metadata used only as a TLD country hint (the page is never fetched)"
  3. First observedv4.10.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already mark the tool as non-read-only, non-idempotent, and non-destructive. The description adds a stateful side effect (configure_country sets country context for subsequent scraping calls), clarifies that it is not a normal page fetch, and discloses the 2-credit cost. This adds useful context beyond the annotations, though it stops short of describing effects of the other operations.

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?

Three compact sentences plus one illustrative example. Purpose is front-loaded, cost and exclusion are included without bloat. The opening clause is slightly run-on, but the overall length and structure are appropriate.

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?

The description fully supports the configure_country path and excludes ordinary scraping, but the tool exposes eight operations and has no output schema. The other operations such as localize_search, auto_detect, handle_geo_blocking, and get_stats are not mapped to use cases or expected outputs, which is a clear gap for a multi-operation 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?

Schema coverage is 100%, so the baseline is 3. The description adds value with a concrete invocation binding operation, countryCode, and language, and explains what configure_country does with those parameters. The rest of the parameters are already well documented in 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 concrete use cases: scraping geo-restricted content, emulating a locale/timezone, region-specific pricing, geo-blocks, and localized search. It also distinguishes itself from the 'scrape' sibling with 'Not for an ordinary page read (scrape)' and provides a concrete example so an agent can tell what the tool is for.

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 explicit when-to-use conditions (geo-restricted content, locale/timezone emulation) and an explicit when-not ('Not for an ordinary page read (scrape)'). The example shows exactly how to invoke the primary configuration operation. It does not map out all eight operations, but the tool-vs-alternative decision is clear.

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

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/mysleekdesigns/crawlforge-mcp'

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