Enables interaction with Cisco RADKit service for network device management, including discovering onboarded devices in inventory, fetching device attributes and capabilities, and executing CLI commands on network devices.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Cisco RADKit MCP Servershow me all the devices in my network inventory"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Disclaimer: This MCP Server is not an official Cisco product. It was developed for experimentation and learning purposes.
๐ Overview
This MCP server acts as a lightweight middleware layer between the Cisco RADKit service and an MCP-compatible client.
It allows the LLM to inspect and interact with devices onboarded in the RADKit inventory, fetch device attributes, and even execute CLI commands โ all through structured MCP tools.
โ๏ธ Features
๐ Plug-and-play MCP server โ works with any MCP-compatible client.
๐ Inventory discovery โ list all onboarded network devices.
๐ง Device introspection โ fetch device attributes and capabilities.
๐ฅ๏ธ Command execution โ run CLI commands on network devices.
๐ฆ Fully type-hinted tools for clarity and extensibility.
๐ Included libraries
All required libraries are mentioned in the file requirements.txt, including their fixed versions.
cisco_radkit_client==1.9.0cisco_radkit_common==1.9.0cisco_radkit_service==1.9.0fastmcp==2.13.1
๐งฐ Exposed MCP Tools
Tool Name | Description | Inputs | Returns | Use Case |
| Returns a string containing the names of devices onboarded in the Cisco RADKit inventory. | None |
| Use this first when the user asks about "devices", "network", or "all devices". |
| Returns detailed information about a specific device in JSON format. |
|
| Use this when the user asks about a specific device. |
| Executes a CLI command or commands on a target device and returns the raw text result. |
|
| Use this only if info is unavailable in |
๐งฉ Requirements
Python 3.10+
Active Cisco RADKit service
At least one read-only/RW user onboarded in the Cisco RADKit service
For more information about setting up a Cisco RADKit service, visit this link.
๐ ๏ธ Installation
Clone the repository in your deployment environment.
โ๏ธ Setup
Execute the included assistant script in a terminal based on your type of host OS:
๐ง๐ Linux/MacOS:
๐ช Windows:
The assistant will first create a virtual environment folder radkit-mcp-server/.venv/ with all the python libraries required. Afterwards, it will trigger the following assistant:
๐พ 1. Non-interactive Cisco RADKit authentication setup
The MCP server makes use of certificate login to avoid asking for Web UI authentication every time a tool is used. For that, the certificates need to be generated in the host. Select the first option and follow the instructions.
Take note of the password provided, as it will be needed for the 2nd option! Now, select the second option:
๐ 2. Generate .env file
Provide the information requested. The password is the one just setup in the first option.
This MCP server supports both stdio and https transport methods. When prompted, choose the one that you would like to use:
Default choice is stdio. Otherwise, if https is selected, you will be prompted for the following information:
The file radkit-mcp-server/.env is generated with environment variables that the MCP Server needs. โ Your MCP server is ready for use!
โก๏ธ Usage example: Claude Desktop
The Claude Desktop application provides an environment which integrates the Claude LLM and a rich MCP Client compatible with this MCP Server.
To get started, download the Claude Desktop app for your host OS, and choose the LLM usage plan that best fits your needs.
Afterwards, edit the radkit-mcp-server/claude_desktop_config.json file included in this repository to point to the absolute paths of your .venv and mcp_server.py files:
Then, copy this file to the location of your Claude Desktop application' configurations. The directory varies depending on your host OS:
๐ MacOS:
๐ช Windows:
๐ง Linux:
Now, restart your Claude Desktop app. Afterwards, if you navigate to Configurations/Developer/, you should see the MCP Server up and running:
โจ Prompt examples
๐ Show the inventory of your Cisco RADKit service One of the MCP server tools provides a list of device names.
๐ฐ Ask specific questions about a device Another MCP server tool provides information of the device if available directly in the Cisco RADKit SDK.
Otherwise, a command is executed in the device via a MCP server tool to get the information required.
๐บ๏ธ Complex querying using networking data The LLM can use the information from multiple data network queries to build, for example, a topology diagram.
This diagram can be later refined with more information from the network as required.
โฌ๏ธ Push configurations Not everything is query information! If the Cisco RADKit user onboarded in the MCP server is enabled with Write privileges, commit operations can take place.
These are just some examples of what can be done with this MCP server!