
Security News
GitHub Actions Adds cache-mode to Limit Cache Poisoning Risk
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.
@geekflare/mcp
Advanced tools
Official MCP (Model Context Protocol) server for the Geekflare. Connect Geekflare's web intelligence tools directly to Claude, Cursor, Windsurf, and other AI assistants.
Sign up at geekflare.com/api and copy your API key from the dashboard.
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"geekflare": {
"command": "npx",
"args": ["-y", "@geekflare/mcp"],
"env": {
"API_KEY": "your-api-key-here"
}
}
}
}
Add to your MCP settings:
{
"mcpServers": {
"geekflare": {
"command": "npx",
"args": ["-y", "@geekflare/mcp"],
"env": {
"API_KEY": "your-api-key-here"
}
}
}
}
{
"mcpServers": {
"geekflare": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "API_KEY=your-api-key-here", "geekflare/mcp"]
}
}
}
webScrapeScrape 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.
| Parameter | Type | Default | Description |
| ------------------ | --------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | --------- | --------------------------------------- |
| url * | string | — | Target URL |
| device | desktop | mobile | desktop | Device to emulate |
| format | array | ["markdown"] | Output formats (up to 3): html, markdown, json, markdown-llm, html-llm, text, text-llm |
| proxyMode | boolean | "auto" | false | false never uses a proxy, auto retries through one if the site blocks the request, true always uses one |
| proxyCountry | string | — | Route through a country ISO code (e.g. "us"), used when a proxy is active |
| renderJS | boolean | auto | Execute JavaScript before extracting. If omitted, resolved automatically based on whether the page needs it |
| fileOutput | boolean | false | Return a download URL instead of inline content |
| blockAds | boolean | true | Block ads during scrape |
| stealth | boolean | false | Bypass CAPTCHAs (slower) |
| waitTime | number | 0 | Seconds to wait after page load before capturing content |
| extractionMode | default | cssSchema | xpathSchema | template | default | Only used when format includes json |
| template | product | contact | — | Ready-made extraction template when extractionMode is template |
| extractionSchema | object | — | Custom field-extraction schema for cssSchema/xpathSchema modes |
| aiPrompt | object | — | AI-powered extraction/analysis of the scraped page. Supports prompt, schema, listing, summary, sentiment, and keywords modes. Adds +6 credits |
metaScrapeScrape meta tags — title, description, Open Graph, Twitter cards, and more.
| Parameter | Type | Default | Description |
| -------------- | --------- | ---------- | ----------------------------------------------- | ----------------- |
| url * | string | — | Target URL |
| device | desktop | mobile | desktop | Device to emulate |
| format | json | markdown | json | Response format |
| proxyCountry | string | — | Country ISO code |
| renderJS | boolean | true | Whether to execute JavaScript |
| fileOutput | boolean | false | Return a download URL instead of inline content |
| blockAds | boolean | true | Block ads during scrape |
brandGet 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.| Parameter | Type | Default | Description |
| --------- | ---------- | ---------- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| url * | string | — | Target URL |
| refresh | boolean | false | Force an on-demand fetch and refresh the cached brand data |
| mode | standard | enriched | standard | Depth of brand data to return. enriched includes LLM-synthesized company intelligence |
{
"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:
Enriched company information depends on the publicly available information for the domain, so individual fields may be omitted.
screenshotCapture a screenshot of any website. Supports full-page, element-only, Retina, dark mode, transparent backgrounds, and AI-friendly link highlighting.
| Parameter | Type | Default | Description |
| ----------------------- | --------- | -------- | --------------------------------------------------------------- | ----------------- | ------------ |
| url * | string | — | Target URL |
| device | desktop | mobile | desktop | Device to emulate |
| type | png | jpeg | webp | png | Image format |
| proxyCountry | string | — | Country ISO code |
| fullPage | boolean | false | Capture the full page |
| selector | string | — | CSS selector for the element to capture |
| fallbackToFullPage | boolean | false | Fall back to a full-page capture if selector isn't found |
| blockAds | boolean | true | Block ads |
| hideCookie | boolean | true | Remove cookie banners |
| skipCaptcha | boolean | true | Bypass anti-bot challenges |
| addTimestamp | boolean | false | Add a timestamp |
| highlightLinks | boolean | false | Draw borders around links/buttons — useful for AI vision models |
| pageHeight | number | — | Custom page height in pixels |
| viewportWidth | number | — | Viewport width |
| viewportHeight | number | — | Viewport height |
| captureBeyondViewport | boolean | — | Capture content beyond the configured viewport |
| delay | number | — | Seconds to wait after page load |
| quality | number | 90 | Image quality for JPEG/WEBP |
| scaleFactor | number | — | Device pixel ratio |
| theme | light | dark | auto | auto | Color scheme |
| removeBackground | boolean | false | Remove page background (PNG only) |
| disableAnimations | boolean | false | Freeze CSS animations before capture |
| inline | boolean | false | Return image data inline instead of a CDN URL |
searchSearch the web and return clean, structured results. Supports web, news, and image search with optional AI-grounded answers.
| Parameter | Type | Default | Description |
| ---------------- | --------- | ---------- | -------------------------------------------------- | ---------- | --------------- | ------ | --- | --------------- |
| query * | string | — | Search query |
| limit | number | 10 | Number of results |
| time | string | — | Time filter: any, d, w, m, y, d7, h6 |
| location | string | — | Country ISO code to localise results |
| source | web | news | images | web | Search source |
| category | general | code | pdf | research | linkedin | wiki | — | Search category |
| format | json | markdown | html | json | Response format |
| includeDomains | array | — | Only include these domains |
| excludeDomains | array | — | Exclude these domains |
| groundedAnswer | boolean | false | Generate an AI answer synthesised from results |
| scrape | boolean | false | Also scrape top result pages |
| scrapeLimit | number | 3 | How many pages to scrape when scrape is enabled |
dnsRecordLook up DNS records for a domain.
| Parameter | Type | Default |
|---|---|---|
url * | string | — |
types | array | All supported types |
Supported DNS record types:
A, AAAA, CNAME, MX, NS, SOA, TXT, CAA, SRV
siteStatusCheck if a site is up or down.
| Parameter | Type | Default |
|---|---|---|
url * | string | — |
proxyCountry | string | — |
followRedirect | boolean | false |
redirectCheckTrace the full redirect chain of a URL.
| Parameter | Type |
|---|---|
url * | string |
proxyCountry | string |
brokenLinkFind all broken links on a webpage.
| Parameter | Type | Default |
|---|---|---|
url * | string | — |
proxyCountry | string | — |
followRedirect | boolean | false |
url2PdfConvert any URL to a downloadable PDF.
| Parameter | Type | Default | Description |
| --------------- | ---------- | ----------- | -------------------------- | ----------------- | -------- | ------- | --------- | ---- | ---------- |
| url * | string | — | Target URL |
| device | desktop | mobile | desktop | Device to emulate |
| format | a4 | a3 | a5 | a6 | letter | legal | a0–a2 | a4 | Paper size |
| orientation | portrait | landscape | portrait | Page orientation |
| proxyCountry | string | — | Country ISO code |
| scale | number | — | Zoom level |
| margin.top | number | 25 | Top margin in mm |
| margin.bottom | number | 25 | Bottom margin in mm |
| margin.left | number | 25 | Left margin in mm |
| margin.right | number | 25 | Right margin in mm |
| hideCookie | boolean | true | Remove cookie banners |
| skipCaptcha | boolean | true | Bypass anti-bot challenges |
| addTimestamp | boolean | false | Add a timestamp |
openPortsScan open ports on a host. Optionally perform service and version detection on ports found open.
| Parameter | Type | Description |
| ---------------- | ------- | ------------------------------------------------------------- | ----- | ------ | ------ | ----------------------- |
| url * | string | Target URL or hostname |
| topPorts | 50 | 100 | 500 | 1000 | 5000 | Scan top N common ports |
| portRanges | string | Custom ranges, e.g. "80,443,1000-1010" |
| detectServices | boolean | When true, also run service/version detection on open ports |
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:
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.
tlsScanInspect TLS/SSL configuration — protocols, ciphers, certificate details.
| Parameter | Type |
|---|---|
url * | string |
loadTimeMeasure full page load time from any location. Optionally test reachability from multiple locations at once.
| Parameter | Type | Default | Description |
|---|---|---|---|
url * | string | — | Target URL |
proxyCountry | string | — | Country ISO code |
followRedirect | boolean | false | Follow redirects |
targetCountries | array 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 |
mixedContentDetect mixed content issues (HTTP resources on HTTPS pages).
| Parameter | Type | Default |
|---|---|---|
url * | string | — |
proxyCountry | string | — |
followRedirect | boolean | false |
dnsSecCheck if DNSSEC is enabled and properly configured for a domain.
| Parameter | Type |
|---|---|
url * | string |
mtrRun an MTR (My Traceroute) network diagnostic test.
| Parameter | Type | Default |
|---|---|---|
url * | string | — |
proxyCountry | string | — |
followRedirect | boolean | false |
pingPing a host and return latency.
| Parameter | Type |
|---|---|
url * | string |
lighthouseRun a full Lighthouse audit — performance, SEO, accessibility, and best practices.
| Parameter | Type | Default | Description |
| ---------------- | --------------- | -------- | -------------------------- | ----------------- |
| url * | string | — | Target URL |
| device | desktop | mobile | desktop | Device to emulate |
| proxyCountry | string | — | Country ISO code |
| followRedirect | boolean | false | Follow redirects |
| parameters | array of string | — | Extra Lighthouse CLI flags |
| Variable | Required | Description |
|---|---|---|
API_KEY | ✅ | Your Geekflare API key |
API_BASE_URL | — | Override the API base URL (default: https://api.geekflare.com) |
MIT
FAQs
Official MCP server for Geekflare API
The npm package @geekflare/mcp receives a total of 52 weekly downloads. As such, @geekflare/mcp popularity was classified as not popular.
We found that @geekflare/mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.

Security News
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.

Company News
Allow myself to introduce... myself.

Research
/Security News
A Twitch browser extension on Chrome and Firefox forwards users’ live OAuth session tokens through proxies controlled by a Russian bot service.