Network Operator MCP
Allows managing Huawei network switches (e.g., S1730S, S5720) via persistent SSH terminal sessions, enabling command execution and reading output.
Provides the ability to execute commands on MikroTik RouterOS devices via SSH exec for configuration and monitoring.
Enables running commands on OpenWrt and ImmortalWrt devices via SSH exec for system administration and network management.
Integrates with TP-Link switch WebUI APIs (e.g., TL-SG2226, TL-SG2024D) to send authenticated HTTP requests for switch configuration and management.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Network Operator MCPshow me the running config of the Huawei switch"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Network Operator MCP
network-operator-mcp lets an agent operate network-device management
interfaces while keeping device credentials inside the MCP server.
The server supports these device backends:
ssh-terminal: a persistent SSH PTY for interactive network CLIs.ssh-exec: one standard SSH exec request per tool call.http-tplink-switch: TP-Link switch WebUI APIs.http-zte-be7200: ZTE BE7200 Pro+ WebUI APIs.http-mellanox-onyx: Mellanox Onyx WebUI APIs.
The server does not interpret commands, prompts, or API responses. It transports requests and responses between the agent and the selected device.
Tested devices
Vendor and model | Software | Backend |
Huawei S1730S-S48T4X-A1 | VRP 5.170 (V200R022C00SPC500) |
|
Huawei S5720-28P-LI-AC | VRP 5.170 (V200R011C10SPC600) |
|
Huawei S5720S-52P-LI-AC | VRP 5.170 (V200R011C10SPC600) |
|
Huawei FutureMatrix S6720S-S24S28X-A | VRP 5.170 (V200R022C00SPC500) |
|
MikroTik CCR2004-1G-12S+2XS (r3) | RouterOS 7.23.1 stable |
|
OpenWrt and ImmortalWrt devices | Various |
|
TP-Link TL-SG2226 | 2023 WebUI |
|
TP-Link TL-SG2024D | 2023 WebUI |
|
TP-Link TL-SE2206 | 2024 WebUI |
|
ZTE BE7200 Pro+ | V1.0.0.4B8.8000 |
|
Mellanox SN2700 | Onyx 3.7.1134 |
|
Related MCP server: SSH MCP Server
Configuration
backends:
ssh-terminal:
connect_timeout_seconds: 15
default_quiet_timeout_ms: 1000
default_deadline_ms: 15000
default_response_limit_bytes: 200000
max_sessions: 10
session_idle_ttl_seconds: 600
max_session_lifetime_seconds: 3600
ssh-exec:
connect_timeout_seconds: 15
default_command_timeout_seconds: 60
http:
connect_timeout_seconds: 10
default_request_timeout_seconds: 30
max_response_bytes: 2000000
accounts:
ssh-operator:
username: netadmin
password: plaintext-password
web-operator:
username: webadmin
password: plaintext-password
zte-password:
password: plaintext-password
devices:
example-huawei:
type: ssh-terminal
host: 192.0.2.10
account: ssh-operator
example-tplink:
type: http-tplink-switch
host: 192.0.2.20
account: web-operator
example-zte:
type: http-zte-be7200
host: 192.0.2.30
account: zte-password
example-onyx:
type: http-mellanox-onyx
host: 192.0.2.40
account: web-operator
verify_tls: falseAccounts can be shared by multiple devices. SSH accounts may use password, an
inline private_key, and an optional private_key_passphrase. The ZTE backend
accepts a password-only account because that product has a fixed WebUI username.
HTTP defaults to port 80, except for http-mellanox-onyx, which defaults to
HTTPS port 443. Set scheme, port, and verify_tls on a device when its setup
differs from those defaults. The complete placeholder configuration is in
config/devices.example.yaml.
MCP tools
Tool | Device backend | Purpose |
| All | List configured device names and backend types. |
|
| Run one SSH exec request. |
|
| Open or reuse a device's terminal. |
|
| List open terminals. |
|
| Write terminal input and read output. |
|
| Read output from a byte cursor. |
|
| Close a device's terminal. |
| HTTP backends | Send an authenticated WebUI API request. |
HTTP requests
http_request accepts a configured device, an HTTP method, and a
device-relative path. Optional arguments are query, headers, body,
body_base64, form, and timeout_seconds. Supply at most one of body,
body_base64, and form.
The MCP server manages credentials, cookies, and device tokens. Callers cannot
supply credential-bearing headers, and sensitive authentication headers are not
returned. Redirects from agent requests are returned to the agent instead of
being followed automatically. Text responses are returned directly; binary
responses use base64 and set body_encoding to base64.
Example:
{
"device": "example-zte",
"method": "POST",
"path": "/?_type=vueData&_tag=vuecfg_data",
"form": {
"IF_ACTION": "Get"
}
}SSH terminals
Each terminal has a background reader that appends device output to a temporary
transcript. Carry initial_output.next_cursor into the first exchange, then
carry each returned next_cursor forward. A quiet timeout means only that no new
bytes arrived during that interval; it does not prove that a command completed.
An MCP server restart necessarily closes active SSH connections and discards
their transcripts. Call open_session again for the device and continue with the
new initial cursor.
State
SSH terminals are keyed by device name and are not owned by an MCP client session. The tools do not expose or accept a terminal session identifier. Streamable HTTP transport is also stateless, so restarting the MCP server does not leave the client holding an obsolete MCP session identifier.
Running the server
Validate a configuration:
network-operator-mcp --config config/devices.local.yaml validate-configRun over stdio:
network-operator-mcp --config config/devices.local.yaml serveRun with Streamable HTTP:
network-operator-mcp --config config/devices.local.yaml serve \
--transport streamable-http --host 127.0.0.1 --port 8000The server also supports the sse transport.
Security notes
Protect configuration files because they contain plaintext credentials.
SSH server host keys are not verified.
Keep TLS verification enabled when a device has a trusted certificate. Use
verify_tls: falseonly for devices whose WebUI certificate cannot be validated.Expose the MCP transport only to trusted agents and users. HTTP API calls can change device configuration.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Scoped, audited SSH exec, sessions, and SFTP on your saved servers without exposing credentials
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Issue, rotate and revoke scoped API-key passes for 25+ providers — the agent never sees a real key
Run commands and read/write files on your servers over Termalin's keyless tunnels (hosted MCP).
Related MCP Servers
- FlicenseBqualityDmaintenanceEnables seamless SSH operations including secure connections, file transfers, interactive shell sessions, and Docker container management on remote servers. Supports both password and SSH key authentication with credential management and connection pooling.18
- AlicenseAqualityCmaintenanceEnables remote server management through SSH and SFTP, supporting command execution, file transfers, and interactive shell sessions. It allows for multiple concurrent connections using either password or SSH key authentication.11194MIT
- AlicenseBqualityDmaintenanceEnables secure SSH connections to remote servers for executing shell commands and managing active sessions. It supports authentication via passwords or private keys and provides optional host-based access control.4210MIT
- AlicenseAqualityCmaintenanceBridges AI agents with network infrastructure, enabling secure read-only access to multiple vendor routers via SSH for natural language queries and troubleshooting.581MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bowling233/network-operator-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server