使用说明
OpenWrt MCP控制器
该项目提供了一个用于管理OpenWrt设备的模型上下文协议(MCP)服务器。它允许您通过一个简单的API与OpenWrt路由器进行交互和控制。
服务器利用 fastmcp 将OpenWrt功能作为可远程调用的工具公开。
1.先决条件
为了使服务器具有完整的功能,必须在目标OpenWrt设备上放置一个自定义的LuCI RPC脚本。
安装 sys.lua 关于OpenWrt
这 sys.lua 此存储库中的文件扩展了LuCI JSON-RPC接口的功能。您必须将此文件复制到OpenWrt路由器,以便使用以下工具 system_status, network_status,以及 set_led_state 工作。
-
将文件复制到OpenWrt设备: 使用
scp或任何其他文件传输方法进行复制sys.lua到你的路由器。scp sys.lua root@<your_openwrt_ip>:/usr/lib/lua/luci/sys.lua -
验证权限: 确保该文件具有正确的权限。
ssh root@<your_openwrt_ip> "chmod 644 /usr/lib/lua/luci/sys.lua"
2.安装
您可以直接从PyPI安装此软件包。
pip install openwrt-mcp
3.配置
服务器是通过环境变量配置的。在运行服务器之前,您必须设置以下内容:
OPENWRT_HOST:您的OpenWrt设备的完整URL(例如。,http://192.168.1.1).OPENWRT_PASSWORD:OpenWrt设备的登录密码。OPENWRT_USERNAME:(可选)登录用户名。默认为root.
例子:
export OPENWRT_HOST="http://192.168.1.1"
export OPENWRT_PASSWORD="your_secret_password"
4.使用方法
安装和配置后,您可以使用以下配置启动MCP服务器:
{
"mcpServers":{
"openwrt-mcp":{
"command":"uvx",
"args": [
"openwrt-mcp"
],
"env":{
"OPENWRT_HOST":"192.168.0.1",
"OPENWRT_PASSWORD":"root",
"OPENWRT_USERNAME":"12345678"
}
}
}
}
服务器将启动并通过标准I/O监听传入连接。
可用工具
MCP服务器公开了以下工具:
reboot():重新启动OpenWrt设备。system_status():检索系统和板信息。network_status():获取所有网络接口的状态。read_log():读取系统日志(logread).set_led_state(state: str):设置“绿色”LED的状态。state可以是'on'或'off'.summary_log():为AI提供结构化的提示模板,以总结以下内容的输出read_log().
