技能潮 SkillTide 提交收录
官方说明13 个来源MCP 服务8 天前
automateyournetwork/pyATS_MCP

automateyournetwork/pyATS_MCP

Structured, model-driven interaction with network devices via Cisco pyATS
在 GitHub 查看 ↗直链 · 无中转页
配置模板(请按你的客户端调整)
claude mcp add pyats-mcp -- npx -y pyats_mcp
这是根据仓库名生成的可粘贴骨架,命令行参数与包名请以该项目 README 为准。
★ 数取值
89 ★ · automateyournetwork/pyATS_MCP · 取自该仓库的 GitHub 页面 · (2026-10-16 20:00:20 核对)
来源明细
收录自 punkpeye/awesome-mcp-servers 榜单(我们从中收集的条目之一) · 条目类型:MCP 服务
收录与活跃
收录于 2026-10-09 · 最近见到 2026-10-16 · 共见到 32 次 · 被 13 个来源列出
评分构成
综合分 1,303 · 89 ★ · 13 个来源 · mcp
常见问题(答案都来自我们的记录)
怎么安装?
我们【没有】从该仓库取到安装命令(我们的 install 覆盖率只有约 4%)。请看它的 README 或 releases 页。
它适合谁 / 用来做什么?
我们把它归在这些标签下: MCP 服务。标签来自条目自身,不是我们强加的分类。
谁维护它、还在更新吗?
仓库 automateyournetwork/pyATS_MCP;我们收录于 2026-10-09;最近见到 2026-10-16。这里没有"官方认证"或"质量评级"——我们只记录来源与时间。
第三方质量标记

pyATS MCP Server

以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →

Cisco pyATS and Genie already know how to talk to a network — parsing show commands, pushing configuration, learning feature state, running declarative tests. What they didn't have was a way for an AI agent to drive any of it directly. This server closes that gap: it wraps pyATS/Genie as a set of structured, guarded MCP tools that an agent like Claude can call against a real testbed, over the Model Context Protocol's current Streamable HTTP transport.
Point an agent at it and it can look up a device, run and parse a show command, apply configuration with a rollback point, learn and diff a feature's state before and after a change, fan a command out across a fleet — one thread pool or one process per device — run a declarative Blitz or Robot Framework test, or call a device's REST/RESTCONF API directly. Every risky path is guarded before it reaches a device, and every call lands in an in-memory audit log the agent can review mid-session.
---
At a glance
- **Transport** — Streamable HTTP (mcp>=2.3.0), stateful or stateless, chosen with one environment variable. STDIO is gone.
- **26 tools** across discovery, show commands, configuration, Genie learn/diff, Genie Clean, declarative testing (Blitz, Robot Framework, AEtest), generic REST/RESTCONF, and Cisco XPresso.
- **Two ways to fan out** a command across many devices — a shared thread pool for everyday use, or one OS process per device (pyats.async_.pcall) when you want real isolation at scale.
- **Guardrails, not honor systems** — dangerous commands are blocked before they reach a device, Genie Clean can never run a stage that reboots or reimages one, and destructive actions require an exact confirmation phrase.
- **Nothing hard-coded** — every credential and device detail lives in .env, pulled into testbed.yaml at runtime via %ENV{} substitution.
---
Prerequisites
- Python 3.10+
- A pyATS testbed.yaml pointed at real or virtual network devices — a physical lab, Cisco Modeling Labs / VIRL / GNS3, or anything else Unicon can reach over SSH/Telnet. pyATS MCP doesn't simulate a network; it drives one.
- An MCP-capable client to talk to it — see Connect Your Agent below.
---
Quick Start
The MCP endpoint is then reachable at http:// : /mcp.
---
Configuration
All device details and credentials live in a .env file — nothing is hard-coded in the repo.
1. Copy the template
2. Set the server variables
PYATS_MCP_TRANSPORT_MODE=stateless sets stateless_http=True on the Streamable HTTP transport, so no server-side session state is retained between requests from clients still negotiating the older, handshake-based protocol. Clients speaking the current MCP protocol (2026-07-28, SEP-2575) are handshake-free by default regardless of this setting — that comes from the mcp>=2.3.0 SDK itself, not anything configured here.
3. Add a block for each device
Every device in your testbed.yaml uses %ENV{VAR} substitution, so credentials and connection details are read from .env at runtime.
Use the {DEVICENAME}_{FIELD} naming convention:
If a group of devices shares credentials, define group-level vars and reference them across devices:
4. Reference the variables in testbed.yaml
> For devices with unknown OS, set os: "%ENV{DEVICE_OS}" with DEVICE_OS=generic in .env
> and optionally add learn_os: true under arguments: — Unicon will detect and cache the OS
> after the first connection.
---
Docker
Build
Run (pass .env directly)
Either way, the server is a long-running process you start once and point clients at — it isn't something an agent spawns per session. See below for exactly how each client connects to it.
---
Connect Your Agent
The server exposes one thing: an MCP endpoint at http:// : /mcp (Streamable HTTP). Every client below just needs that URL — no command/args, no local process for the client to manage.
Claude Code
Or drop it straight into .mcp.json (project-scoped, committed to the repo) or ~/.claude.json (user-scoped):
VS Code (GitHub Copilot Chat)
来源
awesome · https://github.com/automateyournetwork/pyATS_MCP
按领域浏览
MCP 服务
Traction
89 ★
收录于
昨天

更多MCP 服务

查看MCP 服务全部 5,525 条 →

所属领域与标签

每个标签都能点进去看同类的全部条目。数字是当前库里的真实条数。

浏览全部领域 →

← 返回索引