Geonode MCP Server

com.geonodePublished by geonode.comOfficial publisherv1.0.1Updated Oct 29, 2026

Web data for agents. Extract web pages, crawl websites, discover URLs, and search the web.

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingData & Analytics

Overview

AI-generated overview

Hosted Geonode MCP server that gives an assistant web search, page extraction, URL discovery and site crawling tools.

What you can do
  • Search the web with locale, recency and safe-search options, then read the results of search jobs
  • Extract a single page as HTML or Markdown, synchronously or as a background job, with optional JavaScript rendering and proxy geo-targeting
  • Discover URLs under a base URL by combining sitemap parsing with link extraction
  • Crawl a site breadth-first up to a depth and page limit, and cancel running crawls
  • Run batch extractions over a list of URLs and cancel them
  • List and inspect past extraction, batch, crawl, map and search jobs, and read aggregated usage statistics
When to use it
Useful when an assistant needs live web content as context: turning pages into Markdown, researching from an editor, or collecting many pages from a site for later analysis. Anonymous access is enough for occasional single-page extraction; the wider toolset needs an account.
Requirements
A remote Streamable HTTP endpoint; no local package or runtime is needed. An API key sent in the X-Api-Key header is required for every tool except extract; without it, only synchronous extraction with anonymous rate and volume limits works. JavaScript rendering and country targeting also require the key.
Before you install
The API key is a secret: keep it out of prompts and committed files and supply it through the client's secure header configuration. Crawls, batches and searches consume the account plan's limits and may incur usage. Extraction, crawl and batch tools send target URLs and custom headers to Geonode's hosted service, and the README notes the documented recipes were not run as authenticated end-to-end examples.

Installation

In SourceWeft

  1. Open Geonode MCP Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.geonode%2Fmcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "geonode": {
      "type": "http",
      "url": "https://mcp.geonode.com/mcp"
    }
  }
}

README

[Geonode MCP Server: Web Scraping for AI Assistants]

Geonode MCP Server: Web Scraping for AI Assistants

Give MCP-compatible AI assistants web search and content collection tools. Extract pages, discover URLs, crawl sites and run batches for research and downstream analysis. Geonode offers limited keyless page extraction; an API key enables the full toolset, including JavaScript rendering and country targeting.

Try Geonode for free

Integrations page · Geonode API docs · MCP setup guide · View source on GitHub · Official MCP Registry

Connect · Example: extract a page and answer with sources

Workflow ideas

  • Turn a page into context. Extract a page as Markdown for your assistant to read.
  • Research from your editor. Let your assistant find and work with web data without switching tools.

Connect

SettingValue
Remote endpointhttps://mcp.geonode.com/mcp
TransportStreamable HTTP
Account authenticationX-Api-Key header
Official registry IDcom.geonode/mcp

Connections to https://scraper.geonode.io/mcp keep working; it serves the same server.

  1. Add the endpoint as a remote HTTP MCP server in your assistant. Follow the Geonode client setup documentation for its configuration format.
  2. Refresh the tool list. Every tool is listed without a key, but only extract runs without one; the other tools need your Geonode API key and use your plan limits.
  3. When you are ready to make a request, ask your assistant to extract a specific URL as Markdown. Inspect the tool result before asking it to summarize the page.

Client configuration formats differ. There is no universal JSON installation block in this repository, and the documented recipes are not a claim of tested installation in every client.

Check discovery without extracting a page

Requires Python 3.10 or newer; no third-party packages or API key are needed.

sh
# Show what the example will do. No network calls.python3 examples/discover.py
# Explicitly connect and print the discovered tool schemas.python3 examples/discover.py --connect

The script sends initialize, notifications/initialized, and tools/list. It handles JSON or SSE responses and preserves a session ID if the server provides one. It never sends tools/call, reads API credentials, or extracts a page. A successful result confirms metadata discovery, not scraping success.

How the discovery example works · Run its offline tests

