# Fetch MCP (mcp-server-fetch): запуск и инструмент fetch

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

Страница: https://mcpdoc.ru/servers/fetch/
Указатель сайта: https://mcpdoc.ru/llms.txt

Fetch загружает веб-страницу по адресу и отдаёт её содержимое модели в виде Markdown. У сервера один инструмент `fetch` и один промпт с тем же именем. Работает он только по stdio.

README предупреждает: сервер может обращаться к локальным и внутренним адресам сети. Редакцию протокола сервер не заявляет.

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

Сведения о сервере поддерживается эталонный сервер проекта MCP

- **Кто выпускает:** Проект Model Context Protocol

- **Сторона:** сам владелец продукта

- **Где работает:** локально

- **Пакет:** mcp-server-fetch (PyPI)

- **Версия:** 2026.8.18, 2026-08-18

- **Транспорты:** stdio

- **Редакция протокола:** не заявлена

- **Проверено:** 2026-10-04

- **Источник:** [github.com](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch)

## Для чего он нужен

По [README сервера](https://github.com/modelcontextprotocol/servers/blob/5abed86c5317b833dd59907492d56c65981642aa/src/fetch/README.md), Fetch даёт модели возможность получать содержимое веб-страниц: сервер загружает страницу и переводит HTML в Markdown, чтобы текст было удобнее читать.

Проект относит Fetch к эталонным реализациям. По [корневому README](https://github.com/modelcontextprotocol/servers/blob/5abed86c5317b833dd59907492d56c65981642aa/README.md), это учебные примеры для разработчиков собственных серверов, а не готовые решения для промышленной эксплуатации.

## Запуск

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

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

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

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

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

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

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

## Инструмент

Список сверен с [файлом `server.py`](https://github.com/modelcontextprotocol/servers/blob/5abed86c5317b833dd59907492d56c65981642aa/src/fetch/src/mcp_server_fetch/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` отключает проверку.

## Безопасность

README предупреждает (в пересказе): сервер может обращаться к локальным и внутренним IP-адресам и может представлять угрозу безопасности; пользуйтесь им осторожно, чтобы не раскрыть закрытые данные.

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

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

В [базе советов по безопасности GitHub](https://github.com/advisories?query=mcp-server-fetch) на 4 октября 2026 записей для пакета `mcp-server-fetch` нет. Это не утверждение, что уязвимостей нет.

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

## Редакция протокола

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

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

## Что читать дальше

- [Эталонные серверы](https://mcpdoc.ru/servers/overview/) - все семь серверов.
- [Угрозы](https://mcpdoc.ru/security/threats/) - чем опасен сервер, который ходит в сеть по подсказке модели.
- [Как выбрать и проверить сервер](https://mcpdoc.ru/servers/choose/) - порядок проверки перед подключением.
