SuperAPI AI 工具集

fritzbox-mcp-server

fritzbox-mcp-server 是一个面向 LLM/AI 助手的 MCP 服务器,用于通过自然语言控制 AVM FRITZ!Box 路由器。它在本机运行,作为云端 AI 代理与本地 FRITZ!Box 之间的安全桥接:凭据保存在本地 .env 文件,仅通过局域网与路由器通信,AI 只接收操作结果而非凭据。支持查询外部 IP、查看已连接设备、检查运行时间与网速、分析网络健康、管理设备、设置家长控制与定时操作(如 20 分钟后封锁某设备、工作时间禁用游戏设备联网、定时开启访客 WiFi)以及故障排查。项目宣称兼容所有 FRITZ!Box 型号与固件版本,通过实时发现路由器能力自动适配。提供自动校验和安装脚本、交互式配置、Claude Desktop 配置示例,以及 SLSA 来源证明、Cosign 签名和跨 Git 平台可复现构建验证。注意:该服务器向 AI 暴露 143 个工具,每条消息约产生 25,000–30,000 token 的工具定义开销。

访问官网

工具介绍

用途

fritzbox-mcp-server 是一个 MCP(Model Context Protocol)服务器,让用户通过 AI 助手(如 Claude)以自然语言与 AVM FRITZ!Box 路由器交互。它运行在用户自己的电脑上,充当云端 AI 代理与本地 FRITZ!Box 之间的安全桥接:FRITZ!Box 无需暴露到互联网,无需开放端口,也没有到路由器的云连接;凭据保存在本机 .env 文件中,仅用于在局域网内与路由器通信,AI 只收到操作结果(例如“3 台设备已连接”或“路由器运行时间:5 天”),不会获得凭据或对路由器的直接访问。

主要能力

  • 提问与查询:外部 IP 地址、已连接设备列表、路由器运行时间、当前网速、WiFi 是否安全等。
  • 网络分析:检查连接质量、识别问题、解释日志模式并给出建议。
  • 设备管理:列出 WiFi 设备、查看带宽占用最高的设备、列出未知设备、为笔记本的带宽做优先级(如视频通话时)。
  • 家长控制与定时:例如“20 分钟后封锁 Nintendo Switch”“工作时间禁用所有游戏设备联网”“下午 6 点为聚会开启访客 WiFi”。定时操作通过服务器的 CLI 模式在后台持久执行,即使关闭聊天也会自动执行。
  • 故障排查:排查网速慢的原因、检查连接问题、查看近期断线记录。

项目宣称兼容所有 FRITZ!Box 型号与固件版本,通过实时发现路由器能力自动适配,AVM 发布新功能或新机型时无需更新服务器。

使用方式

  1. 安装:使用带自动校验和验证的安装脚本,脚本会自动检测平台(操作系统与架构)、从 GitHub 下载最新发布、验证 SHA256 校验和、安装到 ~/.local/bin/fritz-mcp 并赋予可执行权限。也可从 Releases 手动下载对应平台包(linux-amd64/arm64、darwin-amd64/arm64、windows-amd64/arm64),解压后赋予可执行权限(Windows 直接解压 ZIP)。
  2. 交互式配置:自动通过 SSDP 在局域网发现 FRITZ!Box 设备、识别 Mesh Master(网关)、提示输入主机、用户名、密码和 TLS 偏好,并将凭据以 0600 权限保存到 .env 文件。
  3. FRITZ!Box 用户权限:在路由器 Web 界面(http://fritz.box)进入 System → FRITZ!Box-Benutzer → [你的用户] → Berechtigungen,启用“FRITZ!Box-Einstellungen”(用户可查看和编辑所有 FRITZ!Box 设置)。
  4. 配置 AI 助手:编辑 Claude Desktop 配置文件(Windows:%APPDATA%\Claude\claude_desktop_config.json;macOS:~/Library/Application Support/Claude/claude_desktop_config.json;Linux:~/.config/claude/claude_desktop_config.json),添加服务器路径(Windows 路径需使用双反斜杠),然后重启 Claude Desktop。

适用场景

适合希望通过 AI 助手用自然语言管理家庭 FRITZ!Box 网络、进行网络健康检查、设备盘点、家长控制与定时网络操作的用户。

限制与注意事项

  • 该服务器向 AI 暴露 143 个工具,每个工具定义(名称、描述、JSON schema)随每条消息发送,工具定义开销约 25,000–30,000 token/消息;成本估算约为 Sonnet 每条消息 0.08 美元、Opus 每条消息 0.45 美元(仅工具开销)。工具 schema 会占用上下文窗口。建议不需要时禁用服务器,或仅对需要路由器访问的特定项目启用;与本地模型(llama.cpp、Ollama)配合时,143 个工具可能压垮较小模型,可使用工具过滤只暴露所需工具。会话首条消息后,Claude 的提示缓存会降低后续消息的 token 成本,短对话中开销最明显。
  • 需要 FRITZ!Box 用户具备完整设置权限。
  • 开发环境要求 Go 1.25 或更高版本、局域网内用于测试的 FRITZ!Box 路由器及用户名密码。
  • 项目使用社区 MCP SDK(mark3labs/mcp-go v0.7.0)而非官方 SDK,原因是官方 SDK 存在工具在 MCP 客户端中不显示、初始化竞态与客户端超时、指针类型 schema 生成等问题,且两者 API 不兼容。
  • 安全与验证:所有通信保持在局域网内,无云服务、无外部服务器;提供 VirusTotal 扫描结果、SLSA 来源证明(GitLab 为 SLSA Level 2,GitHub 为 SLSA Level 3)、Cosign 无密钥签名(OIDC),以及跨 Git 平台可复现构建验证(同一源码在 GitLab 与 GitHub 产生相同二进制)。
  • 关于收费、价格、具体平台支持范围等未在资料中明确说明的信息,暂未提供。