Anonymous or account-backed access

Anonymous access is intended for limited synchronous extraction. JavaScript rendering and country targeting require authentication. Check the current keyless limits before relying on it for a workflow.

For authenticated access, create an API key in the Geonode dashboard and set X-Api-Key through your client's credential or secure-header configuration. Keep the key out of prompts and committed files. Use the authenticated tool schemas returned by your client rather than assuming the anonymous tool list is complete.

Example: extract a page and answer with sources

  1. Configure the hosted endpoint in a client that supports remote Streamable HTTP MCP, then refresh its tools.
  2. Start with the extract tool available through anonymous discovery, or configure X-Api-Key through the client's secure credentials for account access.
  3. Ask the assistant to extract https://example.com as Markdown, summarize the returned page, and include its source URL.
  4. Inspect the actual tool response for an error before trusting the summary. Discovery alone does not prove that extraction completed.

Expected result: The tool supplies page content and the assistant writes the answer. This repository supplies setup guides and a discovery example, not a model or a self-hosted scraping backend.

Choose the right connection

Use MCP when your assistant discovers and calls tools through the Model Context Protocol. Use the Python or TypeScript SDK when your application owns the request flow, or the CLI for shell scripts.

Use the native Make.com, Zapier or self-hosted n8n connector when building scenarios or workflows in those platforms. Their available operations and access requirements differ from the MCP tool list.

Anonymous access exposes limited extraction. For authenticated access, discover the actual tool schemas in your connected client instead of copying tool names or arguments from a framework toolkit.

These recipes describe source-supported workflows. They have not been run as authenticated end-to-end examples in this review.

What is in this repository?

ResourcePurpose
Connection guideEndpoint, authentication and troubleshooting
Discovery exampleInspect metadata and tool input schemas
Offline testsExercise JSON/SSE parsing and discovery flow
Source and release boundarySeparate this repository from the hosted backend

The Python SDK, CLI and framework toolkits are separate integrations. Installing a Python package does not start this hosted MCP service. No local bridge, self-hosted backend, or package release is provided here.

For API or account questions, contact Geonode. For vulnerabilities, follow SECURITY.md. Contributions use the MIT license.

Try Geonode for free

Source: README.md at commit 5182d81

Tools

16

extract

Extract a web page

Extract content from a web page. Supports HTML and Markdown output formats, optional JavaScript rendering via headless browser, proxy geo-targeting, custom HTTP headers, and explicit browser wait controls via the wait_config object. Can run synchronously (returns content immediately) or asynchronously (returns a job ID that can be polled with the 'job' tool). Use 'render_js=true' for pages that require JavaScript to load their content; supplying wait_config also enables browser rendering automatically. Omit wait_config or set it to null to keep the adaptive browser settle path; send {} or concrete values to opt into explicit mode. Without an API key, extraction is synchronous only, without JavaScript rendering or request headers other than Accept-Language, and limited to a small per-client rate and daily volume. An API key, sent as the X-Api-Key header, lifts these restrictions; the plan's own limits apply instead.

Parametersapi_keyextract_requestrequired

job

Get an extraction job

Retrieve the result of an asynchronous extraction job by its job ID. Returns the current status (pending, running, completed, or failed) and, once completed, the extracted content and metadata. Use this tool to poll for results after submitting an extraction with processing_mode='async'. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersjob_idrequiredapi_key

jobs

List extraction jobs

List extraction jobs with optional filters. Filter by job ID, URL, status (pending, running, completed, failed), output format, or date range. Results are paginated; use 'page' and 'page_size' to navigate large result sets. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersurlpagejob_idoutputapi_keyend_datepage_sizejob_statusstart_date

statistics

Get extraction statistics

Retrieve aggregated extraction statistics for the authenticated user. Returns metrics such as total jobs, success and failure counts, and usage breakdowns over the specified date range: at most 366 days, counted back from the end date (an older start date is moved up; an end date after now is moved back to now). Defaults to the last 30 days when no dates are provided. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersapi_keyend_datestart_date

