MCP ExplorerExplorer

Mcp Server For Cisco Aci

@datacenteron 4 days ago
3 MIT
FreeCommunity
AI Systems
A simple MCP (Model Context Protocol) that interacts with Cisco ACI

Overview

What is Mcp Server For Cisco Aci

The MCP (Model Context Protocol) for Cisco APIC is a server application designed to facilitate interaction with Cisco’s Application Policy Infrastructure Controller (APIC). It allows users to access and manage Cisco’s Application Centric Infrastructure (ACI) through a command-line interface, enabling easier integration and automation of network management tasks.

Use cases

Use cases for the MCP server include network configuration management, troubleshooting, and automation of tasks within a Cisco ACI environment. It is particularly useful for network engineers and developers looking to streamline their workflows and enhance the capabilities of Cisco APIC by integrating AI tools or developing custom interactions.

How to use

To use the MCP server, configure your APIC credentials in a .env file and set up your development environment by registering the server with tools like Claude Desktop or Visual Studio Code. Users can run the server with local installations or inside a Docker container, and they can invoke various client tools to communicate with the MCP server seamlessly.

Key features

Key features of the MCP server include its configuration flexibility via environment variables, two tools designed for APIC interaction, compatibility with local execution setups in STDIO mode, and support for running as a Docker container. The server can be easily integrated with popular programming environments and AI applications.

Where to use

The MCP server is primarily used in environments where Cisco ACI is deployed, including data centers and enterprise networks. It is ideal for network management operations, integration with development tools for automation, and environments utilizing AI for enhanced network operations.

Content

MCP (Model Context Protocol) for Cisco APIC

This project provides a simple MCP (Model Context Protocol) server that interacts with a Cisco APIC controller.
If you’d like to understand how this works in detail, please check out this blog post

  • Tested with Claude Desktop and Visual Studio Code in Agent mode with Copilot.
  • The server runs in STDIO mode, intended for local execution.

Features

  • Exposes two tools for APIC interaction (see app/main.py for details).
  • Easily configurable via environment variables.

Setup

  1. Specify APIC credentials in the .env file.

  2. If you want Claude or VS Code to run the Python code directly (no container), install UV

  3. Register the MCP server with Claude or VS Code.

    For VS Code, create a .vscode/mcp.json file like this in your workspace:

    {
      "servers": {
        "ciscoApicServer": {
          "type": "stdio",
          "command": "C:\\Users\\cpaggen\\.local\\bin\\uv.EXE",
          "args": [
            "run",
            "--with",
            "mcp[cli]",
            "mcp",
            "run",
            "C:\\MCP\\app\\main.py"
          ]
        }
      }
    }
  4. Instruct Claude Desktop or VS Code to use it:

  5. Install MCP client tools locally if you invoke the MCP server with uv run mcp as above.

    • Use uv add "mcp[cli]" or pip install "mcp[cli]"

Docker Support

You can run the server directly using UV, or build a Docker image and run it as a container. If using Docker, adapt the mcp.json config accordingly.

Note: Local installation of MCP client tools is recommended for debugging the server code.

Screenshots

Below are some screenshots demonstrating the MCP server in action and its integration with Claude Desktop and VS Code:

MCP Server Registered Tool Registered in Claude Claude Tools List
MCP Server Registered Tool Registered in Claude Claude Tools List
MCP Server Output Sample Question in VS Code Sample Question in Claude
MCP Server Output Sample Question VS Code Sample Claude Question
How to Use ACI Backup
How to Use ACI Backup

These images illustrate the registration process, available tools, and example interactions.

Tools

No tools

Comments