Token导航 LogoToken导航

MCP Server · 运维云端

gns3 MCP

GNS3 MCP Server是一个用于GNS3网络实验室自动化的协议服务器,提供项目控制、节点管理和设备控制台访问功能,支持通过Claude Desktop或任何MCP兼容客户端进行操作。

stdio官方级别未说明来源级核验工具 0
设备控制PythonClaudeClaude DesktopCursorWindsurf

快速开始

作者 / 组织
ChistokhinSV
提供方
ChistokhinSV

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

6

仓库热度

收录来源

1 个

MCP World

选型结论

gns3 MCP 属于运维云端类 MCP Server,公开资料标注 0 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cursor,有可以直接复制的安装命令;接入前要先准备 访问 Token。

分类

运维云端

传输方式

stdio

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

安装命令

pip install gns3-mcp

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

GNS3 MCP服务器

GNS3网络实验室自动化的模型上下文协议(MCP)服务器。通过Claude Desktop或任何兼容MCP的客户端控制GNS3项目、节点和设备控制台。

版本: 0.49.0

特性

  • 15工具:CRUD风格的GNS3自动化(v0.47.0:32个工具的53%整合)
  • 25资源:只读数据访问(项目、节点、链接、会话、拓扑报告)
  • CRUD模式:整合工具 action 参数(project(action="open"), node(action="create")等等)
  • 批量操作:控制台和SSH操作使用仅批处理的API进行原子执行
  • 通配符支持:节点操作支持模式(*, Router*, R[123],JSON数组)
  • 项目管理:创建、打开、关闭GNS3项目
  • 节点控制:使用通配符模式和并行执行启动/停止/重启节点
  • 控制台访问:具有模式匹配和grep过滤的Telnet控制台自动化
  • SSH自动化:通过Netmiko实现网络设备自动化(200多种设备类型)
  • 网络拓扑:批量连接/断开链接、创建图形、导出图表
  • Docker集成:配置容器网络,读/写文件
  • 工具发现: search_tools() 具有类别/能力/资源过滤功能
  • Claude桌面支持:可通过工具访问的所有资源(query_resource, list_projects, list_nodes, get_topology)
  • 安全:API密钥认证(HTTP模式)、服务权限隔离、HTTPS支持

安装

支持的平台: 仅限Windows

快速入门(克劳德代码-推荐)

先决条件:

  • Windows 10/11
  • GNS3服务器正在运行且可访问
  • 已安装克劳德代码
  • uv包管理器 (适用于uvx):安装时 pip install uv 或从以下网址下载https://github.com/astral-sh/uv

选项1:使用uvx(推荐-更快)

# Single command - no .env file needed!
claude mcp add --transport stdio gns3-mcp `
  --env GNS3_HOST=192.168.1.20 `
  --env GNS3_PORT=80 `
  --env GNS3_USER=admin `
  --env GNS3_PASSWORD=your-password `
  --scope user `
  -- uvx gns3-mcp@latest

# Verify installation
claude mcp get gns3-mcp
# Should show: Status: ✓ Connected

选项2:使用pip(传统)

# Step 1: Install package
pip install gns3-mcp

# Step 2: Add to Claude Code with credentials
claude mcp add --transport stdio gns3-mcp `
  --env GNS3_HOST=192.168.1.20 `
  --env GNS3_PORT=80 `
  --env GNS3_USER=admin `
  --env GNS3_PASSWORD=your-password `
  --scope user `
  -- gns3-mcp

# Step 3: Verify installation
claude mcp get gns3-mcp
# Should show: Status: ✓ Connected
为什么是uvx? 比pip快10-100倍,自动隔离依赖关系,无需venv管理。

______________________________________________________________________

编辑器安装

Claude Code (Detailed Setup)

Claude代码设置

STDIO模式(推荐)

STDIO模式更安全-无需HTTP服务,无需身份验证,仅在Claude Code处于活动状态时运行。

使用uvx(推荐):

# 1. Install uv (one-time setup)
pip install uv

