MCP Web Search Pro
MCP Web Search Pro
Расширенный, самостоятельно размещаемый сервер веб-исследований для MCP-совместимых клиентов. Он предоставляет AI-ассистенту инструменты для обнаружения веб-страниц, извлечения читаемого контента, рендеринга JavaScript-приложений, использования Internet Archive, когда страница недоступна, и чтения субтитров YouTube.
Сервис предназначен для локального использования или использования в доверенной сети. Он не имеет состояния, не требует API-ключей и предоставляет транспорт MCP Streamable HTTP на порту 8082. Он может работать рядом с более легким MCP-сервером веб-поиска на другом порту.
Работает как отдельный контейнер на порту 8082 вместе с облегченным mcp-web-search (порт 8081). Направляйте клиентов на тот, который лучше подходит для задачи — если pro когда-либо покажется медленным, облегченный сервер останется нетронутым.
Возможности
Веб-поиск через DuckDuckGo с ограничением результатов и выбором региона.
Извлечение читаемого HTML в Markdown с удалением навигации и шаблонного контента.
Автоматическое обнаружение PDF и извлечение текста.
Рендеринг через headless Chromium для React, Vue, SPA и других страниц с интенсивным использованием JavaScript.
Снимки Wayback Machine для недоступных или измененных страниц.
Транскрипты YouTube по URL или ID видео, с опциональными временными метками.
Эндпоинт
/healthдля проверки контейнера и процессов.Транспорты MCP Streamable HTTP и stdio без состояния.
Related MCP server: Basic MCP Tools
Инструменты MCP
Инструмент | Описание |
| Поиск в вебе через DuckDuckGo (ddgs). Аргументы: |
| Получение URL → Markdown. Автоматически определяет PDF и извлекает текст. Использует trafilatura для чистого извлечения статей (удаляет навигацию/рекламу/шаблонный контент). Аргументы: |
| Рендеринг страницы с интенсивным использованием JS / SPA через headless Chromium, затем извлечение текста. Используйте, когда |
| Получение последнего (или с указанной датой) архивного снимка URL из Wayback Machine. Повторяет попытки при временных ошибках 503. Аргументы: |
| Получение транскрипта видео YouTube. Принимает полный URL YouTube или голый 11-символьный ID видео. Аргументы: |
Используйте web_fetch для обычных страниц, так как он быстрее. Используйте web_fetch_js, когда первый инструмент возвращает пустую оболочку или неполный контент, потому что сайт зависит от клиентского JavaScript.
Запуск с Docker
docker compose up -d --buildПроверка:
curl http://localhost:8082/health # → {"status":"ok"}Логи / перезапуск / остановка:
docker compose logs -f
docker compose restart
docker compose downПервая сборка большая (~400MB), потому что она загружает Chromium для Playwright. Последующие сборки используют кэшированный слой.
Подключение клиентов
Направьте любой MCP-совместимый клиент на:
http://<server-host>:8082/mcpЗаголовки или API-ключи не требуются. Сервер работает в режиме без состояния.
Локальный запуск без Docker
Рекомендуется Python 3.12:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
playwright install --with-deps chromium
python server.pyЗапустите HTTP-транспорт напрямую с помощью:
python server.py --sse --host 127.0.0.1 --port 8082Несмотря на историческое название опции --sse, HTTP-реализация использует транспорт MCP Streamable HTTP без состояния.
Примечания по производительности
Только
web_fetch_jsтяжел во время выполнения — он запускает Chromium для каждого вызова (~5–15с). Остальные четыре инструмента — легкие чистые Python-инструменты и остаются быстрыми.shm_size: 1gbвdocker-compose.ymlпредотвращает сбои песочницы Chromium внутри контейнера.Для обычных страниц без JS используйте
web_fetch(быстро); оставьтеweb_fetch_jsдля сайтов React/Vue/SPA, которые рендерят контент с помощью JavaScript.
Конфигурация
Чтобы изменить порт, отредактируйте как сопоставление ports:, так и command: в docker-compose.yml. Чтобы включить журналирование необработанных запросов/ответов для отладки, переключитесь на закомментированную строку command: с --verbose.
Проверка
Этот репозиторий предназначен для публикации в качестве исходного кода и конфигурации сборки Docker. В настоящее время нет автоматизированного набора тестов. Рекомендуемые проверки проекта:
git diff --check
docker compose config
docker compose up -d --build
curl http://localhost:8082/health
docker compose logs --tail=100
docker compose downНе публикуйте этот сервис напрямую в открытый интернет без добавления аутентификации или размещения за доверенным обратным прокси. HTTP-режим привязывается к 0.0.0.0, разрешает запросы без API-ключей и допускает все источники; это удобно для локальных MCP-клиентов, но не является уровнем контроля доступа.
Примечания по безопасности и эксплуатации
web_fetchиweb_fetch_jsмогут запрашивать произвольные HTTP(S) URL. Ограничьте сетевой доступ или добавьте защиту URL/DNS, если недоверенные пользователи могут вызывать сервис.Держите
--verboseотключенным вне коротких локальных сеансов отладки, потому что он регистрирует тела запросов и ответов.Зависимости используют ограничения минимальных версий. Зафиксируйте или заблокируйте версии перед тем, как полагаться на воспроизводимые производственные сборки.
Файлы
server.py— MCP-сервер (5 инструментов)requirements.txt—mcp,httpx,beautifulsoup4,markdownify,ddgs,trafilatura,pypdf,youtube-transcript-api,playwrightDockerfile— Python 3.12-slim + Playwright Chromiumdocker-compose.yml— сервис на порту 8082 сshm_size: 1gb
Лицензия
В настоящее время файл лицензии не включен. Добавьте лицензию перед принятием внешних вкладов или распространением проекта.
This server cannot be installed
Maintenance
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
- Alicense-qualityAmaintenanceZero-auth multi-source research MCP server that enables web search, reading URLs, PDFs, GitHub repos, and querying Hacker News, Stack Overflow, Semantic Scholar, and YouTube transcripts without API keys.10Apache 2.0
- Flicense-qualityBmaintenanceA self-hosted MCP server providing private web search, web page fetching, and current date/time tools, powered by a bundled SearXNG instance for API-key-free local search.2
- Alicense-qualityCmaintenanceA fully local MCP server that provides web search via self-hosted SearXNG and page-to-markdown conversion (static and JS-rendered), all aggregated behind a single endpoint for use with AI assistants.MIT
- Alicense-qualityBmaintenanceMCP server enabling local-first web search, fetch, extract, and caching with citeable excerpts, no API key required. Supports research workflows for agents and apps.323MIT
Related MCP Connectors
An MCP server for deep research or task groups
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
An MCP server that gives your AI access to the source code and docs of all public github repos
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/AngelN-Halo/mcp-web-search-pro'
If you have feedback or need assistance with the MCP directory API, please join our Discord server