Get the FREE Ultimate OpenClaw Setup Guide →

meraki

Cisco Meraki Dashboard MCP Server based on openAPI Spec v3

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio kiskander-meraki-mcp-server uv run python meraki_mcp_server.py stdio \
  --env MCP_ROLE="munique: one of noc | sysadmin | all (defaults to noc)" \
  --env MERAKI_KEY="Your Meraki Dashboard API key (required for access)" \
  --env MERAKI_BASE_URL="Defaults to https://api.meraki.com/api/v1 (optional override)"

How to use

This MCP server exposes a curated subset of the Cisco Meraki Dashboard API to MCP-aware clients. It implements role-based access control to limit operations by role (noc, sysadmin, or all) and bypasses strict OpenAPI validation to tolerate Meraki null values, ensuring smoother tooling interaction. The server is OpenAPI-driven in its tool generation, which means the available MCP operations align with the underlying Meraki endpoints, filtered by the configured role. To test locally, you start the server and connect via an MCP client (e.g., Cursor or Claude Desktop) over stdio, allowing you to issue read-only or limited mutating calls depending on your role.

How to install

Prerequisites:

  • Python 3.10+ installed on your system
  • Optional: uv (recommended) for reproducible Python environments
  • A Meraki Dashboard API key with appropriate organization access

Option A — Using uv (recommended):

  1. Install uv if needed curl -LsSf https://astral.sh/uv/install.sh | sh

  2. From project root, ensure you’re in the meraki-mcp-server repository cd /path/to/your/meraki-mcp-server

  3. Create and sync the environment based on pyproject.toml / uv.lock uv sync

Option B — Using plain Python (fallback):

  1. Create a virtual environment python3 -m venv .venv source .venv/bin/activate

  2. Install dependencies pip install fastmcp httpx jsonschema

  3. Run the server directly (no uv): python3 meraki_mcp_server.py

Additional notes

Tips and considerations:

  • Set MERAKI_KEY and, if desired, MERAKI_BASE_URL and MCP_ROLE in your shell or via your MCP client config before launching.
  • The server defaults to the noc role if MCP_ROLE is not provided; adjust to sysadmin or all as needed for your testing.
  • Validation is globally disabled to tolerate Meraki null values; if strict validation is required, revert the monkey patch in meraki_mcp_server.py and adjust the OpenAPI spec accordingly.
  • If you encounter import or compatibility issues, align your FastMCP client version with the MCPType compatibility as noted in the project’s pyproject.toml or uv.lock.
  • Never commit your API key; always rely on environment variables.
  • For stability, consider running behind a process supervisor and limiting filesystem/network access where appropriate.

Related MCP Servers

Sponsor this space

Reach thousands of developers