Skip to main content
Glama

mcp-server-webcrawl

by pragmar

mcp-server-webcrawl

Bridge the gap between your web crawl and AI language models using Model Context Protocol (MCP). With mcp-server-webcrawl, your AI client filters and analyzes web content under your direction or autonomously. The server includes a full-text search interface with boolean support, resource filtering by type, HTTP status, and more.

mcp-server-webcrawl provides the LLM a complete menu with which to search your web content, and works with a variety of web crawlers:

mcp-server-webcrawl is free and open source, and requires Claude Desktop and Python (>=3.10). It is installed on the command line, via pip install:

pip install mcp-server-webcrawl

Features

  • Claude Desktop ready
  • Fulltext search support
  • Filter by type, status, and more
  • Multi-crawler compatible
  • Supports advanced/boolean and field searching

MCP Configuration

From the Claude Desktop menu, navigate to File > Settings > Developer. Click Edit Config to locate the configuration file, open in the editor of your choice and modify the example to reflect your datasrc path.

You can set up more mcp-server-webcrawl connections under mcpServers as needed.

{ "mcpServers": { "webcrawl": { "command": [varies by OS/env, see below], "args": [varies by crawler, see below] } } }

For step-by-step setup, refer to the Setup Guides.

Windows vs. macOS

Windows: command set to "mcp-server-webcrawl"

macOS: command set to absolute path, i.e. the value of $ which mcp-server-webcrawl

For example:

"command": "/Users/yourusername/.local/bin/mcp-server-webcrawl",

To find the absolute path of the mcp-server-webcrawl executable on your system:

  1. Open Terminal
  2. Run which mcp-server-webcrawl
  3. Copy the full path returned and use it in your config file

wget (using --mirror)

The datasrc argument should be set to the parent directory of the mirrors.

"args": ["--crawler", "wget", "--datasrc", "/path/to/wget/archives/"]

WARC

The datasrc argument should be set to the parent directory of the WARC files.

"args": ["--crawler", "warc", "--datasrc", "/path/to/warc/archives/"]

InterroBot

The datasrc argument should be set to the direct path to the database.

"args": ["--crawler", "interrobot", "--datasrc", "/path/to/Documents/InterroBot/interrobot.v2.db"]

Katana

The datasrc argument should be set to the directory of root hosts. Katana separates pages and media by hosts, ./archives/example.com/example.com is expected, and appropriate. More complicated sites expand the crawl data into origin host directories.

"args": ["--crawler", "katana", "--datasrc", "/path/to/katana/archives/"]

SiteOne (using Generate offline website)

The datasrc argument should be set to the parent directory of the archives, archiving must be enabled.

"args": ["--crawler", "siteone", "--datasrc", "/path/to/SiteOne/archives/"]

Boolean Search Syntax

The query engine supports field-specific (field: value) searches and complex boolean expressions. Fulltext is supported as a combination of the url, content, and headers fields.

While the API interface is designed to be consumed by the LLM directly, it can be helpful to familiarize yourself with the search syntax. Searches generated by the LLM are inspectable, but generally collapsed in the UI. If you need to see the query, expand the MCP collapsable.

Example Queries

Query ExampleDescription
privacyfulltext single keyword match
"privacy policy"fulltext match exact phrase
boundar*fulltext wildcard matches results starting with boundar (boundary, boundaries)
id: 12345id field matches a specific resource by ID
url: example.com/*url field matches results with URL containing example.com/
type: htmltype field matches for HTML pages only
status: 200status field matches specific HTTP status codes (equal to 200)
status: >=400status field matches specific HTTP status code (greater than or equal to 400)
content: h1content field matches content (HTTP response body, often, but not always HTML)
headers: text/xmlheaders field matches HTTP response headers
privacy AND policyfulltext matches both
privacy OR policyfulltext matches either
policy NOT privacyfulltext matches policies not containing privacy
(login OR signin) AND formfulltext matches fullext login or signin with form
type: html AND status: 200fulltext matches only HTML pages with HTTP success

Field Search Definitions

Field search provides search precision, allowing you to specify which columns of the search index to filter. Rather than searching the entire content, you can restrict your query to specific attributes like URLs, headers, or content body. This approach improves efficiency when looking for specific attributes or patterns within crawl data.

FieldDescription
iddatabase ID
urlresource URL
typeenumerated list of types (see types table)
statusHTTP response codes
headersHTTP response headers
contentHTTP body—HTML, CSS, JS, and more

Content Types

Crawls contain a multitude of resource types beyond HTML pages. The type: field search allows filtering by broad content type groups, particularly useful when filtering images without complex extension queries. For example, you might search for type: html NOT content: login to find pages without "login," or type: img to analyze image resources. The table below lists all supported content types in the search system.

TypeDescription
htmlwebpages
iframeiframes
imgweb images
audioweb audio files
videoweb video files
fontweb font files
styleCSS stylesheets
scriptJavaScript files
rssRSS syndication feeds
textplain text content
pdfPDF files
docMS Word documents
otheruncategorized
-
security - not tested
F
license - not found
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Bridge the gap between your web crawl and AI language models. With mcp-server-webcrawl, your AI client filters and analyzes web content under your direction or autonomously, extracting insights from your web content.

Supports WARC, wget, InterroBot, Katana, and SiteOne crawlers.

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    Crawl4AI MCP Server is an intelligent information retrieval server offering robust search capabilities and LLM-optimized web content understanding, utilizing multi-engine search and intelligent content extraction to efficiently gather and comprehend internet information.
    Last updated -
    81
    Python
    MIT License
    • Apple
    • Linux
  • -
    security
    A
    license
    -
    quality
    An MCP server that helps AI assistants access text content from websites that implement bot detection, bridging the gap between what you can see in your browser and what the AI can access.
    Last updated -
    1
    Python
    Apache 2.0
  • -
    security
    F
    license
    -
    quality
    An MCP server that crawls API documentation websites and exposes their content to AI models, enabling them to search, browse, and reference API specifications.
    Last updated -
    Python
  • -
    security
    -
    license
    -
    quality
    An MCP server that enhances Brave Search results by using Puppeteer to extract full webpage content and explore linked pages, enabling AI assistants to perform comprehensive web research with configurable depth.
    Last updated -
    1
    TypeScript

View all related MCP servers

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/pragmar/mcp_server_webcrawl'

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