# 2. Create .env file
@"
GNS3_HOST=192.168.1.20
GNS3_PORT=80
GNS3_USER=admin
GNS3_PASSWORD=your-password
"@ | Out-File -FilePath .env -Encoding ASCII

# 3. Add to Claude Code
claude mcp add --transport stdio gns3-mcp --scope user -- uvx gns3-mcp@latest

# 4. Verify
claude mcp get gns3-mcp

使用pip:

# 1. Install package globally
pip install gns3-mcp

# 2. Create .env file in project directory
@"
GNS3_HOST=192.168.1.20
GNS3_PORT=80
GNS3_USER=admin
GNS3_PASSWORD=your-password
"@ | Out-File -FilePath .env -Encoding ASCII

# 3. Add to Claude Code
claude mcp add --transport stdio gns3-mcp --scope user -- gns3-mcp

# 4. Verify
claude mcp get gns3-mcp
# Should show: Status: ✓ Connected

环境变量:

变量必填描述示例
GNS3_HOST是GNS3服务器IP/主机名192.168.1.20
GNS3_PORT是GNS3服务器端口80 或 3080
GNS3_USER是GNS3用户名admin
GNS3_PASSWORD是GNS3密码your-password

Claude Desktop (.mcpb Package)

Claude桌面设置

安装:

  1. 下载最新 .mcpb 包裹:

- 自 发布 - 或者在本地构建: just build (创建 mcp-server\mcp-server.mcpb)

  1. 双击安装 这 .mcpb 文件
  1. 配置凭据 在克劳德桌面:

- 打开克劳德桌面 - 前往“设置”>“开发人员”>“编辑配置” - 找到 gns3-mcp 服务器 - 添加环境变量:

     {
       "GNS3_HOST": "192.168.1.20",
       "GNS3_PORT": "80",
       "GNS3_USER": "admin",
       "GNS3_PASSWORD": "your-password"
     }
  1. 重新启动克劳德桌面
  1. 检查日志 如果出现问题:
   C:\Users\\AppData\Roaming\Claude\logs\mcp-server-GNS3 Lab Controller.log

Cursor & Windsurf (JSON Configuration)

光标设置

配置文件位置:

  • 项目具体: .cursor\mcp.json (在项目目录中)
  • 全球的: %USERPROFILE%\.cursor\mcp.json

使用uvx(推荐):

  1. 安装紫外线: pip install uv
  1. 创建/编辑 .cursor\mcp.json:
{
  "mcpServers": {
    "gns3-mcp": {
      "command": "uvx",
      "args": ["gns3-mcp@latest"],
      "env": {
        "GNS3_HOST": "192.168.1.20",
        "GNS3_PORT": "80",
        "GNS3_USER": "admin",
        "GNS3_PASSWORD": "your-password"
      }
    }
  }
}

使用pip:

  1. 安装软件包: pip install gns3-mcp
  1. 创建/编辑 .cursor\mcp.json:
{
  "mcpServers": {
    "gns3-mcp": {
      "command": "gns3-mcp",
      "args": [],
      "env": {
        "GNS3_HOST": "192.168.1.20",
        "GNS3_PORT": "80",
        "GNS3_USER": "admin",
        "GNS3_PASSWORD": "your-password"
      }
    }
  }
}
  1. 重新启动游标

______________________________________________________________________

风帆设置

配置文件位置: %USERPROFILE%\.codeium\windsurf\mcp_config.json

使用uvx(推荐):

  1. 安装紫外线: pip install uv
  1. 创建/编辑 mcp_config.json:
{
  "mcpServers": {
    "gns3-mcp": {
      "command": "uvx",
      "args": ["gns3-mcp@latest"],
      "env": {
        "GNS3_HOST": "192.168.1.20",
        "GNS3_PORT": "80",
        "GNS3_USER": "admin",
        "GNS3_PASSWORD": "your-password"
      }
    }
  }
}

使用pip:

  1. 安装软件包: pip install gns3-mcp
  1. 创建/编辑 mcp_config.json:
{
  "mcpServers": {
    "gns3-mcp": {
      "command": "gns3-mcp",
      "args": [],
      "env": {
        "GNS3_HOST": "192.168.1.20",
        "GNS3_PORT": "80",
        "GNS3_USER": "admin",
        "GNS3_PASSWORD": "your-password"
      }
    }
  }
}
  1. 重新启动Windsurf
