trackmcp
Back to directory

A comprehensive MCP server for configuring and managing Cisco ACI (Application Centric Infrastructure) fabrics through the APIC REST API.

2 stars JavaScriptOthers Updated Nov 24, 2025

Documentation

ACI Model Context Protocol (MCP) Server

A comprehensive MCP server for configuring and managing Cisco ACI (Application Centric Infrastructure) fabrics through the APIC REST API.

Overview

This MCP server provides 35+ tools for complete ACI fabric management, including:

  • Tenant Management: Create, list, get, update, and delete tenants
  • Application Profiles: Manage application profiles within tenants
  • Endpoint Groups (EPGs): Configure and manage endpoint groups
  • Bridge Domains: Create and manage Layer 2 domains
  • VRFs: Manage Virtual Routing and Forwarding instances
  • Contracts: Define and manage security policies
  • Health Monitoring: Monitor fabric health and faults
  • Node Management: Manage fabric nodes and interfaces

Installation

Prerequisites

  • Node.js 18+ and npm
  • Access to a Cisco APIC controller
  • Valid APIC credentials (username/password or certificate)

Setup

1. Clone and Install:

bash
cd aci-mcp-server
   npm install

2. Configure Authentication:

Option A: Environment Variables

bash
cp .env.example .env
   # Edit .env with your APIC details
   export ACI_APIC_URL="https://your-apic.domain.com"
   export ACI_USERNAME="admin"
   export ACI_PASSWORD="your_password"

Option B: Configuration Files

bash
cp aci-config.json.example aci-config.json
   # Edit aci-config.json with your settings

Option C: Certificate Authentication

bash
export ACI_APIC_URL="https://your-apic.domain.com"
   export ACI_USERNAME="admin"
   export ACI_CERT_NAME="your-cert-name"
   export ACI_PRIVATE_KEY_PATH="/path/to/private.key"

3. Build the Server:

bash
npm run build

4. Test Connection:

bash
npm start
   # Should connect to APIC and display available tools

Configuration

Authentication Methods

The server supports two authentication methods:

1. Username/Password: Standard APIC login

2. Certificate: X.509 certificate-based authentication (recommended for production)

Tool Configuration

Configure which tools are available using `aci-mcp-config.json`:

json
{
  "serverConfig": {
    "name": "aci",
    "toolSelectionMode": "whitelist",
    "enableAllTools": false,
    "tenantFocus": "production"
  },
  "toolConfiguration": {
    "enabledTools": ["list_tenants", "get_fabric_health", ...],
    "disabledTools": []
  }
}

Tool Modes:

  • `core`: Essential tools (35 tools) - Default
  • `all`: All available tools (50+ tools)

Environment Variable Configuration:

bash
export ACI_TOOL_MODE=core          # or 'all'
export ACI_TENANT_FOCUS=production # Focus on specific tenant

Available Tools

Tenant Management (5 tools)

  • `list_tenants` - List all tenants
  • `get_tenant` - Get specific tenant details
  • `create_tenant` - Create new tenant
  • `update_tenant` - Update tenant configuration
  • `delete_tenant` - Delete tenant

Application Profile Management (5 tools)

  • `list_application_profiles` - List application profiles
  • `get_application_profile` - Get specific application profile
  • `create_application_profile` - Create new application profile
  • `update_application_profile` - Update application profile
  • `delete_application_profile` - Delete application profile

Endpoint Group Management (6 tools)

  • `list_endpoint_groups` - List endpoint groups
  • `get_endpoint_group` - Get specific EPG details
  • `create_endpoint_group` - Create new EPG
  • `update_endpoint_group` - Update EPG configuration
  • `delete_endpoint_group` - Delete EPG
  • `get_endpoint_group_stats` - Get EPG statistics

Bridge Domain Management (5 tools)

  • `list_bridge_domains` - List bridge domains
  • `get_bridge_domain` - Get specific bridge domain
  • `create_bridge_domain` - Create new bridge domain
  • `update_bridge_domain` - Update bridge domain
  • `delete_bridge_domain` - Delete bridge domain

VRF Management (5 tools)

  • `list_vrfs` - List VRFs
  • `get_vrf` - Get specific VRF details
  • `create_vrf` - Create new VRF
  • `update_vrf` - Update VRF configuration
  • `delete_vrf` - Delete VRF

Contract Management (8 tools)

  • `list_contracts` - List contracts
  • `get_contract` - Get contract details
  • `create_contract` - Create new contract
  • `update_contract` - Update contract
  • `delete_contract` - Delete contract
  • `list_filters` - List filters
  • `create_filter` - Create new filter
  • `delete_filter` - Delete filter

Health & Monitoring (8 tools)

  • `get_fabric_health` - Get overall fabric health
  • `list_faults` - List fabric faults
  • `get_fault_summary` - Get fault summary by severity
  • `list_nodes` - List fabric nodes
  • `get_node_health` - Get node health status
  • `list_interfaces` - List fabric interfaces
  • `get_interface_stats` - Get interface statistics
  • `get_system_info` - Get APIC system information

Frequently asked questions

What is ACI_MCP?

ACI_MCP is A comprehensive MCP server for configuring and managing Cisco ACI (Application Centric Infrastructure) fabrics through the APIC REST API.

How do I install ACI_MCP?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is ACI_MCP open source?

Yes — it is hosted on GitHub at https://github.com/jim-coyne/ACI_MCP and has 2 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP