Skip to main content
Glama
crunchtools

mcp-cloudflare-crunchtools

by crunchtools

MCP Cloudflare CrunchTools

Безопасный MCP-сервер (Model Context Protocol) для управления Cloudflare DNS, Transform Rules, Page Rules и кэшем.

Обзор

Этот MCP-сервер спроектирован следующим образом:

  • Безопасность по умолчанию - Комплексное моделирование угроз, валидация входных данных и защита токенов

  • Без сторонних сервисов - Работает локально через stdio, ваш API-токен никогда не покидает вашу машину

  • Кроссплатформенность - Работает на Linux, macOS и Windows

  • Автоматическое обновление - GitHub Actions отслеживают CVE и обновляют зависимости

  • Контейнеризация - Доступен как quay.io/crunchtools/mcp-cloudflare и построен на базовом образе Hummingbird Python

Related MCP server: Cloudflare API MCP

Соглашение об именах

Компонент

Название

Репозиторий GitHub

crunchtools/mcp-cloudflare

Контейнер

quay.io/crunchtools/mcp-cloudflare

Пакет Python (PyPI)

mcp-cloudflare-crunchtools

Команда CLI

mcp-cloudflare-crunchtools

Импорт модуля

mcp_cloudflare_crunchtools

Почему Hummingbird?

Образ контейнера построен на базовом образе Hummingbird Python из Project Hummingbird, который предоставляет:

  • Минимальное количество CVE-уязвимостей - Образы Hummingbird собраны с минимальным набором пакетов, что значительно снижает поверхность атаки по сравнению с универсальными образами

  • Регулярные обновления - Патчи безопасности применяются оперативно, поэтому количество CVE остаётся низким

  • Оптимизация для Python - Предварительно настроенное окружение Python с менеджером пакетов uv для быстрых и воспроизводимых сборок

  • Готовность к production - Спроектирован для производственных нагрузок с корректной обработкой сигналов и работой от непривилегированного пользователя по умолчанию

Это означает, что ваш MCP-сервер работает в защищённой среде с меньшим количеством уязвимостей, чем типичные образы Python-контейнеров.

Возможности

Управление зонами (2 инструмента)

  • list_zones - Список всех зон, доступных вашему API-токену

  • get_zone - Получение информации о зоне по ID или имени домена

DNS-записи (5 инструментов)

  • list_dns_records - Список DNS-записей с фильтрацией

  • get_dns_record - Получение одной DNS-записи

  • create_dns_record - Создание записей A, AAAA, CNAME, MX, TXT, NS, SRV, CAA

  • update_dns_record - Обновление существующих записей

  • delete_dns_record - Удаление записей

Правила трансформации (6 инструментов)

  • list_request_header_rules / set_request_header_rules - Изменение заголовков запросов

  • list_response_header_rules / set_response_header_rules - Изменение заголовков ответов

  • list_url_rewrite_rules / set_url_rewrite_rules - Перезапись URL-пути и строки запроса

Правила страниц (4 инструмента)

  • list_page_rules - Список всех правил страниц

  • create_page_rule - Создание редиректов, настроек кэша и режимов SSL

  • update_page_rule - Изменение существующих правил

  • delete_page_rule - Удаление правил

Управление кэшем (1 инструмент)

  • purge_cache - Очистка по URL, тегу, хосту, префиксу или всего кэша

Установка

С помощью uvx (рекомендуется)

uvx mcp-cloudflare-crunchtools

С помощью pip

pip install mcp-cloudflare-crunchtools

С помощью контейнера

podman run -e CLOUDFLARE_API_TOKEN=your_token \
    quay.io/crunchtools/mcp-cloudflare

Конфигурация

Создание API-токена Cloudflare

  1. Перейдите в раздел API-токенов

  2. Задайте имя токена

    • Введите: mcp-cloudflare-crunchtools

  3. Настройте разрешения

    В разделе "Permissions" в каждой строке есть три выпадающих списка:

    • Первый выпадающий список: тип ресурса (Account or Zone)

    • Второй выпадающий список: конкретная категория разрешений

    • Третий выпадающий список: уровень доступа (Read or Edit)

    Нажмите "+ Add more", чтобы добавить каждую строку разрешений. Для полного доступа добавьте:

Ресурс

Разрешение

Доступ

Zone

Zone

Read

Zone

DNS

Edit

Zone

Page Rules

Edit

Zone

Transform Rules

Edit

Zone

Cache Purge

Purge

  1. Настройте ресурсы зоны

    • Первый выпадающий список: выберите "Include"

    • Второй выпадающий список: выберите "All zones" or "Specific zone"

  2. Настройте фильтрацию по IP-адресу клиента (необязательно)

    • Нажмите кнопку "Use my IP", чтобы ограничить токен вашим текущим IP-адресом

  3. Создайте и скопируйте токен

    • Нажмите "Continue to summary" → "Create Token"

    • ВАЖНО: Скопируйте токен сразу же - он отображается только один раз!

Добавление в Claude Code

claude mcp add mcp-cloudflare-crunchtools \
    --env CLOUDFLARE_API_TOKEN=your_token_here \
    -- uvx mcp-cloudflare-crunchtools

Или для контейнерной версии:

claude mcp add mcp-cloudflare-crunchtools \
    --env CLOUDFLARE_API_TOKEN=your_token_here \
    -- podman run -i --rm -e CLOUDFLARE_API_TOKEN quay.io/crunchtools/mcp-cloudflare

Наборы разрешений по сценариям использования

Read-Only (только просмотр)

Ресурс

Разрешение

Доступ

Zone

Zone

Read

Zone

DNS

Read

Только управление DNS

Ресурс

Разрешение

Доступ

Zone

Zone

Read

Zone

DNS

Edit

Полное управление (все функции)

Ресурс

Разрешение

Доступ

Zone

Zone

Read

Zone

DNS

Edit

Zone

Page Rules

Edit

Zone

Transform Rules

Edit

Zone

Cache Purge

Purge

Примеры использования

Список ваших зон

User: List my Cloudflare zones
Assistant: [calls list_zones]

Создание DNS-записи

User: Create an A record for www.example.com pointing to 192.168.1.1
Assistant: [calls create_dns_record with type=A, name=www, content=192.168.1.1]

Добавление заголовков безопасности

User: Add X-Content-Type-Options: nosniff to all responses for zone abc123...
Assistant: [calls set_response_header_rules with appropriate rule]

Очистка кэша

User: Purge the cache for https://example.com/styles.css
Assistant: [calls purge_cache with files=["https://example.com/styles.css"]]

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

Этот сервер спроектирован с безопасностью как главным приоритетом. См. в SECURITY.md:

  • модель угроз и векторы атак;

  • архитектура многоуровневой защиты;

  • рекомендации по работе с токенами;

  • правила валидации входных данных;

  • журналирование аудита.

Ключевые функции безопасности

  1. Защита токена

    • Хранится как SecretStr (никогда случайно не попадает в логи)

    • Только через переменную окружения (никогда в файлах или аргументах)

    • Удаляется из всех сообщений об ошибках

  2. Валидация входных данных

    • Модели Pydantic и валидация всех входных данных

    • Разрешённые значения для типов записей и действий

    • Строгая проверка формата ID

  3. Укрепление безопасности API

    • Жёстко заданный базовый URL API (предотвращает SSRF)

    • Проверка TLS-сертификатов

    • Тайм-ауты запросов

    • Лимиты на размер ответа

  4. Автоматический поиск CVE

    • GitHub Actions еженедельно сканируют зависимости

    • Автоматические PR для обновлений безопасности

    • Включены оповещения Dependabot

Разработка

Настройка

git clone https://github.com/crunchtools/mcp-cloudflare.git
cd mcp-cloudflare
uv sync

Запуск тестов

uv run pytest

Линтинг и проверка типов

uv run ruff check src tests
uv run mypy src

Сборка контейнера

podman build -t mcp-cloudflare .

Лицензия

AGPL-3.0-or-later

Вклад в проект

Вклад приветствуется! Пожалуйста, прочитайте SECURITY.md перед отправкой изменений, связанных с безопасностью.

Ссылки

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (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

View all related MCP servers

Related MCP Connectors

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/crunchtools/mcp-cloudflare'

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