AdGuard Home MCP. Control DNS rules and client security via conversation.
Works with every AI agent you already use
…and any MCP-compatible client
Just plug in your AI agents and start using Vinkius.
AdGuard Home MCP Server. Manage your network's DNS filtering, client security, and ad-blocking rules directly through your AI client. You can check server status, update upstream DNS servers, add specific blocklists, and audit which domains are blocked for individual devices.
It gives you granular, conversational control over network privacy and traffic control.
What your AI agents can do
Add client
Adds a new device IP address to the list of monitored clients.
Add filter url
Adds a new URL to the global blocklist of websites.
Add rewrite
Creates a specific DNS rewrite rule for a domain name.
You check the server's operational health, view active ports, and confirm the current protection state instantly.
You update the upstream DNS servers or modify bootstrap and cache parameters without touching the web UI.
You globally enable or disable filtering, safe browsing, and parental controls, sometimes setting a timer for how long the change lasts.
You instantly check if a specific domain name is being filtered or blocked for any client on the network.
You list all connected devices, search for specific clients, and set unique security rules for those individual devices.
You pull the complete DNS query log, or you get usage statistics, showing what traffic is hitting the server.
Ask AI about this MCP
Supported MCP Clients
Waiting for input…
AdGuard Home MCP Server: 23 Tools for Network Control
These tools let you manage DNS settings, audit network traffic, and configure every aspect of your AdGuard Home instance via your AI agent.
019e3860add client
Adds a new device IP address to the list of monitored clients.
019e3860add filter url
Adds a new URL to the global blocklist of websites.
019e3860add rewrite
Creates a specific DNS rewrite rule for a domain name.
019e3860add static lease
Assigns a fixed IP address lease to a specific client device.
019e3860check host
Determines if a specified website or domain is currently filtered by the server.
019e3860configure tls
Sets up or changes the server's secure communication (TLS) settings.
019e3860get dhcp status
Retrieves the current status and details of the DHCP server.
019e3860get dns info
Gets the current configuration details for the DNS service.
019e3860get filtering status
Retrieves the current filtering rules, including active blocklists and allowlists.
019e3860get query log
Pulls a chronological list of all DNS queries that have recently hit the server.
019e3860get query log config
Manages and retrieves the settings used for the DNS query log.
019e3860get stats
Retrieves usage statistics, like total queries or unique clients, since the last reset.
019e3860get status
Gets a high-level summary of the entire AdGuard Home server's operational status.
019e3860get tls status
Checks the current status of the TLS configuration and certificates.
019e3860list blocked services
Shows all the known services or domains that the server is configured to block.
019e3860list clients
Returns a list of every device that has connected to the network.
019e3860list rewrites
Displays all the existing DNS rewrite rules configured on the server.
019e3860search clients
Searches the client list based on IP address or MAC address to find a specific device.
019e3860set dns config
Updates the primary and secondary DNS servers used by the entire network.
019e3860set protection
Globally enables or disables the network's filtering protection layer.
019e3860set user rules
Applies custom, user-defined filtering rules that override global settings.
019e3860update blocked services
Changes the scheduling or configuration of the blocked services.
019e3860update query log config
Modifies the settings used for the DNS query log.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with AdGuard Home, then connect any of our 4,700+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 4,700+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
What you can do with this MCP connector
This server lets your AI client manage your network's security and DNS filtering without you ever touching a web UI. You'll treat network controls like a conversation. You check the server's overall operational status and confirm active ports instantly using get_status. You'll get a high-level summary of the entire AdGuard Home server's health with get_status.
You can check the current DNS configuration details with get_dns_info, and if you need to change the primary and secondary DNS servers for the whole network, you use set_dns_config. You'll see the current filtering rules, including active blocklists and allowlists, by calling get_filtering_status. You can globally enable or disable filtering protection, or even set it to run for a specific time with set_protection.
You'll manage and retrieve the settings for the DNS query log using get_query_log_config and update_query_log_config. You'll get a chronological list of every DNS query that hit the server by running get_query_log. You can check if a specific website or domain is currently filtered by the server using check_host. You'll list all known services or domains that the server is set up to block with list_blocked_services.
You can add a new URL to the global blocklist of websites with add_filter_url. You'll set custom, user-defined filtering rules that override global settings using set_user_rules. You can add a specific DNS rewrite rule for a domain name with add_rewrite and display all existing DNS rewrite rules with list_rewrites. You'll manage network clients by getting a list of every device that connected to the network with list_clients, searching for a specific client using search_clients, and assigning a fixed IP address lease to a device with add_static_lease.
You can add a new device IP address to the list of monitored clients using add_client and apply unique security rules to individual devices with set_user_rules. You can get usage statistics, like total queries or unique clients, since the last reset, with get_stats. You'll check the current TLS status and certificates using get_tls_status, and you can set up or change the server's secure communication settings with configure_tls.
You'll manage individual devices by checking the DHCP server's current status and details with get_dhcp_status. You'll assign a fixed IP address lease to a specific client device using add_static_lease. You'll manage the scheduling or configuration of blocked services by calling update_blocked_services. You can display all existing DNS rewrite rules with list_rewrites.
You'll confirm the current operational health and active ports by running get_status. You'll view the current list of every device connected to the network by running list_clients. You can search the client list based on IP or MAC address to find a specific device using search_clients. You'll apply custom rules that override global settings with set_user_rules.
You'll know what traffic is hitting the server by pulling the complete DNS query log with get_query_log. You can add a specific DNS rewrite rule for a domain name with add_rewrite. You'll update the primary and secondary DNS servers for the whole network with set_dns_config. You'll manage the settings used for the DNS query log with get_query_log_config and update_query_log_config.
How AdGuard Home MCP Works
- 1 Subscribe to this server and provide your AdGuard Home Base URL and credentials.
- 2 Your AI client authenticates and verifies your connection to the AdGuard Home instance.
- 3 You issue a command (e.g., 'Check the DNS status') and the AI client executes the corresponding tool call, returning the live data.
The bottom line is, you manage your network security by talking to your AI client, not by navigating a web dashboard.
Who Is AdGuard Home MCP For?
Network engineers who spend too much time clicking through web dashboards to fix a simple blocklist issue. System administrators managing dozens of clients who need quick, command-line access to settings. And privacy-focused users who want to manage custom filtering rules without touching complex configuration files.
Updates upstream DNS providers or checks why a specific host is being blocked for a client group. Needs quick, direct access to core network settings.
Monitors and tweaks the network ad blocker's settings (like TTL or cache size) without logging into the main web dashboard.
Audits the query log for suspicious activity or checks if a known malicious domain is being filtered correctly.
What Changes When You Connect
- You get immediate visibility into network activity by calling
get_query_logorget_stats. You see exactly what domains clients are trying to reach and how often they're failing. - You control the network's protection state instantly. Use
set_protectionto toggle global filtering orset_user_rulesto create specific exceptions for certain devices. - You manage the entire DNS setup from a single point. Call
set_dns_configto swap out upstream DNS providers or useadd_rewriteto force a domain to resolve somewhere else. - You handle client identity and IP conflicts. Use
list_clientsto see who's connected, oradd_static_leaseto guarantee a specific device always gets the same IP. - You audit specific domains for specific devices. Run
check_hostto verify if a domain is blocked for a client, or usesearch_clientsto look up a specific device's IP. - You keep the server running smoothly. Call
get_statusto check the overall server health andget_tls_statusto ensure secure communication is active.
Real-World Use Cases
Investigating a Targeted Block
A security analyst notices suspicious traffic. They ask their agent: 'Check if 'badsite.xyz' is blocked for client 192.168.1.50.' The agent runs check_host, confirming the domain is filtered, and then runs get_query_log to trace the exact attempt.
Changing the DNS Provider
The network admin needs to switch from Cloudflare to Quad9. They tell their agent: 'Change the upstream DNS to Quad9.' The agent executes set_dns_config, updating the primary DNS servers immediately. They then run get_dns_info to verify the change.
Fixing a Conflicting IP Address
A home lab user's printer keeps losing its IP. They ask the agent to check the client list, then run add_static_lease for the printer's MAC address, locking it to a permanent IP. They confirm the change with get_dhcp_status.
Disabling Filtering Temporarily
The network team needs to run a service that the ad blocker interferes with. They instruct the agent: 'Disable global protection for 15 minutes.' The agent uses set_protection and automatically sets a timer, ensuring the filter reactivates later.
The Tradeoffs
Manual Web UI Navigation
Having to log into the dashboard, navigate to 'DNS Settings,' find the upstream box, and manually paste the new server IPs. This takes several clicks and is prone to human error.
→
Just tell your agent: 'Update the primary DNS servers to 1.1.1.1 and 9.9.9.9.' The agent runs set_dns_config and handles the rest.
Guessing the Right Rule
Trying to block a site by manually adding the whole URL in the blocklist, but missing a subdirectory or the protocol. This leaves gaps in protection.
→
Instead, tell your agent: 'Add the filter rule for malicious.net.' The agent uses add_filter_url or set_user_rules to ensure the block is comprehensive.
Ignoring Client Status
Assuming a client is connected because it used to be. Running add_static_lease without checking if the client exists first, leading to a failed configuration or conflict.
→
First, run list_clients or search_clients to verify the device. Then, tell the agent to run add_static_lease for the confirmed client.
When It Fits, When It Doesn't
Use this if you need to manage network settings, DNS resolution, or filtering rules across a whole network, and you hate clicking buttons. You need programmatic, real-time control over network security. Use it to swap DNS providers (set_dns_config), check block status (check_host), or manage IP leases (add_static_lease).
Don't use this if you just need to check a single, isolated piece of information (like a single IP address's status). For that, a simple API call or a dedicated monitoring tool is better. Also, if you only need to read logs, the get_query_log tool is enough—you don't need the full suite of write/update functions.
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by AdGuard Home. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This server provides 23 capabilities that interface natively with Claude, ChatGPT, Cursor, and any MCP client. No middleware. No custom integration required.
Available Capabilities
Dealing with network rules means clicking through ten different dashboards.
Today, changing a DNS setting requires logging into the AdGuard dashboard, finding the 'DNS' tab, scrolling down to the upstream servers, and manually pasting the new IP addresses. If you're managing multiple rulesets or multiple devices, you're copying, pasting, and repeating this painful process over and over.
With this MCP server, you just talk to your agent. You say, 'Change the primary DNS to 1.1.1.1.' The agent runs `set_dns_config` and the change takes effect. It's instant, and it's logged.
AdGuard Home MCP Server: Full Control with `set_protection`
Manually adjusting protection settings—say, disabling global filtering for maintenance—means logging in, finding the toggle, flipping the switch, and setting a timer if you don't want it to stay off. If you forget the timer, the network stays unprotected until someone remembers to flip it back.
Now, you tell your agent: 'Disable global protection for 15 minutes.' The agent uses `set_protection` and handles the duration automatically. You get reliable control without the risk of human error.
Common Questions About AdGuard Home MCP
How do I use the `get_status` tool to check if the AdGuard Home MCP Server is running? +
You run get_status to get a high-level summary of the server's health. This tells you if the core services are operational and if the protection layer is active.
What is the difference between `add_filter_url` and `set_user_rules`? +
add_filter_url adds a simple, global blocklist entry. set_user_rules lets you create complex, custom rules that apply only to specific client groups or devices.
Can I use `search_clients` to find a specific device IP address? +
Yes, search_clients lets you narrow down the list of connected devices. You provide the IP or MAC address, and the server finds the corresponding client record.
What should I use if I want to set a permanent IP for a client? Is it `add_static_lease`? +
You're right. Use add_static_lease. This tool locks a device's MAC address to a permanent IP address, preventing DHCP conflicts.
Does `get_query_log` show historical data, or just recent activity? +
get_query_log shows a chronological list of queries that have hit the server. It's designed for real-time auditing of recent network traffic.
How do I use `get_dns_info` to check my current DNS server configuration? +
It gives you the complete DNS setup. This tool reports the upstream servers, bootstrap settings, and cache parameters (like TTL and size) currently configured for your AdGuard Home instance.
What's the best way to manage client-specific security settings? Should I use `add_client` or `search_clients`? +
You should use add_client first. This tool lets you create a new client entry, allowing you to then apply specific security rules or IP limits to that device.
Can I check if a domain is blocked for a specific client using `check_host`? +
Yes, check_host directly reports if a given domain is filtered for a specified client. It's perfect for auditing why a host might be blocked for a single device.
Can I check if a specific website is being blocked for a specific client? +
Yes, use the check_host tool. Provide the domain name and optionally the client IP to see if it's filtered and which rule is responsible.
Is it possible to pause the ad-blocking globally for a short period? +
Yes. The set_protection tool allows you to disable filtering globally. You can also specify a duration in milliseconds if you want it to re-enable automatically.
How do I add a new blocklist URL using the AI? +
Simply use the add_filter_url action. You'll need to provide a name for the filter, the URL of the list, and specify if it's a whitelist or blocklist.
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
More in this category
K-Means Cluster Engine
Group complex data points into optimal clusters with deterministic, high-speed Euclidean K-Means classification.
SQL Syntax Validator
Audit SQL queries for syntax errors before executing them. Prevent DB crashes and deadlocks with local AST parsing.
Cloud DNS (Anycast DNS Provider API)
Manage your Anycast DNS infrastructure — list zones, configure records, and automate domain management directly through AI.
You might also like
Digify
Share documents securely with dynamic watermarks, access controls, and analytics that show exactly who viewed each page.
FynCom
Reward customer attention with micro-payments and nano-rewards that boost survey completion and email engagement rates.
DEV.to
Manage your DEV.to presence — publish articles, fetch latest posts, and update content directly from your AI agent.