Skip to main content
Glama
coolaigit

site-crawler-mcp

by coolaigit

site-crawler-mcp

Сайтовый краулер MCP сервер, построенный на crawl4ai (Apache-2.0). Он обходит все внутренние ссылки сайта как паук поисковой системы (BFS), фильтрует страницы по времени публикации / заголовку / URL и может выполнять операции над собранными страницами (суммировать, нажимать ссылки, скачивать файлы). Результаты возвращаются в формате JSON и сохраняются в SQLite для повторного использования любым проектом.

中文简介:一个「像谷歌爬虫一样」的全站内链爬虫 MCP。基于 crawl4ai 自研封装, 支持 BFS 全站遍历、时间/标题/URL 筛选、页面操作(LLM 概括/点击链接/下载文件)、 结果 JSON 返回 + SQLite 持久化。注册到 Reasonix / Claude Desktop / Cursor 等任意 MCP 客户端即可全局复用。

Возможности

  • Обход всего сайта BFS — обходит все внутренние ссылки (max_depth / max_pages контролируемы)

  • Фильтр по времени — извлекает время публикации из метаданных страницы / JSON-LD / URL в первую очередь, при отсутствии использует время обхода (результат помечен time_source)

  • Фильтр по заголовку — включение / исключение по ключевому слову в заголовке (без учета регистра)

  • Фильтры по шаблону URL и домену — сопоставление с glob/regex URL, ограничение по тому же домену

  • Вежливый обход — уважает robots.txt и ограничивает скорость по умолчанию (можно отключить)

  • Операции над страницами — LLM суммаризация (LiteLLM: DeepSeek / GLM / OpenAI…, локальный запасной вариант), нажатие на конкретную ссылку (CSS-селектор или текст ссылки), скачивание файлов

  • Сохранение в SQLite — инструмент query_crawls для повторного использования собранных данных в последующих проектах

Related MCP server: Spider MCP Server

Инструменты

Инструмент

Описание

crawl_site

BFS обход всего сайта. Параметры: start_url, max_depth, max_pages, published_after/before, title_contains/title_exclude, url_pattern, include_external, respect_robots, rate_limit

scrape_page

Сбор одной страницы (markdown / заголовок / время публикации / ссылки)

summarize_page

Суммаризация содержимого страницы. mode=auto (сначала LLM → локальный запасной) / llm / local; llm_provider (формат LiteLLM, напр. deepseek/deepseek-chat), llm_api_key_env (по умолчанию DEEPSEEK_API_KEY)

click_link

Нажатие на ссылку внутри страницы (selector CSS или link_text) и сбор целевой страницы

download_file

Скачивание файлов со страницы в выходную директорию (по умолчанию E:\Reasonix-项目\crawler-output)

query_crawls

Запрос сохранённых результатов обхода из SQLite (фильтры по заголовку/URL/времени)

Требования

  • Python ≥ 3.12 (протестировано на 3.12.13)

  • Рекомендуется uv (также работает обычный pip)

  • Браузеры Playwright: python -m playwright install chromium (или укажите PLAYWRIGHT_BROWSERS_PATH на существующий установленный браузер)

Установка и регистрация

# 1. Create environment & install
uv venv .venv --python 3.12
uv pip install --python .venv\Scripts\python.exe crawl4ai "mcp>=1.2,<2"
uv pip install --python .venv\Scripts\python.exe -e .

# 2. Install browser (once)
.venv\Scripts\python.exe -m playwright install chromium

# 3. Register as MCP server (example for Reasonix config.toml)
[[plugins]]
name    = "site-crawler-mcp"
type    = "stdio"
command = "C:\\path\\to\\site-crawler-mcp\\.venv\\Scripts\\python.exe"
args    = ["-m", "site_crawler_mcp.server"]

Для Claude Desktop / Cursor добавьте те же command/args в раздел mcpServers в их конфигурационных файлах.

Быстрый старт (Python API)

import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

async def main():
    params = StdioServerParameters(command="python", args=["-m", "site_crawler_mcp.server"])
    async with stdio_client(params) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()
            res = await session.call_tool("crawl_site", {
                "start_url": "https://example.com",
                "max_depth": 2,
                "max_pages": 20,
                "title_contains": "Example",
            })
            print(res.content[0].text)

asyncio.run(main())

Как работает фильтр времени

Фильтры URL в crawl4ai работают только по URL, поэтому фильтрация на уровне содержимого реализована здесь:

  1. Обрезка на уровне URL — TimeRangeFilter / TitleFilter (шаблоны даты в URL, ключевые слова в URL)

  2. На уровне содержимого — после получения каждой страницы время публикации извлекается из <meta property="article:published_time">, JSON-LD datePublished, <time datetime>, или YYYY/MM/DD в URL. Если ничего не найдено, используется время обхода (решение документируется как time_source).

Соответствие

  • По умолчанию соблюдает robots.txt и ограничения скорости, чтобы не нагружать целевые сайты и не попасть в IP-бан.

  • Для обучения / исследований / ваших собственных сайтов; пожалуйста, соблюдайте условия использования целевых сайтов и местные законы.

Лицензия

MIT

Основано на crawl4ai (Apache-2.0).

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    Enables automated web research and intelligence gathering through recursive web crawling, multi-engine search integration, and persistent SQLite storage with support for keyword filtering and multiple export formats.
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    A comprehensive website crawler and SEO analyzer that stores site data in a local SQLite database for AI-driven auditing. It enables users to detect technical SEO issues, broken links, and security vulnerabilities through natural language queries or terminal commands.
    4
    54
    16
    Apache 2.0
  • A
    license
    -
    quality
    C
    maintenance
    Enables web crawling and content extraction from web pages, supporting multiple output formats like text, markdown, XML, and JSON, with robots.txt compliance and rate limiting.
    14
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Scrape, crawl, map & search the web. Open-source, self-hostable Rust crawler & search for AI agents.

  • Converts any URL to clean, LLM-ready Markdown using real Chrome browsers

  • Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.

View all MCP Connectors

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/coolaigit/site-crawler-mcp'

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