automateyournetwork/pyATS_MCP logo

automateyournetwork/pyATS_MCP

Free

Cisco pyATS server enabling structured, model-driven interaction with network devices.

FreeFree tier
Type
Open Source

About automateyournetwork/pyATS_MCP

PyATS MCP Server is an open-source MCP (Model Context Protocol) server that wraps Cisco pyATS and Genie, enabling AI agents like Claude, LangGraph, and others to run show commands, apply configuration changes, and query network state across devices. Communication occurs over STDIO using JSON-RPC 2.0 — no HTTP ports or REST endpoints. The server uses an environment-based configuration (.env) and a testbed YAML file with %ENV{} variable substitution for device credentials. It supports a wide range of network operating systems including Cisco IOS XE, IOS XR, NX-OS, IOS, Arista EOS, Juniper JunOS, Palo Alto PAN-OS, Linux, and Windows. Additional features include optional Docker deployment, caching for testbed and connections, and an in-memory operation log. The project is experimental and maintained by the automateyournetwork GitHub organization.

Key Features

Wraps Cisco pyATS and Genie for structured network interaction
AI agent integration (Claude, LangGraph, etc.) via MCP protocol
STDIO-based communication using JSON-RPC 2.0
Environment-based configuration with .env file
Testbed YAML support with %ENV{} variable substitution
Supports multiple OS: iosxe, iosxr, nxos, ios, eos, junos, panos, linux, windows
Docker deployment option
Caching of testbed and connections
In-memory operation log
Open source and free

Pros & Cons

Pros
  • Open source and free to use
  • Leverages the mature Cisco pyATS/Genie testing framework
  • Supports a wide range of network operating systems
  • Secure: no HTTP ports or REST endpoints
  • Easy integration with AI agents via MCP
  • Configurable caching improves performance
  • Docker support for containerized deployments
  • No hard-coded credentials; uses environment variables
Cons
  • Experimental stage; may have stability issues
  • Requires knowledge of pyATS and testbed YAML configuration
  • No graphical interface; entirely CLI/STDIO based
  • Dependent on local setup and environment variables
  • Limited to STDIO communication; no built-in web UI

Best For

AI-driven network automation and managementRunning show commands and parsing output with GenieApplying configuration changes to network devicesQuerying network state for troubleshooting or monitoringIntegrating network operations into AI agent workflowsMulti-vendor network device orchestration

FAQ

What is PyATS MCP Server?
It is an open-source MCP server that wraps Cisco pyATS and Genie, allowing AI agents to run show commands, apply configuration, and query network state over STDIO using JSON-RPC 2.0.
How does PyATS MCP Server communicate?
All communication is via STDIN/STDOUT using JSON-RPC 2.0. There are no HTTP ports or REST endpoints.
Which network operating systems are supported?
The server supports iosxe, iosxr, nxos, ios, eos, junos, panos, linux, and windows. The os can be set to 'generic' and platform left blank for Unicon to autodetect.
How do I configure devices for PyATS MCP Server?
Device details and credentials are stored in a .env file. Each device uses %ENV{VAR} substitution in the testbed YAML. Follow the naming convention {DEVICENAME}_{FIELD} for IP, port, OS, platform, username, password, and enable password.
Is PyATS MCP Server free?
Yes, the project is open source and free to use. There are no paid tiers or subscriptions.