mcpField
🛡
🛡️ AdGuard Home MCP

🛡️ AdGuard Home MCP

本地服务
github.com/fcannizzaro安全1123 周前更新

关于 🛡️ AdGuard Home MCP

AdGuard Home MCP 让 AI Agent 或脚本通过 MCP 或命令行管理 AdGuard Home 的 DNS 重写、过滤规则和过滤列表。它同时提供常规 CLI,并支持保存实例凭据。

主要功能

  1. 01列出、添加和移除 DNS 重写记录
  2. 02列出及管理 DNS 过滤规则
  3. 03启用或停用过滤列表
  4. 04刷新过滤列表
  5. 05通过 CLI 登录并保存凭据

适用场景

  1. 01为本地域名添加 DNS 重写
  2. 02阻止或允许指定域名
  3. 03调整过滤列表的启用状态
  4. 04通过脚本管理 AdGuard Home DNS

MCP 相关

该 MCP 服务向客户端公开 AdGuard Home 的 DNS 重写记录、DNS 过滤规则和过滤列表管理工具;同一软件包还提供 CLI。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

🛡️ AdGuard Home MCP

适用于 AdGuard Home 的 Model Context Protocol(MCP)服务。通过 AI Agent 管理 DNS 重写记录、过滤规则和过滤列表。

NPM Version CI: Publish Package

LLM agents interacting with AdGuard Home through MCP

📦 安装

npm i -g @fcannizzaro/mcp-adguard-home

⚙️ 凭据

对于 CLI,请运行:

adguard-cli login

系统会提示你输入 AdGuard Home URL、用户名和密码,然后将其保存到 ~/.config/mcp-adguard-home/config.json。启动时会自动加载已保存的凭据。如果没有可用的已保存凭据,程序包会回退到以下环境变量:

变量说明
ADGUARD_URLAdGuard Home 实例的基础 URL(例如 http://192.168.1.1)
ADGUARD_USERNAMEAdGuard Home 用户名
ADGUARD_PASSWORDAdGuard Home 密码

🚀 配置

Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
	"mcpServers": {
		"adguard-home": {
			"command": "npx",
			"args": ["-y", "@fcannizzaro/mcp-adguard-home"],
			"env": {
				"ADGUARD_URL": "http://192.168.1.1",
				"ADGUARD_USERNAME": "admin",
				"ADGUARD_PASSWORD": "your-password"
			}
		}
	}
}
Cursor

编辑项目根目录中的 .cursor/mcp.json(或全局配置文件 ~/.cursor/mcp.json):

{
	"mcpServers": {
		"adguard-home": {
			"command": "npx",
			"args": ["-y", "@fcannizzaro/mcp-adguard-home"],
			"env": {
				"ADGUARD_URL": "http://192.168.1.1",
				"ADGUARD_USERNAME": "admin",
				"ADGUARD_PASSWORD": "your-password"
			}
		}
	}
}
VS Code

编辑项目根目录中的 .vscode/mcp.json:

{
	"servers": {
		"adguard-home": {
			"type": "stdio",
			"command": "npx",
			"args": ["-y", "@fcannizzaro/mcp-adguard-home"],
			"env": {
				"ADGUARD_URL": "http://192.168.1.1",
				"ADGUARD_USERNAME": "admin",
				"ADGUARD_PASSWORD": "your-password"
			}
		}
	}
}
Windsurf

编辑 ~/.codeium/windsurf/mcp_config.json:

{
	"mcpServers": {
		"adguard-home": {
			"command": "npx",
			"args": ["-y", "@fcannizzaro/mcp-adguard-home"],
			"env": {
				"ADGUARD_URL": "http://192.168.1.1",
				"ADGUARD_USERNAME": "admin",
				"ADGUARD_PASSWORD": "your-password"
			}
		}
	}
}
Claude Code CLI
claude mcp add adguard-home \
  -e ADGUARD_URL=http://192.168.1.1 \
  -e ADGUARD_USERNAME=admin \
  -e ADGUARD_PASSWORD=your-password \
  -- npx -y @fcannizzaro/mcp-adguard-home

🧰 可用工具

该程序包还会安装一个常规 CLI,供不使用 MCP 的 Agent 或脚本使用:

adguard-cli login
adguard-cli list_rewrite_dns_records
adguard-cli add_rewrite_dns_record --domain example.test --ip 192.168.1.10
adguard-cli manage_dns_filtering_rules --domains ads.example --allowed false

CLI 参数也可以作为 JSON 对象传入:

adguard-cli add_rewrite_dns_record '{"domain":"example.test","ip":"192.168.1.10"}'
DNS 重写记录
工具说明参数
list_rewrite_dns_records列出所有 DNS 重写记录—
add_rewrite_dns_record添加 DNS 重写记录domain: string、ip: string
remove_rewrite_dns_record移除 DNS 重写记录domain: string、ip: string
DNS 过滤规则
工具说明参数
list_dns_filtering_rules列出所有自定义 DNS 过滤规则—
manage_dns_filtering_rules屏蔽或允许域名domains: string[]、allowed: boolean
remove_rdns_filtering_rules移除自定义过滤规则domains: string[]
过滤列表
工具说明参数
list_filter_lists列出所有已配置的过滤列表—
toggle_filter_list启用或停用过滤列表id: number、enabled: boolean
refresh_filter_lists强制更新所有过滤列表—

📄 许可证

基于 MIT License 许可。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。