Skip to content

ansible-network/meraki_rm

Repository files navigation

cisco.meraki_rm

An Ansible collection for managing Meraki Dashboard resources using the resource module pattern. Configuration is expressed as declarative desired state (merged, replaced, overridden, gathered, deleted) and reconciled against the live API.

The collection includes 48 resource modules, a dynamically generated MCP server for AI agent integration, and a CLI tool — all driven by a single set of User Model dataclasses.

Quick Start

- name: Ensure VLAN 100 exists
  cisco.meraki_rm.meraki_appliance_vlans:
    state: merged
    network_id: L_123456
    config:
      - vlan_id: 100
        name: Engineering
        subnet: 10.100.0.0/24
        appliance_ip: 10.100.0.1

Install

ansible-galaxy collection install cisco.meraki_rm

For the MCP server and CLI (standalone Python package):

pip install './plugins/plugin_utils/[mcp,cli]'

Documentation

Architecture and Design

Doc Description
Overview Project goals, scope, and high-level architecture
Resource Module Pattern The state-driven CRUD pattern all modules follow
SDK Architecture Internal package layout, install modes, and extension points
Data Model Transformation How user-facing snake_case maps to API camelCase
Design Principles Architectural guardrails, validation strategy, and quality gates

Implementation

Doc Description
Foundation Components PlatformService, BaseResourceActionPlugin, User Models
Adding Resources Step-by-step guide for adding a new resource module
Code Generators Schema extraction, model generation, doc generation tooling
Meraki Implementation Guide Meraki-specific patterns, endpoint grouping, and identity categories

Tools and Interfaces

Doc Description
MCP Server Reference AI agent integration via Model Context Protocol
CLI Reference meraki-cli command-line tool for direct API interaction

Testing and Quality

Doc Description
Testing Strategy Unit tests, Molecule integration tests, and mock server

Process

Doc Description
Agent Collaboration Guide Working with AI agents on the codebase
Case Study: NovaCom Fictional walkthrough illustrating the framework in action

Presentation and Feedback

Doc Description
Feedback Questions Structured questions for Meraki stakeholder review
API Limitations How API design drives module states and identity categories
Coverage Report Spec-vs-module coverage analysis (auto-generated)

Project Layout

plugins/
  action/          # Action plugins (one per resource)
  modules/         # Module definitions (DOCUMENTATION + argspec)
  plugin_utils/    # Shared SDK: User Models, PlatformService, MCP, CLI
tools/             # Code generators, mock server, doc renderers
tests/             # Unit and integration tests
extensions/        # Molecule test scenarios
docs/              # Architecture and reference documentation
examples/          # Per-module Ansible playbook examples

License

See LICENSE.

Releases

No releases published

Packages

 
 
 

Contributors