RT

rosschurchill/technitium-mcp-secure

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

13 stars 6 forks 품질 66 트렌드 28MIT

테크니엄 MCP

개요

보안 강화 모델 Context Protocol (MCP) 서버는 HTTP API를 통해 Technitium DNS Server를 관리합니다. Claude Code 및 기타 MCP 호환 클라이언트와 함께 사용하도록 제작되었습니다. - DNS 영역, 레코드, 차단, 캐시, 설정, 응용 프로그램, DNSSEC, 로그, 및 진단 - 모든 매개 변수 (RFC 1035 도메인 체크, IP 유효성 검사, enum allowlists) - 로컬 네트워크에 대한 명시적 HTTP opt-in - 보안 쿼리 도구 - 파괴적인 운영 (delete zone, delete record, flush cache/allow/block, uninstall app) - 파괴적인 운영에 대한 엄격한 제한으로 - 구조적 인 JSON Ldentials에 대한 설명적 인 오류를 방지하기 위해 - , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , 모든 구성은 환경 변수를 통해: 인증 우선:...

개요(AI 번역)

보안 강화 모델 Context Protocol (MCP) 서버는 HTTP API를 통해 Technitium DNS Server를 관리합니다.

Claude Code 및 기타 MCP 호환 클라이언트와 함께 사용하도록 제작되었습니다.

특징

  • **39 도구 ** DNS 영역, 기록, 차단, 캐시, 설정, 응용 프로그램, DNSSEC, 로그 및 진단 포함
  • ** 입력 유효성** 모든 매개 변수 (RFC 1035 도메인 확인, IP 유효성 검사, enum 수당)
  • **HTTPS 강제 ** 로컬 네트워크에 대한 명시된 HTTP opt-in
  • Read-only mode만 안전한 쿼리 도구를 노출 -확인 필수 destructive operations (delete zone, delete record, flush cache/allow/block, uninstall app)
  • Rate limiting를 파괴적인 작업에 대한 엄격한 제한
  • **Audit 로깅 ** 구조 JSONL으로 stderr
  • **Response sanitization ** 스트립 토큰, 암호, 스택 추적 및 민감한 경로 -Error sanitization 오류 메시지에서 credential/path 누설 방지
  • 토큰 파일 지원 안전한 자격 증명 저장
  • **Auth mutex ** 동시 인증 경주 방지
  • **POST-only API 호출 ** 모든 mutating 작업에 대 한; 영역 내보내기 사용 GET (Technitium API에 의해 필요) 짧은 라이브 세션 토큰

빠른 시작

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

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
GitHub에서 전체 README 보기

설치

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

Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →