Skip to main content
Glama

mcp-cloudflare

GitHub release License: AGPL-3.0 CalVer Node.js TypeScript mcp-cloudflare MCP server

Компактный MCP-сервер Cloudflare для управления DNS, зонами, туннелями, WAF, Zero Trust и безопасностью через Cloudflare API v4.

Без SSH. Без выполнения команд оболочки. Только API. 3 зависимости времени выполнения.

Содержание

Возможности

75 инструментов в 11 доменах:

  • DNS — управление записями (A, AAAA, CNAME, MX, TXT, SRV, CAA, NS), пакетные операции

  • Зоны — список зон, настройки, конфигурация SSL/TLS, управление кэшем

  • Туннели — создание, настройка и управление входящим трафиком Cloudflare Tunnel

  • WAF — управление наборами правил, пользовательские правила брандмауэра, ограничение скорости (rate limiting)

  • Zero Trust — CRUD для приложений доступа (создание/удаление), политики (создание/удаление), поставщики идентификации (создание/удаление), статус шлюза

  • Безопасность — аналитика событий безопасности, правила доступа по IP, конфигурация DDoS, аналитика Центра безопасности

  • Workers KV — управление пространствами имен, чтение/запись/удаление пар ключ-значение, список ключей

  • Workers — развертывание скриптов, управление маршрутами

  • Секреты Worker — управление секретами (только имена, значения никогда не раскрываются)

  • Аналитика Worker — метрики вызовов, время CPU, частота ошибок через GraphQL

  • Хранилище R2 — управление бакетами, список объектов и метаданные, пользовательские домены, подсказки о местоположении

Быстрый старт

npm install
cp .env.example .env   # Edit with your Cloudflare API token
npm run build
node dist/index.js     # stdio transport for MCP

Интеграция с Claude Code

Добавьте в .mcp.json в корне вашего проекта:

{
  "mcpServers": {
    "cloudflare": {
      "command": "node",
      "args": ["/path/to/mcp-cloudflare/dist/index.js"],
      "env": {
        "CLOUDFLARE_API_TOKEN": "your-api-token-here",
        "CLOUDFLARE_ACCOUNT_ID": "your-account-id"
      }
    }
  }
}

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

Переменная

Обязательно

По умолчанию

Описание

CLOUDFLARE_API_TOKEN

Да

Токен API Cloudflare (с соответствующими разрешениями)

CLOUDFLARE_ACCOUNT_ID

Нет

ID учетной записи Cloudflare (требуется для операций на уровне учетной записи)

CLOUDFLARE_TIMEOUT

Нет

30000

Тайм-аут запроса в миллисекундах

NAS_VAULT_ADDR

Нет

URL HashiCorp Vault, включает загрузку AppRole из Vault (см. ниже)

NAS_VAULT_ROLE_ID

Нет

role_id для Vault AppRole

NAS_VAULT_SECRET_ID

Нет

secret_id для Vault AppRole

NAS_VAULT_KV_MOUNT

Нет

kv

Путь монтирования Vault KV v2

Загрузка секретов из HashiCorp Vault (AppRole)

Если вы используете центральный экземпляр Vault, mcp-cloudflare может получать свои учетные данные при запуске через AppRole вместо передачи их через конфигурацию MCP:

export NAS_VAULT_ADDR=https://vault.example.com
export NAS_VAULT_ROLE_ID=<role-id>
export NAS_VAULT_SECRET_ID=<secret-id>
# optional — defaults to "kv"
export NAS_VAULT_KV_MOUNT=kv

Загрузчик считывает KV v2 по пути <mount>/data/cloudflare/api и ожидает два ключа: api_token и account_id. Пример записи в Vault:

vault kv put kv/cloudflare/api \
  api_token=your-api-token-here \
  account_id=00000000000000000000000000000000

Приоритет: process.env (явно) > Vault. Если NAS_VAULT_ADDR не задан, загрузчик ничего не делает — сервер ведет себя так же, как и раньше. При любой ошибке Vault (сеть, аутентификация, отсутствующий путь) в stderr записывается однострочное предупреждение, и сервер возвращается к использованию уже заданных переменных окружения.

Безопасность: значения секретов никогда не логируются. В диагностике stderr отображаются только имя пути KV и количество заполненных полей. Используется глобальный fetch (Node 20+) — никаких новых зависимостей времени выполнения.

Разрешения токена API

Создайте токен API на странице dash.cloudflare.com/profile/api-tokens со следующими разрешениями в зависимости от ваших нужд:

  • DNS: Zone > DNS > Edit

  • Настройки зоны: Zone > Zone Settings > Edit

  • Очистка кэша: Zone > Cache Purge > Edit

  • Туннели: Account > Cloudflare Tunnel > Edit

  • WAF: Zone > Firewall Services > Edit

  • Zero Trust: Account > Access: Apps and Policies > Edit

  • События безопасности: Zone > Analytics > Read

  • Workers KV: Account > Workers KV Storage > Edit

  • Workers: Account > Worker Scripts > Edit

  • R2: Account > R2 Storage > Edit

Поддержка нескольких зон

Все инструменты с областью действия зоны принимают параметр zone_id, который может быть:

  • 32-символьным шестнадцатеричным ID зоны (например, 00000000000000000000000000000001) — используется напрямую

  • Именем зоны / доменом (например, example.com) — разрешается автоматически через API Cloudflare

Это позволяет управлять несколькими зонами по имени без необходимости вручную искать ID.

Инструменты

Документация по инструментам появится в версии v1 по мере реализации модулей инструментов. См. docs/api-reference.md для планируемого сопоставления конечных точек API.

Навыки

Навыки Claude Code объединяют инструменты MCP в рабочие процессы более высокого уровня. См. .claude/skills/README.md для получения подробной документации.

Навык

Слэш-команда

Описание

cloudflare-health

/cf-health

Панель состояния зоны — DNS, безопасность, туннели, WAF, статус DDoS

cloudflare-live-test

/cf-test

Интеграционный тест в реальном времени — чтение + безопасная запись с очисткой

cloudflare-dns-management

Управление DNS-записями — добавление, список, обновление, удаление в разных зонах

cloudflare-incident-response

Экстренное реагирование на DDoS/атаки — обнаружение, оценка, смягчение, мониторинг

cloudflare-security-audit

Аудит состояния безопасности — WAF, события, доступ по IP, аналитика DDoS

cloudflare-tunnel-management

Управление туннелями — создание, настройка входящего трафика, мониторинг соединений

cloudflare-waf-management

Управление WAF — пользовательские правила, наборы правил, доступ по IP, режим Under Attack

cloudflare-zero-trust

Zero Trust — доступ к приложениям, политики, поставщики идентификации, шлюз

cloudflare-kv-manage

Workers KV — операции CRUD для пространств имен и пар ключ-значение

cloudflare-worker-deploy

Workers — развертывание скриптов, маршруты, секреты, аналитика

cloudflare-r2-manage

Хранилище R2 — управление бакетами и объектами, рабочие процессы аудита

Разработка

npm run build      # Compile TypeScript
npm test           # Run unit tests (vitest)
npm run typecheck  # Type check only (no emit)

См. CONTRIBUTING.md для получения рекомендаций по внесению вклада.

Лицензия

Этот проект имеет двойную лицензию:

Если вы используете mcp-cloudflare в проприетарном продукте или SaaS-предложении, требуется коммерческая лицензия. Поддержите разработку, спонсируя нас на GitHub.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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

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