home / mcp / hyperfabric mcp server

Hyperfabric MCP Server

An MCP (Model Context Protocol) server that enables LLMs to interact with Cisco Hyperfabric APIs. This server exposes all Hyperfabric OpenAPI endpoints as tools for comprehensive infrastructure management and automation.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "jim-coyne-hyperfabric_mcp": {
      "command": "node",
      "args": [
        "/path/to/hyperfabric-mcp-server/dist/main.js"
      ],
      "env": {
        "LOG_LEVEL": "info",
        "OPENAPI_SPEC_PATH": "hf_spec_modified.json",
        "HYPERFABRIC_API_TOKEN": "your-api-token"
      }
    }
  }
}

You deploy an MCP server that automatically exposes Hyperfabric OpenAPI endpoints as actionable tools for LLMs. This server lets you manage Fabrics, Nodes, VNIs, VRFs, and more through a consistent MCP interface, with secure token authentication and straightforward integration into your MCP clients.

How to use

You run the local MCP server and connect your MCP client to it. The server presents a comprehensive set of tools derived from the Hyperfabric REST API, enabling you to list, get, create, update, and delete resources across fabrics, nodes, networks, and virtual networks. Use the client to invoke the tools by name, pass the required parameters, and receive structured responses that your agent can interpret and act on.

How to install

Prerequisites: you need Node.js 18+ installed.

Install dependencies and build the server.

npm install
npm run build

Additional setup and notes

Configure your MCP client to run the local server as a stdio process. The client should spawn Node and pass the path to the compiled entry, along with the required environment variables.

Environment variables shown for running the server include the API token for authentication and a log level to control verbosity.

When you start the server, ensure the path to the built main script is correct in your client configuration, and provide the required API token so all tools can authenticate with Hyperfabric.

Security considerations

Use a secure API token to authenticate against Hyperfabric. Treat the token like any other sensitive credential and provide it only to trusted clients and processes.

Limit token scope and rotate credentials periodically to minimize risk from potential exposure.

Available tools

authGetBearerTokens

List all bearer tokens for the user

authCreateBearerTokens

Create new bearer tokens

authGetBearerToken

Get specific bearer token details

authDeleteBearerToken

Delete a specific bearer token

authGetUsers

List all users in organization

authGetUser

Get specific user details

authSetUsers

Create or update users

authUpdateUser

Update existing user

authDeleteUser

Delete a user account

devicesGetDevices

List all devices (bound and unbound)

devicesBindDevice

Bind a device to a fabric node

devicesUnbindDevice

Unbind device from a fabric node

fabricsGetAllFabrics

List all fabrics in organization

fabricsAddFabrics

Create new fabrics

fabricsGetFabric

Get specific fabric details

fabricsUpdateFabric

Update fabric configuration

fabricsDeleteFabric

Delete a fabric

fabricsGetFabricConnections

List all connections in fabric

fabricsAddFabricConnections

Add new connections

fabricsGetFabricConnection

Get specific connection details

fabricsSetFabricConnections

Replace all connections

fabricsDeleteFabricConnections

Delete all connections

fabricsDeleteFabricConnection

Delete specific connection

fabricsGetFabricCandidates

List candidate configurations

fabricsGetFabricCandidate

Get specific candidate config

fabricsCommitFabricCandidate

Deploy candidate to running config

fabricsRevertFabricCandidate

Discard candidate configuration

fabricsReviewFabricCandidate

Add comments to candidate config

networksGetFabricStp

Get fabric STP configuration

networksUpdateFabricStp

Update STP settings

networksResetFabricStp

Reset STP to defaults

nodesGetFabricNodes

List all nodes in fabric

nodesAddFabricNodes

Add new nodes to fabric

nodesGetNamedFabricNode

Get specific node details

nodesUpdateFabricNode

Update node configuration

nodesDeleteFabricNode

Remove node from fabric

nodesGetPorts

List all ports for a node

nodesGetPort

Get specific port details

nodesUpdatePort

Update port configuration

nodesSetPorts

Replace all port configurations

nodesResetPort

Reset port to defaults

nodesGetManagementPorts

List management ports

nodesAddManagementPorts

Add management ports

nodesGetManagementPort

Get specific management port

nodesUpdateManagementPort

Update management port config

nodesGetNodeLoopbacks

List loopback interfaces

nodesAddNodeLoopbacks

Create loopback interfaces

nodesGetNodeLoopback

Get specific loopback details

nodesUpdateNodeLoopback

Update loopback configuration

nodesDeleteNodeLoopback

Delete loopback interface

nodesGetNodeSubInterfaces

List sub-interfaces

nodesAddNodeSubInterfaces

Create sub-interfaces

nodesGetNodeSubInterface

Get specific sub-interface

nodesUpdateNodeSubInterface

Update sub-interface config

nodesDeleteNodeSubInterface

Delete sub-interface

portchannelsGetAllPortChannels

List all port channels

portchannelsAddPortChannels

Create port channels

portchannelsGetPortChannel

Get specific port channel

portchannelsUpdatePortChannel

Update port channel config

portchannelsDeletePortChannel

Delete port channel

vnisGetFabricVnis

List all VNIs in fabric

vnisAddFabricVnis

Create new VNIs

vnisGetFabricVni

Get specific VNI details

vnisUpdateFabricVni

Update VNI configuration

vnisDeleteFabricVni

Delete VNI

vnisGetFabricVniMembers

List VNI members

vnisAddFabricVniMembers

Add members to VNI

vnisGetFabricVniMember

Get specific member details

vnisDeleteFabricVniMember

Remove member from VNI

vrfsGetFabricVrfs

List all VRFs in fabric

vrfsAddFabricVrfs

Create new VRFs

vrfsGetFabricVrf

Get specific VRF details

vrfsUpdateFabricVrf

Update VRF configuration

vrfsDeleteFabricVrf

Delete VRF

vrfsGetFabricStaticRoutes

List static routes in VRF

vrfsAddFabricStaticRoutes

Add static routes

vrfsGetFabricStaticRoute

Get specific route details

vrfsUpdateFabricStaticRoute

Update static route

vrfsDeleteFabricStaticRoute

Delete static route