Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Manage AdGuard Home through AI assistants
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
ADGUARD_URL, ADGUARD_USERNAME, ADGUARD_PASSWORDAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"adguard-home": {
"command": "npx",
"args": [
"-y",
"@samik081/mcp-adguard-home"
],
"env": {
"ADGUARD_URL": "your-value",
"ADGUARD_USERNAME": "your-value",
"ADGUARD_PASSWORD": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add adguard-home --env ADGUARD_URL=your-value --env ADGUARD_USERNAME=your-value --env ADGUARD_PASSWORD=your-value -- npx -y @samik081/mcp-adguard-homeTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"adguard-home": {
"command": "npx",
"args": [
"-y",
"@samik081/mcp-adguard-home"
],
"env": {
"ADGUARD_URL": "your-value",
"ADGUARD_USERNAME": "your-value",
"ADGUARD_PASSWORD": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"adguard-home": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@samik081/mcp-adguard-home"
],
"env": {
"ADGUARD_URL": "your-value",
"ADGUARD_USERNAME": "your-value",
"ADGUARD_PASSWORD": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 10. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto Samik081 bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: ADGUARD_URL, ADGUARD_USERNAME, ADGUARD_PASSWORD
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.10.1) kam vor 36 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js, Docker auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, xlvane: XLSX workbooks
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
XLSX tools: inspect, read, diff and validate workbooks; write, edit and convert with --allow-write.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
MCP server for AdGuard Home. Manage DNS filtering, clients, DHCP, rewrites, and more through natural language in Cursor, Claude Code, and Claude Desktop.
ADGUARD_ACCESS_TIER=read-only for safe monitoringADGUARD_CATEGORIES to expose only the tools you needfetch (Node.js 22+)linux/amd64 and linux/arm64 on GHCRMCP_TRANSPORT=http) using the Streamable HTTP protocolTested with AdGuard Home v0.107.76.
Run the server directly with npx:
ADGUARD_URL="http://your-adguard-ip:3000" \
ADGUARD_USERNAME="your-username" \ ADGUARD_PASSWORD="your-password" \ npx -y @samik081/mcp-adguard-home
The server validates your AdGuard Home connection on startup and fails immediately with a clear error if credentials are missing or invalid.
Run with Docker (stdio transport, same as npx):
docker run --rm -i \
-e ADGUARD_URL=http://your-adguard-ip:3000 \ -e ADGUARD_USERNAME=your-username \ -e ADGUARD_PASSWORD=your-password \ ghcr.io/samik081/mcp-adguard-home
To run as a remote MCP server with HTTP transport:
docker run -d -p 3000:3000 \
-e MCP_TRANSPORT=http \ -e ADGUARD_URL=http://your-adguard-ip:3000 \ -e ADGUARD_USERNAME=your-username \ -e ADGUARD_PASSWORD=your-password \ ghcr.io/samik081/mcp-adguard-home
The MCP endpoint is available at http://localhost:3000 and a health check at http://localhost:3000/health.
Claude Code CLI (recommended):
# Using npx
claude mcp add --transport stdio adguard-home \ --env ADGUARD_URL=http://your-adguard-ip:3000 \ --env ADGUARD_USERNAME=your-username \ --env ADGUARD_PASSWORD=your-password \ -- npx -y @samik081/mcp-adguard-home
claude mcp add --transport stdio adguard-home \ --env ADGUARD_URL=http://your-adguard-ip:3000 \ --env ADGUARD_USERNAME=your-username \ --env ADGUARD_PASSWORD=your-password \ -- docker run --rm -i ghcr.io/samik081/mcp-adguard-home
claude mcp add --transport http adguard-home http://localhost:3000
JSON config (works with Claude Code .mcp.json, Claude Desktop claude_desktop_config.json, Cursor .cursor/mcp.json):
{
"mcpServers": { "adguard-home": { "command": "npx", "args": ["-y", "@samik081/mcp-adguard-home"], "env": { "ADGUARD_URL": "http://your-adguard-ip:3000", "ADGUARD_USERNAME": "your-username", "ADGUARD_PASSWORD": "your-password" } } } }
Docker (stdio):
{
"mcpServers": { "adguard-home": { "command": "docker", "args": ["run", "--rm", "-i", "-e", "ADGUARD_URL=http://your-adguard-ip:3000", "-e", "ADGUARD_USERNAME=your-username", "-e", "ADGUARD_PASSWORD=your-password", "ghcr.io/samik081/mcp-adguard-home" ] } } }
Remote MCP (connect to a running Docker container or HTTP server):
{
"mcpServers": { "adguard-home": { "type": "streamable-http", "url": "http://localhost:3000" } } }
Control which tools are available using the ADGUARD_ACCESS_TIER environment variable:
| Tier | Tools | Description |
|---|---|---|
full (default) | 65 | Read and write -- full control |
read-only | 29 | Read only -- safe for monitoring, no state changes |
Tools that are not available in your tier are not registered with the MCP server. They will not appear in your AI tool's tool list, keeping the context clean.
| Variable | Required | Default | Description |
|---|---|---|---|
ADGUARD_URL | Yes | -- | AdGuard Home base URL (e.g., http://192.168.1.1:3000) |
ADGUARD_USERNAME | No | -- | Admin username. Omit together with ADGUARD_PASSWORD if AdGuard Home has authentication disabled |
ADGUARD_PASSWORD | No | -- | Admin password. Must be set whenever ADGUARD_USERNAME is |
ADGUARD_ACCESS_TIER | No | full | read-only for read-only tools only, full for all tools |
ADGUARD_CATEGORIES | No | *(all)* | Comma-separated category allowlist (e.g., dns,filtering,stats) |
ADGUARD_TOOL_BLACKLIST | No | *(none)* | Comma-separated list of tool names to exclude (e.g., dns_clear_cache,stats_reset) |
ADGUARD_TOOL_WHITELIST | No | *(none)* | Comma-separated list of tool names to force-include, bypassing access tier and category filters |
DEBUG | No | false | Enable debug logging to stderr |
MCP_TRANSPORT | No | stdio | Transport mode: stdio (default) or http |
MCP_PORT | No | 3000 | HTTP server port (only used when MCP_TRANSPORT=http) |
MCP_HOST | No | 0.0.0.0 | HTTP server bind address (only used when MCP_TRANSPORT=http) |
MCP_SESSION_IDLE_TIMEOUT | No | 1800 | Seconds of inactivity after which an HTTP session is closed and its memory released (sessions with a connected SSE stream are never closed). 0 disables. Only used when MCP_TRANSPORT=http |
MCP_EXCLUDE_TOOL_TITLES | No | false | Set true to omit tool titles from registration (saves tokens) |
global, dns, querylog, stats, filtering, safebrowsing, parental, safesearch, clients, dhcp, rewrites, tls, blocked_services, access, install, mobile_config
mcp-adguard-home provides 65 tools organized by category. Each tool's Access column shows the minimum tier required: read-only (available in both tiers) or full (requires full tier). The Hints column shows tool behavior: read-only (no state changes), destructive (modifies existing state), idempotent (same result if called twice).
Global (6 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
global_get_status | Retrieve server status including version, DNS addresses, protection state, and ports | read-only | read-only, idempotent |
global_get_profile | Retrieve user profile (name, language, theme) | read-only | read-only, idempotent |
global_check_version | Check for AdGuard Home updates and compare with current version | read-only | read-only, idempotent |
global_set_protection | Enable or disable DNS protection globally, with optional duration for temporary disable | full | destructive, idempotent |
global_update_profile | Update user profile settings (name, language, theme) | full | destructive, idempotent |
global_begin_update | Initiate an AdGuard Home software update | full | destructive |
DNS (4 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
dns_get_info | Retrieve full DNS configuration including upstreams, cache settings, blocking mode, and DNSSEC | read-only | read-only, idempotent |
dns_test_upstream | Test upstream DNS server configuration to verify servers are reachable | read-only | read-only, idempotent |
dns_set_config | Update DNS server configuration (23 optional fields for partial update, incl. rate-limit subnet lengths and allowlist) | full | destructive, idempotent |
dns_clear_cache | Clear the DNS resolver cache | full | destructive, idempotent |
Query Log (4 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
querylog_get | Search DNS query log with optional filtering by reason or response status, search term, and cursor pagination via older_than (returns a paging hint on empty results) | read-only | read-only, idempotent |
querylog_get_config | Retrieve query log configuration settings | read-only | read-only, idempotent |
querylog_set_config | Update query log configuration (enabled, interval, anonymization) | full | destructive, idempotent |
querylog_clear | Clear the entire DNS query log | full | destructive, idempotent |
Statistics (4 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
stats_get | Retrieve DNS statistics including top domains, blocked counts, and client activity | read-only | read-only, idempotent |
stats_get_config | Retrieve statistics configuration settings | read-only | read-only, idempotent |
stats_reset | Reset all DNS statistics | full | destructive, idempotent |
stats_set_config | Update statistics configuration (enabled, interval, ignored domains) | full | destructive, idempotent |
Filtering (8 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
filtering_get_status | Retrieve filtering configuration including blocklists, allowlists, and user rules | read-only | read-only, idempotent |
filtering_check_host | Test whether a hostname would be blocked by current filtering rules | read-only | read-only, idempotent |
filtering_set_config | Update global filtering configuration (enabled state and update interval) | full | destructive, idempotent |
filtering_add_url | Add a new filter URL (blocklist or allowlist) | full | — |
filtering_remove_url | Remove a filter URL from blocklist or allowlist | full | destructive |
filtering_set_url | Update an existing filter URL (rename, change URL, or enable/disable) | full | destructive, idempotent |
filtering_refresh | Force refresh of filter lists to fetch latest updates | full | destructive, idempotent |
filtering_set_rules | Set custom filtering rules (replaces all existing custom rules) | full | destructive, idempotent |
Safe Browsing (2 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
safebrowsing_get_status | Retrieve safe browsing (malware/phishing protection) status | read-only | read-only, idempotent |
safebrowsing_set | Enable or disable safe browsing protection | full | destructive, idempotent |
Parental (2 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
parental_get_status | Retrieve parental filtering status | read-only | read-only, idempotent |
parental_set | Enable or disable parental filtering (content restrictions) | full | destructive, idempotent |
Safe Search (2 tools)
| Tool | Description | Access | Hints |
|---|---|---|---|
safesearch_get_status | Retrieve safe search settings showing per-engine enforcement status | read-only | read-only, idempotent |
| safesearch_set_settings | Update safe search settings with per-engine configuration (Bing, DuckDuckGo, Google, Pixabay, Yandex, YouTube) | full
Nur der Anfang wird gezeigt; den Rest findest du im Repo