Geekflare

Official registry Search and web

Web search, Google SERP, scraping, screenshots, PDFs, brand data, and website diagnostics.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http geekflare 'https://mcp.geekflare.com/{API_KEY}/mcp'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "geekflare": {
            "type": "http",
            "url": "https://mcp.geekflare.com/{API_KEY}/mcp"
        }
    }
}
NPM package @geekflare/mcp
Claude Code
claude mcp add geekflare -e 'API_KEY=<your api_key>' -- npx -y @geekflare/mcp@0.5.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "geekflare": {
            "command": "npx",
            "args": [
                "-y",
                "@geekflare/mcp@0.5.0"
            ],
            "env": {
                "API_KEY": "<your api_key>"
            }
        }
    }
}

Environment variables

  • API_KEY required secret Your Geekflare API key
OCI package geekflarehq/geekflare-api-mcp:0.5.0
Claude Code
claude mcp add geekflare -e 'API_KEY=<your api_key>' -- docker run -i --rm geekflarehq/geekflare-api-mcp:0.5.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "geekflare": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "geekflarehq/geekflare-api-mcp:0.5.0"
            ],
            "env": {
                "API_KEY": "<your api_key>"
            }
        }
    }
}

Environment variables

  • API_KEY required secret Your Geekflare API key

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. @geekflare/mcp
  2. Setup
  3. Available Tools
  4. Environment Variables
  5. Links
  6. License

@geekflare/mcp

Official MCP (Model Context Protocol) server for the Geekflare. Connect Geekflare's web intelligence tools directly to Claude, Cursor, Windsurf, and other AI assistants.

Setup

Get an API Key

Sign up at geekflare.com/api and copy your API key from the dashboard.

Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "geekflare": {
      "command": "npx",
      "args": ["-y", "@geekflare/mcp"],
      "env": {
        "API_KEY": "your-api-key-here"
      }
    }
  }
}
Cursor / Windsurf

Add to your MCP settings:

{
  "mcpServers": {
    "geekflare": {
      "command": "npx",
      "args": ["-y", "@geekflare/mcp"],
      "env": {
        "API_KEY": "your-api-key-here"
      }
    }
  }
}
Docker
{
  "mcpServers": {
    "geekflare": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "API_KEY=your-api-key-here", "geekflare/mcp"]
    }
  }
}

Available Tools

webScrape

Scrape full page content from any URL. Returns HTML, Markdown, JSON, or LLM-optimised text — including structured data via ready-made extraction templates, custom CSS/XPath schemas, or AI-powered extraction.

ParameterTypeDefaultDescription
url \*string—Target URL
devicedesktopmobiledesktopDevice to emulate
formatarray["markdown"]Output formats (up to 3): html, markdown, json, markdown-llm, html-llm, text, text-llm
proxyModeboolean"auto"falsefalse never uses a proxy, auto retries through one if the site blocks the request, true always uses one
proxyCountrystring—Route through a country ISO code (e.g. "us"), used when a proxy is active
renderJSbooleanautoExecute JavaScript before extracting. If omitted, resolved automatically based on whether the page needs it
fileOutputbooleanfalseReturn a download URL instead of inline content
blockAdsbooleantrueBlock ads during scrape
stealthbooleanfalseBypass CAPTCHAs (slower)
waitTimenumber0Seconds to wait after page load before capturing content
extractionModedefaultcssSchemaxpathSchematemplatedefaultOnly used when format includes json
templateproductcontact—Ready-made extraction template when extractionMode is template
extractionSchemaobject—Custom field-extraction schema for cssSchema/xpathSchema modes
aiPromptobject—AI-powered extraction/analysis of the scraped page. Supports prompt, schema, listing, summary, sentiment, and keywords modes. Adds +6 credits

metaScrape

Scrape meta tags — title, description, Open Graph, Twitter cards, and more.

ParameterTypeDefaultDescription
url \*string—Target URL
devicedesktopmobiledesktopDevice to emulate
formatjsonmarkdownjsonResponse format
proxyCountrystring—Country ISO code
renderJSbooleantrueWhether to execute JavaScript
fileOutputbooleanfalseReturn a download URL instead of inline content
blockAdsbooleantrueBlock ads during scrape

brand

Get structured brand information for a website domain, including brand identity, logos, colors, typography, social profiles, links, page metadata, and company information.

The brand tool supports two levels of brand intelligence:

  • standard — Returns structured brand information available from the website.
  • enriched — Includes additional LLM-synthesized company intelligence when available.
ParameterTypeDefaultDescription
url \*string—Target URL
refreshbooleanfalseForce an on-demand fetch and refresh the cached brand data
modestandardenrichedstandardDepth of brand data to return. enriched includes LLM-synthesized company intelligence
Example
{
  "url": "https://example.com",
  "mode": "enriched"
}

To bypass cached data and fetch fresh information:

{
  "url": "https://example.com",
  "refresh": true,
  "mode": "enriched"
}

The response may include:

  • Brand name, tagline, description, and slogan
  • Logos and favicon
  • Brand colors and palette
  • Fonts and typography
  • UI component styles and spacing
  • Social profiles
  • Important website links
  • Page metadata and Open Graph information
  • Company information such as industry, founded year, employee range, revenue range, company type, and target audience when available

Enriched company information depends on the publicly available information for the domain, so individual fields may be omitted.


screenshot

Capture a screenshot of any website. Supports full-page, element-only, Retina, dark mode, transparent backgrounds, and AI-friendly link highlighting.

ParameterTypeDefaultDescription
url \*string—Target URL
devicedesktopmobiledesktopDevice to emulate
typepngjpegwebppngImage format
proxyCountrystring—Country ISO code
fullPagebooleanfalseCapture the full page
selectorstring—CSS selector for the element to capture
fallbackToFullPagebooleanfalseFall back to a full-page capture if selector isn't found
blockAdsbooleantrueBlock ads
hideCookiebooleantrueRemove cookie banners
skipCaptchabooleantrueBypass anti-bot challenges
addTimestampbooleanfalseAdd a timestamp
highlightLinksbooleanfalseDraw borders around links/buttons — useful for AI vision models
pageHeightnumber—Custom page height in pixels
viewportWidthnumber—Viewport width
viewportHeightnumber—Viewport height
captureBeyondViewportboolean—Capture content beyond the configured viewport
delaynumber—Seconds to wait after page load
qualitynumber90Image quality for JPEG/WEBP
scaleFactornumber—Device pixel ratio
themelightdarkautoautoColor scheme
removeBackgroundbooleanfalseRemove page background (PNG only)
disableAnimationsbooleanfalseFreeze CSS animations before capture
inlinebooleanfalseReturn image data inline instead of a CDN URL

Search the web and return clean, structured results. Supports web, news, and image search with optional AI-grounded answers.

ParameterTypeDefaultDescription
query \*string—Search query
limitnumber10Number of results
timestring—Time filter: any, d, w, m, y, d7, h6
locationstring—Country ISO code to localise results
sourcewebnewsimageswebSearch source
categorygeneralcodepdfresearchlinkedinwiki—Search category
formatjsonmarkdownhtmljsonResponse format
includeDomainsarray—Only include these domains
excludeDomainsarray—Exclude these domains
groundedAnswerbooleanfalseGenerate an AI answer synthesised from results
scrapebooleanfalseAlso scrape top result pages
scrapeLimitnumber3How many pages to scrape when scrape is enabled

dnsRecord

Look up DNS records for a domain.

ParameterTypeDefault
url \*string—
typesarrayAll supported types

Supported DNS record types:

A, AAAA, CNAME, MX, NS, SOA, TXT, CAA, SRV


siteStatus

Check if a site is up or down.

ParameterTypeDefault
url \*string—
proxyCountrystring—
followRedirectbooleanfalse

redirectCheck

Trace the full redirect chain of a URL.

ParameterType
url \*string
proxyCountrystring

Find all broken links on a webpage.

ParameterTypeDefault
url \*string—
proxyCountrystring—
followRedirectbooleanfalse

url2Pdf

Convert any URL to a downloadable PDF.

ParameterTypeDefaultDescription
url \*string—Target URL
devicedesktopmobiledesktopDevice to emulate
formata4a3a5a6letterlegala0–a2a4Paper size
orientationportraitlandscapeportraitPage orientation
proxyCountrystring—Country ISO code
scalenumber—Zoom level
margin.topnumber25Top margin in mm
margin.bottomnumber25Bottom margin in mm
margin.leftnumber25Left margin in mm
margin.rightnumber25Right margin in mm
hideCookiebooleantrueRemove cookie banners
skipCaptchabooleantrueBypass anti-bot challenges
addTimestampbooleanfalseAdd a timestamp

openPorts

Scan open ports on a host. Optionally perform service and version detection on ports found open.

ParameterTypeDescription
url \*stringTarget URL or hostname
topPorts5010050010005000Scan top N common ports
portRangesstringCustom ranges, e.g. "80,443,1000-1010"
detectServicesbooleanWhen true, also run service/version detection on open ports
Service Detection

Set detectServices: true to perform Nmap service/version detection on ports found open.

{
  "url": "example.com",
  "topPorts": 100,
  "detectServices": true
}

When successful, the response includes a services array containing information such as:

  • Port number
  • Port state
  • Detected service name
  • Product name
  • Product version
  • Additional service information
  • Inferred OS type, when available

Example response structure:

{
  "data": [22, 80, 443],
  "services": [
    {
      "port": 22,
      "state": "open",
      "service": {
        "name": "ssh",
        "product": "OpenSSH",
        "version": "9.6"
      }
    },
    {
      "port": 443,
      "state": "open",
      "service": {
        "name": "https"
      }
    }
  ]
}

Service detection is best-effort and can take longer than a standard port scan.

If service detection is requested but cannot be completed, the API can return a servicesError field. The data field containing the discovered open ports remains available.


tlsScan

Inspect TLS/SSL configuration — protocols, ciphers, certificate details.

ParameterType
url \*string

loadTime

Measure full page load time from any location. Optionally test reachability from multiple locations at once.

ParameterTypeDefaultDescription
url \*string—Target URL
proxyCountrystring—Country ISO code
followRedirectbooleanfalseFollow redirects
targetCountriesarray of string—Up to 3 ISO country codes to also test via proxy, alongside the default US test. Returns a per-location breakdown when set

mixedContent

Detect mixed content issues (HTTP resources on HTTPS pages).

ParameterTypeDefault
url \*string—
proxyCountrystring—
followRedirectbooleanfalse

dnsSec

Check if DNSSEC is enabled and properly configured for a domain.

ParameterType
url \*string

mtr

Run an MTR (My Traceroute) network diagnostic test.

ParameterTypeDefault
url \*string—
proxyCountrystring—
followRedirectbooleanfalse

ping

Ping a host and return latency.

ParameterType
url \*string

lighthouse

Run a full Lighthouse audit — performance, SEO, accessibility, and best practices.

ParameterTypeDefaultDescription
url \*string—Target URL
devicedesktopmobiledesktopDevice to emulate
proxyCountrystring—Country ISO code
followRedirectbooleanfalseFollow redirects
parametersarray of string—Extra Lighthouse CLI flags

Environment Variables

VariableRequiredDescription
API_KEY✅Your Geekflare API key
API_BASE_URL—Override the API base URL (default: https://api.geekflare.com)

License

MIT

Frequently asked questions

What is Geekflare?

Web search, Google SERP, scraping, screenshots, PDFs, brand data, and website diagnostics.

How do I install Geekflare?

It runs as a remote server. In Claude Code: claude mcp add --transport http geekflare 'https://mcp.geekflare.com/{API_KEY}/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does Geekflare need an API key?

Yes. It expects API_KEY, which you set in its configuration.

Is Geekflare open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Geekflare?

It is published by geekflare. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.