batch

Start a batch extraction

Start an asynchronous batch extraction job from an explicit list of URLs. Supports HTML and Markdown output formats, optional JavaScript rendering, proxy settings, custom headers, and the grouped wait_config browser wait policy. Omit wait_config or set it to null to keep adaptive browser settling for child extractions; send {} or concrete values to opt every child extraction into explicit mode. Returns a job ID that can be polled with the 'batch_status' tool. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersapi_keybatch_requestrequired

batch_status

Get batch status and results

Retrieve the status and paginated results of a batch extraction job by its job ID. Returns item counts, invalid URLs, and the current page of per-URL extraction results. Requires a Geonode API key, sent as the X-Api-Key header.

Parameterspagejob_idrequiredapi_keypage_size

cancel_batch

Cancel a batch job

Cancel a batch job by its job ID. Stops scheduling new batch items while allowing in-flight child extractions to drain. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersjob_idrequiredapi_key

crawl

Start a site crawl

Start a website crawl job from a seed URL. Crawls pages breadth-first (BFS) up to the 'depth' parameter (BFS levels from the seed) and the 'limit' parameter (maximum number of pages to crawl). Supports Markdown and HTML output formats, optional JavaScript rendering, proxy geo-targeting, domain filtering, and the grouped wait_config browser wait policy. Omit wait_config or set it to null to keep adaptive browser settling for page extractions; send {} or concrete values to opt every page extraction into explicit mode. Returns a job ID that can be polled with the 'crawl_status' tool. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersapi_keycrawl_requestrequired

crawl_status

Get crawl status and results

Retrieve the status and results of a crawl job by its job ID. Returns the current status (queued, running, completed, or failed), page counts, and once completed, the crawled page results with extracted content. Results are paginated; use 'page' and 'page_size' to navigate. Requires a Geonode API key, sent as the X-Api-Key header.

Parameterspagejob_idrequiredapi_keypage_size

cancel_crawl

Cancel a crawl job

Cancel a crawl job by its job ID. Stops scheduling new crawl pages while allowing in-flight page work to drain. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersjob_idrequiredapi_key

map

Map a site's URLs

Discover all URLs under a base URL by combining sitemap parsing with HTML link extraction from the seed page. By default discovery is scoped to the exact seed host (a leading 'www.' is treated as equivalent) and, when the URL includes a path, to URLs under that path; sibling subdomains and outbound links are excluded. Set include_subdomains=true to widen the scope to the whole registrable domain and probe common subdomains (docs, blog, help, support). The optional 'search' parameter filters the discovered URLs by case-insensitive substring match — it does NOT query a search engine. Runs synchronously and returns the discovered links immediately. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersapi_keymap_requestrequired

map_jobs

List map jobs

List map jobs for the authenticated user with optional filters. Filter by base URL (partial match), status (pending, running, completed, failed), or date range. Results are paginated; use 'page' and 'page_size' to navigate. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersurlpageapi_keyend_datepage_sizejob_statusstart_date

map_job

Get a map job

Retrieve the full details and discovered links for a map job by its job ID. Returns the current status and, once completed, the discovered links and their source. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersjob_idrequiredapi_key

search_jobs

List search jobs

List search jobs for the authenticated user with optional filters. Filter by query (partial match), status (pending, running, completed, failed), or date range. Results are paginated; use 'page' and 'page_size' to navigate. Requires a Geonode API key, sent as the X-Api-Key header.

Parameterspagequeryapi_keyend_datepage_sizejob_statusstart_date

search_job

Get a search job

Retrieve the full details and results for a search job by its job ID. Returns the current status and, once completed, the search results, suggestions, and any spelling correction applied. Requires a Geonode API key, sent as the X-Api-Key header.

Parametersjob_idrequiredapi_key

Version history

1
  1. v1.0.1LatestOct 29, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts