junos-mcp-server CLAUDE.md

junos-mcp-server CLAUDE.md is an instructions file for coding agents from Juniper/junos-mcp-server. It costs 1,198 tokens per session, scanned A, original, Apache-2.0.

Project instructions for an MCP server that lets an AI assistant work with Juniper Junos network devices. MCP, or Model Context Protocol, is a standard way for AI tools to connect to external systems.

In plain words
What is it for?
Use them when developing or operating the server, connecting it to Juniper equipment, running it through desktop or HTTP connections, or building its Docker image.
Why use it?
They give developers the commands and setup details needed to install, run, test, and package the server.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/juniper/junos-mcp-server/claude-md
Clone the repo
git clone --depth 1 https://github.com/Juniper/junos-mcp-server

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for junos-mcp-server CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/juniper/junos-mcp-server/claude-md.svg)](https://agentmods.dev/instructions/juniper/junos-mcp-server/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/juniper/junos-mcp-server/claude-md"><img src="https://agentmods.dev/badge/instructions/juniper/junos-mcp-server/claude-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 1,198 This file is loaded in full into every session.
When invoked 1,198 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01198 $0.01198
Opus 5 $0.00599 $0.00599
Sonnet 5 $0.00240 $0.00240
Haiku 4.5 $0.00120 $0.00120

Measured 3d ago against content hash 290710e32161, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

junos-mcp-server CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 103 lines

How it starts

The opening of the file, as written. The whole thing — 103 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview

This is a Model Context Protocol (MCP) server for Juniper Junos network devices. It enables LLMs to interact with Juniper network equipment through a standardized interface using the FastMCP framework and Juniper's PyEZ library.

Key Commands

Running the Server

# Install dependencies
pip install -r requirements.txt

# Run with stdio transport (for Claude Desktop)
python3.11 jmcp.py -f devices.json -t stdio

# Run with streamable-http transport (for VSCode)
python3.11 jmcp.py -f devices.json -t streamable-http -H 127.0.0.1 -p 30030

# Docker build
docker build -t junos-mcp-server:latest .

# Docker run (stdio)
docker run --rm -it -v /path/to/devices.json:/app/config/devices.json junos-mcp-server:latest

# Docker run (streamable-http)
docker run --rm -it -v /path/to/devices.json:/app/config/devices.json -p 30030:30030 junos-mcp-server:latest python jmcp.py -f /app/config/devices.json -t streamable-http -H 0.0.0.0

Testing and Development

  • Run the unit tests with make test (or python -m unittest discover -s tests -v)
  • Code style is enforced with Black (configured in pyproject.toml); check with black --check . and auto-format with black .. CI runs Black and the unit tests (.github/workflows/ci.yml).
  • Live testing against devices requires a valid Junos device configuration in JSON format

Architecture

The server implements 9 MCP tools in jmcp.py:

  1. execute_junos_command - Execute arbitrary CLI commands on routers
  2. execute_junos_command_batch - Execute the same command on multiple routers in parallel
  3. execute_junos_pfe_command - Execute a PFE (packet forwarding engine) command on an FPC
  4. get_junos_config - Retrieve device configuration (uses show configuration | display inheritance no-comments)
  5. junos_config_diff - Compare configuration versions (rollback comparison)
  6. render_and_apply_j2_template - Render a Jinja2 template and load/commit it
  7. gather_device_facts - Collect device information using PyEZ facts
  8. get_router_list - List available routers from the configuration
  9. load_and_commit_config - Apply configuration changes (supports set/text/xml formats)

Read the full file on GitHub · 103 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 103 lines · 1,198 tokens per session scan A 290710e32161

Subscribe to this mod's changes

junos-mcp-server CLAUDE.md is an instructions file published in the GitHub repository Juniper/junos-mcp-server (106 stars, last pushed 19d ago), licensed Apache-2.0. It adds 1,198 tokens to every session, about $0.0060 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other instructions, from other repositories

brilliant_sdk AGENTS.md

Instructions for brilliantlabsAR/brilliant_sdk, covering brilliant sdk — agent guide, how an app works (the pattern behind everything), minimal reading paths, verify without hardware and testing.

brilliantlabsAR/brilliant_sdk · 1,817 tokens

NeoMind CLAUDE.md

Instructions for camthink-ai/NeoMind, covering neomind — edge ai platform for iot, development commands, ecosystem repositories, extension package contract (.nep) and device type template contract (json).

camthink-ai/NeoMind · 4,296 tokens

AMD-BC-250-Windows-Driver AGENTS.md

Instructions for Keshas-dev/AMD-BC-250-Windows-Driver, covering amd bc-250 windows driver — agent notes, host machine, ⚠️ historical-data caution (2026-08-21, strengthened), fresh re-verifications (current build, 2026-08-21) and workspace boundary.

Keshas-dev/AMD-BC-250-Windows-Driver · 48,206 tokens

Nothan-OS CLAUDE.md

Instructions for Vinalinux-Org/Nothan-OS, covering claude.md — nothanos, hard rules, toolchain, driver and design philosophy.

Vinalinux-Org/Nothan-OS · 499 tokens

zmk-config AGENTS.md

AGENTS.md instructions for urob/zmk-config, covering customization guide, ground rules, how the multi-board layout works, adding a new board and where to change what.

urob/zmk-config · 1,867 tokens

ext-apps CLAUDE.md

Claude Code instructions for modelcontextprotocol/ext-apps, a project described as: Official repo for spec & SDK of MCP Apps protocol - standard for UIs embedded AI chatbots, served by MCP servers.

modelcontextprotocol/ext-apps · 3 tokens