POX MCP Server

POX MCP Server

site icon
2025.03.24 1
Python网络控制SDNOpenFlow管理其它
POX MCP Server 是一个基于 POX SDN 控制器的模型上下文协议(MCP)服务器实现,提供网络控制和管理能力。它支持基于 Python 的网络编程、OpenFlow 设备管理以及通过 POX 的模块化架构进行自动化网络分析。适用于教育环境、网络原型设计和 SDN 研究。
View on GitHub

Overview

基本能力

产品定位

POX MCP Server 是一个网络控制和管理工具,专注于 SDN(软件定义网络)领域,提供 OpenFlow 设备管理和网络分析能力。

核心功能

  1. 网络配置管理:通过 pox://network-config 资源跟踪 POX 控制器配置、网络拓扑和流规则。
  2. 实时拓扑视图:通过 pox://topology 资源展示实时网络拓扑,包括交换机、主机连接和链路状态。
  3. 交互式管理:提供 pox-network-manager 提示符,用于交互式配置 POX 组件和网络策略。
  4. 网络设备实现:包括 simple-hub(基本 L2 集线器)和 learning-switch(L2 学习交换机)的实现。
  5. 工具集:提供数据路径管理、流管理和分析工具。

适用场景

  1. 教育环境:用于教学 SDN 和 OpenFlow 协议。
  2. 网络原型设计:快速构建和测试网络拓扑。
  3. SDN 研究:用于实验和研究软件定义网络的特性。

工具列表

  1. Datapath Management Tools
  2. get_switches:列出所有连接的 OpenFlow 数据路径。
  3. get_switch_desc:获取详细的数据路径信息。
  4. Flow Management Tools
  5. get_flow_stats:检索流统计信息。
  6. set_table:配置流表。
  7. Analysis Tools
  8. append_insight:添加网络洞察到配置备忘录。

常见问题解答

  1. 如何启动服务? 使用 uv 工具运行 server.py 脚本。
  2. 如何配置环境? 设置 POX_SERVER_URL 环境变量为 http://localhost:8000

使用教程

使用依赖

  1. 确保已安装 Python 和 POX SDN 控制器。
  2. 安装 uv 工具(如果尚未安装)。

安装教程

  1. 克隆或下载 mcp_server_pox 仓库。
  2. 使用以下命令启动服务:
{
  "mcpServers": {
    "pox": {
      "command": "uv",
      "args": [
        "--directory",
        "parent_of_servers_repo/servers/src/mcp_server_pox",
        "run",
        "server.py"
      ],
      "env": {
        "POX_SERVER_URL": "http://localhost:8000"
      }
    }
  }
}

调试方式

  1. 检查服务是否正常运行:访问 http://localhost:8000
  2. 使用 get_switches 工具验证 OpenFlow 交换机是否连接。
  3. 使用 get_flow_stats 工具检查流统计信息。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。