Перейти к содержимому
Выберите тему

Fetch

Fetch - эталонный MCP-сервер mcp-server-fetch: загружает веб-страницу и отдаёт её модели в Markdown. Один инструмент fetch, только stdio, правило robots.txt

сверено с первичными источниками 4 октября 2026

По README сервера, Fetch даёт модели возможность получать содержимое веб-страниц: сервер загружает страницу и переводит HTML в Markdown, чтобы текст было удобнее читать.

Проект относит Fetch к эталонным реализациям. По корневому README, это учебные примеры для разработчиков собственных серверов, а не готовые решения для промышленной эксплуатации.

README рекомендует запуск через uvx - без отдельной установки:

Настройка клиента: Fetch через uvx
{
"mcpServers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}

Пример взят из документации выпуска 2026.8.18 и здесь не запускался.

Второй способ из того же README - установка через pip:

Установка через pip
pip install mcp-server-fetch
python -m mcp_server_fetch

Пример взят из документации выпуска 2026.8.18 и здесь не запускался.

README добавляет, что при установленном Node.js сервер использует другой, более устойчивый упроститель HTML.

Список сверен с файлом server.py. Этот файл в опубликованном пакете 2026.8.18 совпадает с веткой main побайтно.

Инструмент Что делает
fetch загружает адрес из интернета и извлекает содержимое в виде Markdown

Аргументы инструмента по README:

Аргумент Тип Назначение
url строка, обязательный адрес для загрузки
max_length целое, необязательный наибольшее число символов в ответе; по умолчанию 5000
start_index целое, необязательный с какого символа начинать; по умолчанию 0
raw логический, необязательный отдать содержимое без перевода в Markdown; по умолчанию false

Ответ обрезается по max_length. Аргумент start_index позволяет модели читать длинную страницу частями.

Промпт Аргумент Что делает
fetch url, обязательный загружает адрес и извлекает содержимое в виде Markdown

Ресурсов сервер не объявляет.

Только stdio: в исходном коде используется одна точка входа stdio_server(). Работать по HTTP сам сервер не умеет.

Ключ Что делает
--ignore-robots-txt не учитывать robots.txt
--user-agent=... задать свою строку User-Agent
--proxy-url ходить через указанный прокси

Правило robots.txt. По README, сервер по умолчанию соблюдает robots.txt сайта, когда запрос пришёл от модели через инструмент, и не соблюдает, когда запрос начал пользователь через промпт. Ключ --ignore-robots-txt отключает проверку.

Что это значит на деле: адрес для загрузки выбирает модель. Если текст, который она прочитала, подсказал ей внутренний адрес, сервер попробует его открыть - с той машины, где он запущен.

В файле server.py этого выпуска отбора по частным и локальным адресам нет, а запросы идут с переходом по перенаправлениям (follow_redirects=True). Считают ли сопровождающие такое поведение задуманным, в документации не сказано; ссылаться можно только на предупреждение из README.

В базе советов по безопасности GitHub на 4 октября 2026 записей для пакета mcp-server-fetch нет. Это не утверждение, что уязвимостей нет.

Как ограничить сетевой доступ процесса - вопрос операционной системы и контейнера. Это практика, не правило MCP.

Сервер не заявляет, по какой редакции протокола он работает: ни README, ни исходный код её не называют.

README опубликованного пакета сообщает о зависимости: нужен MCP Python SDK 1.x (mcp>=1.29.0,<2), а перенос на SDK 2.0 ещё идёт. Это факт о пакете. Вывода о редакции протокола из него этот сайт не делает.