注: Cursor和Windsurf使用相同的配置格式。

______________________________________________________________________

故障排除

连接问题:

# Test GNS3 server connectivity
curl http://192.168.1.20:80/v3/projects

# Check Claude Code MCP status
claude mcp get gns3-mcp

# View detailed logs (Claude Code)
# Check console output when running commands

常见问题:

  • “找不到gns3 mcp”:确保安装了软件包(pip list | findstr gns3-mcp)
  • “连接被拒绝”:验证GNS3服务器是否正在运行且可访问
  • “身份验证失败”:检查凭据 .env 文件
  • “插座已关闭”:SSH会话已过期,在下一个命令时自动重新连接

关于Claude Desktop的问题: 在以下位置查看日志:

C:\Users\\AppData\Roaming\Claude\logs\mcp-server-GNS3 Lab Controller.log

______________________________________________________________________

高级设置

HTTP Mode (Always-Running Service)

HTTP模式配置

HTTP模式 需要持久服务和API密钥身份验证。仅在需要服务始终运行或从其他计算机访问网络时使用。

先决条件:

  • .env 带有GNS3凭据的文件
  • 用于身份验证的API密钥

设置:

  1. 增添 .env:
   # Generate with: python -c "import secrets; print(secrets.token_urlsafe(32))"
   MCP_API_KEY=your-random-token-here
  1. 配置克劳德代码:
   claude mcp add --transport http gns3-mcp http://127.0.0.1:8100/mcp/ --scope user`
     --header "MCP_API_KEY: your-random-token-here"
  1. 启动服务器(在单独的终端中):
   gns3-mcp --transport http --http-port 8100

备注:如果 MCP_API_KEY 缺少 .env,它将在首次启动时自动生成并自动保存到 .env 为了坚持。

Windows Service (Production Deployment)

Windows服务部署

使用WinSW和uvx(用于HTTP模式)将MCP服务器作为Windows服务运行。

📖 看 便携式设置.md 详细说明。

快速设置:

# 1. Install uv (if not already installed)
pip install uv

# 2. Set environment variables from .env (requires Administrator)
.\set-env-vars.ps1

# 3. Install and start service (requires Administrator)
.\server.cmd install

服务管理:

# Check status
.\server.cmd status

# Start/stop/restart
.\server.cmd start
.\server.cmd stop
.\server.cmd restart

# After code updates
.\server.cmd reinstall        # Reinstall service

# Remove service
.\server.cmd uninstall

# Development mode (direct run, no service)
.\server.cmd run

主要特点:

  • ✅ 便携的:适用于任何文件夹位置(无硬编码路径)
  • ✅ 没有venv:使用uvx进行自动隔离
  • ✅ 安全:Windows环境变量中的凭据
  • ✅ 简单:使用PowerShell脚本自动设置
  • 用户:GNS3MCP服务(低权限,可选)
  • 初创公司:自动
  • 日志: mcp-http-server.log 和 GNS3-MCP-HTTP.wrapper.log

Development Setup (Contributors)

从源手动安装

要求:

  • Python≥3.10
  • GNS3服务器v3.x正在运行并可访问

设置:

# Install dependencies
pip install -r requirements.txt

# Create .env file
@"
GNS3_HOST=192.168.1.20
GNS3_PORT=80
GNS3_USER=admin
GNS3_PASSWORD=your-password
"@ | Out-File -FilePath .env -Encoding ASCII

# Run directly (STDIO mode - no authentication)
python gns3_mcp\cli.py --host 192.168.1.20 --port 80 --username admin --password your-password

# Or add to Claude Code (project-scoped)
claude mcp add --transport stdio gns3-mcp --scope project -- python "C:\full\path\to\gns3_mcp\cli.py"

构建.mcpb包:

just build
# Creates: mcp-server\mcp-server.mcpb

______________________________________________________________________

Docker部署

在Docker中运行GNS3 MCP Server,以实现隔离部署、更简单的管理和多平台支持。

Docker Compose快速入门

先决条件:

  • 已安装Docker桌面
  • GNS3服务器正在运行且可访问
  • GNS3服务器的网络访问

第一步:下载docker-compose.yml

curl -O https://raw.githubusercontent.com/ChistokhinSV/gns3-mcp/master/docker-compose.yml

步骤2:创建.env文件

cat > .env <<EOF
GNS3_HOST=192.168.1.20
GNS3_PORT=80
GNS3_USER=admin
GNS3_PASSWORD=your-password
HTTP_PORT=8000
LOG_LEVEL=INFO
EOF

或从模板复制:

curl -O https://raw.githubusercontent.com/ChistokhinSV/gns3-mcp/master/.env.example
mv .env.example .env
# Edit .env with your credentials

步骤3:启动服务

# Start MCP server and SSH proxy
docker-compose up -d

# View logs
docker-compose logs -f

# Check health
curl http://localhost:8000/health
curl http://localhost:8022/health

步骤4:配置Claude桌面/代码

对于 克劳德代码 (HTTP模式):

claude mcp add --transport http gns3-mcp --url http://localhost:8000

对于 克劳德桌面,添加到MCP配置中:

{
  "mcpServers": {
    "gns3-mcp": {
      "transport": {
        "type": "http",
        "url": "http://localhost:8000"
      }
    }
  }
}

使用Docker Run(不使用compose)

docker run -d \
  --name gns3-mcp-server \
  -p 8000:8000 \
  -e GNS3_HOST=192.168.1.20 \
  -e GNS3_PORT=80 \
  -e GNS3_USER=admin \
  -e GNS3_PASSWORD=your-password \
  --restart unless-stopped \
  chistokhinsv/gns3-mcp:latest

容器管理

# View logs
docker-compose logs -f gns3-mcp
docker-compose logs -f ssh-proxy

# Restart services
docker-compose restart

# Stop services
docker-compose down

# Update to latest version
docker-compose pull
docker-compose up -d

环境变量

变量必填默认描述
GNS3_HOST是-GNS3服务器IP/主机名
GNS3_PORT没有80GNS3 API端口
GNS3_USER是-GNS3用户名
GNS3_PASSWORD是-GNS3密码
HTTP_PORT没有8000MCP服务器端口
LOG_LEVEL没有INFO日志记录级别
GNS3_USE_HTTPS没有falseGNS3使用HTTPS
GNS3_VERIFY_SSL没有true验证SSL证书

看 .env.示例 查看完整列表。

建筑

Docker部署包括两个容器:

  1. gns3 mcp -主MCP服务器(端口8000)

- 提供对GNS3的MCP协议访问 - HTTP/SSE传输模式 - 网桥网络模式

  1. gns3 ssh代理 -SSH网关(端口8022)

- 允许SSH访问实验室设备 - 主机网络模式(隔离实验室网络所需) - 基于Netmiko的自动化

故障排除

容器无法启动:

docker-compose logs gns3-mcp
docker-compose logs ssh-proxy

无法连接到GNS3:

# Test from container
docker exec gns3-mcp-server curl -v http://192.168.1.20/v3/version

# Check connectivity
docker exec gns3-mcp-server ping -c 3 192.168.1.20

健康检查失败:

# Manual health check
curl -v http://localhost:8000/health

# Check container status
docker ps --filter name=gns3-mcp

有关更多详细信息,请参阅 .

______________________________________________________________________

文档

许可证

MIT许可证

作者

谢尔盖·奇斯托金(Sergei@Chistokhin.com)

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

网络自动化Python本地部署实验室管理设备控制CRUD操作SSH自动化

支持客户端

Claude DesktopClaudeCursorWindsurf

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到访问 Token的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
gns3 MCP

MCP World · 本页

0stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

gns3 MCP 怎么安装?

公开资料给出的安装命令是 pip install gns3-mcp,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

gns3 MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

gns3 MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

gns3 MCP 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

gns3 MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cursor、Windsurf;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP