RT

rosschurchill/technitium-mcp-secure

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

13 stars 6 forks Качество 66 Тренд 28MIT

Технический MCP

Обзор

Защищенный сервер Model Context Protocol (MCP) для управления Technitium DNS Server через HTTP API. Создан для использования с Claude Code и другими MCP-совместимыми клиентами. - охватывая зоны DNS, записи, блокировку, кэш, настройки, приложения, DNSSEC, журналы и диагностику - по всем параметрам (проверка домена RFC 1035, валидация IP, списки разрешений) - с явным HTTP-приемом для локальных сетей - для раскрытия только безопасных инструментов запроса - для разрушительных операций (зона удаления, запись удаления, кэш / разрешен / блок, приложение удаления) - с более строгими ограничениями на разрушительные операции - как структурированный JSONL для stderr - для полоски токенов, паролей, следов стека и чувствительных путей - для предотвращения утечки учетных данных / пути в сообщениях об ошибках - для безопасного хранения учетных данных - для предотвращения параллельных гонок аутентификации - для всех мутирующих операций; экспорт зоны использует GET (требуется Technitium API) с недолговечными сеансовыми токенами Вся конфигурация осуществляется через переменные среды: Приоритет аутентификации:.

Обзор (машинный перевод)

Защищенный сервер Model Context Protocol (MCP) для управления Technitium DNS Server через HTTP API.

Создан для использования с Claude Code и другими MCP-совместимыми клиентами.

Особенности

39 инструментов, охватывающих зоны DNS, записи, блокировку, кэш, настройки, приложения, DNSSEC, журналы и диагностику Валидация ввода по всем параметрам (проверка домена RFC 1035, валидация IP, список разрешений) HTTPS правоприменение с явным HTTP в локальных сетях Read-only mode to expose only safe query tools (только безопасные инструменты) ** Подтверждение, требуемое** для деструктивных операций (зона удаления, запись удаления, кэш-память/разрешение/блок, приложение для удаления) ** Ограничение ставок** с более строгими ограничениями на деструктивные операции ** Аудиторская регистрация** в виде структурированного JSONL ** Санитаризация ответов** для удаления токенов, паролей, следов стека и чувствительных путей ** Санитаризация ошибок** для предотвращения утечки учетных данных/путей в сообщениях об ошибках ** Поддержка файлов токенов** для безопасного хранения учетных данных Authmutex для предотвращения параллельных гонок аутентификации ** API-звонки только для ПОСТ** для всех мутирующих операций; экспорт зоны использует GET (требуется API Technitium) с токенами сеанса с коротким сроком действия

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

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

technitium-mcp-secure

A security-hardened Model Context Protocol (MCP) server for managing Technitium DNS Server via its HTTP API.

Built for use with Claude Code and other MCP-compatible clients.

Features

  • 39 tools covering DNS zones, records, blocking, cache, settings, apps, DNSSEC, logs, and diagnostics
  • Input validation on all parameters (RFC 1035 domain checks, IP validation, enum allowlists)
  • HTTPS enforcement with explicit HTTP opt-in for local networks
  • Read-only mode to expose only safe query tools
  • Confirmation required for destructive operations (delete zone, delete record, flush cache/allow/block, uninstall app)
  • Rate limiting with stricter limits on destructive operations
  • Audit logging as structured JSONL to stderr
  • Response sanitization to strip tokens, passwords, stack traces, and sensitive paths
  • Error sanitization to prevent credential/path leakage in error messages
  • Token file support for secure credential storage
  • Auth mutex to prevent concurrent authentication races
  • POST-only API calls for all mutating operations; zone export uses GET (required by Technitium API) with short-lived session tokens

Quick Start

# Clone and build
git clone https://github.com/rosschurchill/technitium-mcp-secure.git
cd technitium-mcp-secure
npm install
npm run build

# Register with Claude Code (see "Generating an API Token" below first)
claude mcp add technitium-dns \
  --env TECHNITIUM_URL=https://your-server-ip:5380 \
  --env TECHNITIUM_TOKEN=your-api-token \
  -- node /path/to/technitium-mcp-secure/dist/index.js

Configuration

All configuration is via environment variables:

Variable Required Description
TECHNITIUM_URL Yes Server URL (e.g. https://192.168.1.100:5380)
TECHNITIUM_TOKEN One of token/password API token (preferred)
TECHNITIUM_TOKEN_FILE One of token/password Path to file containing token (must be mode 0600)
TECHNITIUM_PASSWORD One of token/password Admin password (token is preferred)
TECHNITIUM_USER No Username (default: admin)
TECHNITIUM_READONLY No Set true to hide all write tools
TECHNITIUM_ALLOW_HTTP No Set true to allow insecure HTTP connections

Authentication priority: TECHNITIUM_TOKEN > TECHNITIUM_TOKEN_FILE > TECHNITIUM_PASSWORD

Sensitive environment variables are cleared from process.env after being read.

Tools

Read-only (18 tools)

Tool Description
dns_health_check Server version, uptime, forwarder config, failure rate
dns_get_stats Query statistics with top clients/domains/blocked
dns_check_update Check if a newer server version is available
dns_resolve Test DNS resolution via the server
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →