
rosschurchill/technitium-mcp-secure
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
Технический 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 |
Установка
This server does not publish a one-line install command.
Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →