Token导航 LogoToken导航

MCP Server · AI代理

Radkit MCP Server

一个独立的 MCP 服务器,通过 FastMCP 构建,将 Cisco RADKit SDK 的关键功能暴露为 MCP 工具,使 LLM 能够通过 MCP 客户端与网络设备智能交互。

stdio官方级别未说明来源级核验工具 5
PythonClaudeFastMCPClaude Desktop

快速开始

作者 / 组织
CiscoDevNet
提供方
CiscoDevNet
运行时
Python

工具数量

5

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

10

仓库热度

收录来源

1 个

MCP World

选型结论

Radkit MCP Server 属于AI代理类 MCP Server,公开资料标注 5 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude,有可以直接复制的安装命令;接入前要先准备 访问 Token。

分类

AI代理

传输方式

stdio

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

安装命令

uv run python radkit_onboarding.py

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 5 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

✨🤖 Cisco RADKit MCP Server

A stand-alone MCP server built with FastMCP that exposes key functionalities of the Cisco RADKit SDK as MCP tools. It is designed to be connected to any MCP client and LLM of your choice, enabling intelligent interaction with network devices through Cisco RADKit.

免责声明:此MCP服务器不是思科官方产品。它是为实验和学习目的而开发的。

______________________________________________________________________

目录

  1. 概述
  2. 特性
  3. 需求
  4. 安装
  5. 认证

- 选项1:本地证书(开发) - 选项2:环境变量(容器) - 选项3:直接RPC

  1. 运行服务器
  2. 可用的MCP工具
  3. 容器部署
  4. 测试
  5. 使用示例:Claude Desktop

______________________________________________________________________

🚀 概述

此MCP服务器充当 思科RADKit 服务和A MCP兼容客户端它允许LLM检查RADKit清单中已登录的设备并与之交互,获取设备属性,并执行CLI命令——所有这些都是通过结构化的MCP工具完成的。

⚙️ 特性

  • 🔌 即插即用 --适用于任何兼容MCP的客户端。
  • 🔍 库存发现 --列出所有已登录的网络设备。
  • 🧠 设备自检 --获取设备属性和功能。
  • 🖥️ 命令执行 --在具有超时和截断控制的网络设备上运行CLI命令。
  • 📦 完全键入提示工具 为了清晰和可扩展性。

🧩 需求

  • Python 3.12+
  • 主动思科RADKit服务(安装指南)
  • uv Python包管理器
  • RADKit服务中至少有一个只读或读写用户登录

Python依赖关系 (固定 pyproject.toml):

包版本
cisco_radkit_client1.9.6
cisco_radkit_common1.9.6
cisco_radkit_service1.9.6
fastmcp2.13.1

🧰 可用的MCP工具

工具描述返回
get_device_inventory_names()返回RADKit资源清册中所有设备的名称。str
get_device_attributes(target_device)返回特定设备的详细JSON属性(名称、主机、类型、SNMP/NETCONF状态、功能等)。str (JSON)
exec_cli_commands_in_device(target_device, cli_commands, timeout?, max_lines?, service_serial?)在设备上执行一个或多个CLI命令。返回原始字符串输出。str
snmp_get(device_name, oid, service_serial?, timeout?)对设备上的一个或多个OID执行SNMP GET。list[dict]
exec_command(device_name, command, service_serial?, timeout?, max_lines?)执行命令并返回结构化输出(状态、截断信息)。`dict\list[dict]`
  • 从...开始 get_device_inventory_names() 以发现可用设备。
  • 使用 get_device_attributes() 在运行命令之前检查设备。
  • 使用 exec_cli_commands_in_device() 用于原始CLI输出;使用 exec_command() 当需要结构化响应元数据时。
  • 使用 snmp_get() 无需CLI访问即可轮询指标或检索MIB值。

🚗 可用的运输选项

模式描述
stdio标准I/O——用于本地客户端(Claude Desktop等)
sse服务器通过HTTP发送事件——适用于多个网络客户端
httpHTTP——用于HTTP环境

🛠️ 安装

克隆存储库并创建本地虚拟环境:

git clone https://github.com/ponchotitlan/radkit-mcp-server.git
cd radkit-mcp-server
uv sync --extra onboarding
对于Docker、Docker Compose或Kubernetes部署,请参阅 容器部署.

🔐 认证

服务器支持三种身份验证方法,按以下优先级顺序进行评估:

  1. 直接RPC --如果 RADKIT_DIRECT_HOST 和 RADKIT_DIRECT_TOKEN 设置。
  2. 环境变量 --如果 RADKIT_CERT_B64 已设置。
  3. 本地证书文件 --从 ~/.radkit/identities/.

______________________________________________________________________

选项1:本地证书(建议用于开发)

使用交互式入职脚本生成证书和 .env 文件:

uv run python radkit_onboarding.py

步骤1——生成证书

选择选项 1 并完成基于浏览器的身份验证流程。系统将要求您为私钥设置密码。

? Choose an option: 1. 👾 Onboard user to non-interactive Cisco RADKit authentication
? Enter Cisco RADKit username: ponchotitlan@cisco.com

A browser window was opened to continue the authentication process.

Authentication result received.
New private key password: ***********
Confirm: ***********
重要提示: 保存此密码短语——您将在步骤2中需要它。

步骤2——生成.env文件

选择选项 2 并提供所需的详细信息:

? Choose an option: 2. 📚 Generate .env file for Cisco RADKit MCP server
? Enter Cisco RADKit username: ponchotitlan@cisco.com
? Enter Cisco RADKit service code: aaaa-bbbb-cccc
? Enter non-interactive authentication password: ***********
? Select MCP transport mode: stdio

如果您选择 http 或 sse,系统还将提示您输入主机和端口:

? Select MCP transport mode: http
? Enter MCP host: 0.0.0.0
? Enter MCP port: 8000

这 .env 文件保存在项目根目录中。服务器自动检测来自的证书 ~/.radkit/identities/ --不需要额外的配置。

✅ 您的MCP服务器已准备好运行。

______________________________________________________________________

选项2:环境变量(建议用于容器)

将此方法用于Docker、Kubernetes或任何没有本地文件访问权限的环境。

生成 .env 从现有的本地证书中创建文件:

python scripts/build_env.py

此脚本从以下位置读取您的RADKit证书 ~/.radkit/identities/,Base64对它们进行编码,并写入 .env 包含以下变量的文件:

RADKIT_IDENTITY=user@cisco.com
RADKIT_DEFAULT_SERVICE_SERIAL=service-serial
RADKIT_CERT_B64=
RADKIT_KEY_B64=
RADKIT_CA_B64=
RADKIT_KEY_PASSWORD_B64=

______________________________________________________________________

选项3:直接RPC

通过本地网络直接连接到RADKit服务器,无需基于云的身份验证。非常适合内部部署或气隙部署。

步骤1 --登录您的RADKit Web UI,并为您的用户帐户复制E2EE验证令牌。

步骤2 --将以下内容添加到您的 .env 文件:

RADKIT_IDENTITY=user@example.com
RADKIT_DIRECT_HOST=192.168.1.100        # IP or hostname of your RADKit server
RADKIT_DIRECT_TOKEN=your-e2ee-token     # E2EE validation token from the Web UI
# RADKIT_DIRECT_PORT=8181               # Optional, default is 8181

MCP_TRANSPORT=sse   # or stdio / http
MCP_HOST=0.0.0.0
MCP_PORT=8000
RADKIT_DEFAULT_SERVICE_SERIAL 是 不 在直接RPC模式下需要。

步骤3 --启动服务器。成功连接后,您将看到:

Using authentication mode: direct_rpc
Connecting directly to RADKit server at 192.168.1.100:8181...
✓ Connected directly to RADKit server at 192.168.1.100:8181

🚀 运行服务器

方法1:直接使用Python

python mcp_server.py

方法2:FastMCP开发模式(文件更改时自动重新加载)

fastmcp dev src/radkit_mcp/server.py

方法3:FastMCP运行

# STDIO (for local clients like Claude Desktop)
fastmcp run src/radkit_mcp/server.py

# SSE (for network access)
fastmcp run src/radkit_mcp/server.py --transport sse --port 8000

# HTTPS (secure network access)
fastmcp run src/radkit_mcp/server.py --transport https --port 8000

方法4:Python模块

python -m radkit_mcp.server

🐳 容器部署

Dockerfile示例

FROM python:3.12-slim

WORKDIR /app

# Install dependencies from the default public index.
RUN pip install --no-cache-dir \
    fastmcp==2.13.1 \
    python-dotenv>=1.0.0 \
    pydantic-settings>=2.0.0

# Install RADKit dependencies using RADKit index in addition to PyPI.
RUN pip install --no-cache-dir --extra-index-url https://radkit.cisco.com/pip \
    cisco-radkit-client==1.9.6 \
    cisco-radkit-common==1.9.6 \
    cisco-radkit-service==1.9.6

# Copy application code.
COPY src ./src

# Run server
CMD ["python", "-m", "radkit_mcp.server"]

Docker编写示例

services:
  radkit-mcp:
    build: .
    environment:
      - RADKIT_IDENTITY=user@cisco.com
      - RADKIT_DEFAULT_SERVICE_SERIAL=service-serial
      - RADKIT_CERT_B64=${RADKIT_CERT_B64}
      - RADKIT_KEY_B64=${RADKIT_KEY_B64}
      - RADKIT_CA_B64=${RADKIT_CA_B64}
      - RADKIT_KEY_PASSWORD_B64=${RADKIT_KEY_PASSWORD_B64}
      - MCP_TRANSPORT=sse
      - MCP_HOST=0.0.0.0
      - MCP_PORT=8000
    ports:
      - "8000:8000"

Kubernetes部署

apiVersion: apps/v1
kind: Deployment
metadata:
  name: radkit-mcp-server
spec:
  replicas: 1
  selector:
    matchLabels:
      app: radkit-mcp
  template:
    metadata:
      labels:
        app: radkit-mcp
    spec:
      containers:
      - name: radkit-mcp
        image: your-registry/radkit-mcp:2.0
        env:
        - name: RADKIT_IDENTITY
          value: "user@cisco.com"
        - name: RADKIT_DEFAULT_SERVICE_SERIAL
          value: "service-serial"
        - name: RADKIT_CERT_B64
          valueFrom:
            secretKeyRef:
              name: radkit-certs
              key: certificate
        - name: RADKIT_KEY_B64
          valueFrom:
            secretKeyRef:
              name: radkit-certs
              key: private-key
        # ... other env vars from secret

🔌 直接RPC连接

除了标准的基于云的连接外,此服务器还支持通过网络直接连接到RADKit服务器,使用 直接RPC这非常适合于云连接不可用或不需要的本地部署或气隙环境。

何时使用Direct RPC: 当您的RADKit服务器可以通过本地网络访问,并且您希望完全避免基于云的证书身份验证时,请选择此方法。

服务器不通过Cisco RADKit云,而是使用从RADKit Web UI获得的E2EE验证令牌直接连接到RADKit服务器的IP地址或主机名。不需要证书。

当 RADKIT_DIRECT_HOST 和 RADKIT_DIRECT_TOKEN 如果两者都已设置,则直接RPC模式将自动激活,并优先于所有其他身份验证方法。

步骤1:获取您的E2EE验证令牌

登录您的RADKit Web UI,并为您的用户帐户复制E2EE验证令牌。此令牌充当直接RPC连接的密码。

步骤2:设置环境变量

将以下变量添加到您的 .env 文件:

# Your RADKit username (email)
RADKIT_IDENTITY=user@example.com

# IP address or hostname of your RADKit server
RADKIT_DIRECT_HOST=192.168.1.100

# E2EE validation token from the RADKit Web UI
RADKIT_DIRECT_TOKEN=your-e2ee-validation-token

# Optional: port to connect to (default is 8181)
# RADKIT_DIRECT_PORT=8181

# Your MCP server details
MCP_TRANSPORT=sse|stdio|http
MCP_HOST=0.0.0.0
MCP_PORT=8000
注: RADKIT_DEFAULT_SERVICE_SERIAL 是 不 使用直接RPC模式时需要。

步骤3:运行服务器

使用任何支持的方法正常启动服务器:

python mcp_server.py

当Direct RPC模式处于活动状态时,服务器将在启动时记录以下内容:

Using authentication mode: direct_rpc
Connecting directly to RADKit server at 192.168.1.100:8181...
✓ Connected directly to RADKit server at 192.168.1.100:8181

Docker Compose

要在Docker部署中使用Direct RPC,请在您的 docker-compose.yml:

services:
  radkit-mcp:
    build: .
    environment:
      - RADKIT_IDENTITY=user@example.com
      - RADKIT_DIRECT_HOST=192.168.1.100
      - RADKIT_DIRECT_PORT=8181
      - RADKIT_DIRECT_TOKEN=your-e2ee-validation-token
      - MCP_TRANSPORT=sse
      - MCP_HOST=0.0.0.0
      - MCP_PORT=8000
    ports:
      - "8000:8000"
      - "8081:8081"
    networks:
      - radkit-net

networks:
  radkit-net:
    driver: bridge

🧪 测试

全面的测试套件,覆盖率超过95%!

运行所有测试

.venv/bin/pytest tests/ -v

运行特定测试套件

# Integration tests (RADKit API)
.venv/bin/pytest tests/test_integration.py -v

# MCP protocol tests
.venv/bin/pytest tests/test_mcp_client.py -v

测试覆盖率报告

.venv/bin/pytest tests/ --cov=src/radkit_mcp --cov-report=html

⚡️ 使用示例:Claude Desktop

Claude Desktop应用程序提供了一个集成了Claude LLM和与此MCP服务器兼容的丰富MCP客户端的环境。

要开始,请下载 Claude桌面应用程序 对于您的主机操作系统,请选择最适合您需求的LLM使用计划。

之后,编辑 radkit-mcp服务器/claude_desktop_config json 此存储库中包含的文件指向 绝对路径 你的 _.venv_ 和 _mcp_server.py_ 文件夹:

{
  "mcpServers": {
    "radkit-mcp-server": {
      "command": "/Users/ponchotitlan/Documents/radkit-mcp-server-community/.venv/bin/python",
      "args": [
        "/Users/ponchotitlan/Documents/radkit-mcp-server-community/mcp_server.py"
      ],
      "description": "Cisco RADKit MCP Server - Community"
    }
  }
}

然后,将此文件复制到Claude Desktop应用程序配置的位置。目录因主机操作系统而异:

🍎 MacOS:

cp claude_desktop_config.json ~/Library/Application\ Support/Claude 

🪟 窗户:

cp claude_desktop_config.json %APPDATA%\Claude\

🐧 Linux:

cp claude_desktop_config.json ~/.config/Claude/

现在,重新启动您的Claude Desktop应用程序。之后,如果您导航到 配置/开发人员/,您应该看到MCP服务器已启动并正在运行:

✨ 提示示例

📚 显示Cisco RADKit服务的清单

MCP服务器工具之一提供设备名称列表。

🎰 询问有关设备的具体问题

另一个MCP服务器工具提供设备的信息(如果可以直接在Cisco RADKit SDK中获得)。

否则,通过MCP服务器工具在设备中执行命令以获取所需信息。

🗺️ 使用网络数据进行复杂查询

LLM可以使用来自多个数据网络查询的信息来构建例如拓扑图。

稍后可以根据需要使用来自网络的更多信息来细化此图。

⬇️ 推送配置

并非所有信息都是查询信息! 如果MCP服务器中登录的Cisco RADKit用户启用了写权限,可以进行提交操作。

这些只是使用此MCP服务器可以完成的一些示例!

______________________________________________________________________

工具与能力

工具数量

5

资源数量

0

提示词数量

0

能力标签

网络设备管理Python本地部署MCP协议LLM集成CiscoRADKitFastMCP

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 只提供 5 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到访问 Token的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Radkit MCP Server

MCP World · 本页

5stdio有1 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Radkit MCP Server 怎么安装?

公开资料给出的安装命令是 uv run python radkit_onboarding.py,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Radkit MCP Server 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Radkit MCP Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Radkit MCP Server 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Radkit MCP Server 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP