Emqx Mcp Server

Emqx Mcp Server

🚀 EMQX 自定义 MCP 服务器插件

本项目是一个用于与 EMQX MQTT 代理交互的自定义 MCP(消息中枢协议)服务器。它允许用户借助自然语言处理(NLP)接口对 MQTT 代理执行操作,例如列出连接的客户端、获取客户端详细信息、发布消息以及断开客户端连接,为用户操作 MQTT 代理提供了便捷途径。

🚀 快速开始

本插件能让您通过自然语言处理接口轻松操作 EMQX MQTT 代理,下面为您介绍使用前的准备工作。

✨ 主要特性

  • 支持通过自然语言处理(NLP)接口对 MQTT 代理执行操作。
  • 可进行列出连接客户端、获取客户端详细信息、发布消息以及断开客户端连接等操作。

📦 安装指南

1. 克隆仓库

git clone https://github.com/Benniu/emqx-mcp-server.git

2. 安装依赖

在项目根目录下运行以下命令:

npm install

3. 配置 MCP 服务器

创建一个名为 config.json 的文件,并添加以下内容:

{
"emqxApiUrl": "https://your-emqx-instance.com:8443/api/v5",
"apiKey": "<你的API密钥>",
"apiSecret": "<你的API密钥>"
}

💻 使用示例

基础用法

以下是与 MCP 服务器交互的示例对话:

用户

请列出连接到 MQTT 代理的所有客户端。

LLM 响应

以下是当前连接到您的 MQTT 代理的客户端:
已连接客户端:
- 客户端 ID: mqttx_2232bdb1
- 用户名: test
- 协议版本: MQTT v5
...
目前有 1 个客户端连接到您的 MQTT 代理。您是否需要获取此特定客户端的详细信息,还是希望对 MQTT 代理执行其他操作?

用户

是的,请提供这个客户端的详细信息。

LLM 响应

我将为您检索此客户端的详细信息。
...
以下是客户端 "mqttx_2232bdb1" 的详细信息:

**基本信息:**
- **客户端 ID:** mqttx_2232bdb1
- **用户名:** test
...
**连接详情:**
- **状态:** 已连接
- **创建时间:** 2025-03-02T05:29:51.103+00:00
...
您是否希望对此客户端执行任何操作,例如发布主题消息或断开客户端连接?

用户

请写一首诗并发送到主题 '/poem',质量为 1。

LLM 响应

我将为您创作一首诗并通过 MQTT 发布到 '/poem' 主题。让我为您完成这项操作。
...
我已经成功将这首诗发布到 '/poem' 主题,质量为 1。消息已送达,ID: 00062F55A1EFB1156ABC481240B30000。

我发送的诗歌如下:

- 信号在电波中穿梭,
- 无形的线将我们相连,
- 设备以低语交流,
- 穿越数字的鸿沟。
- 消息如同落叶飘零,
- 从云端坠入尘世,
- 虽然自由却无束缚,
- 在寂静中无声传诵。
- 如今机器成为纽带,
- 在全球间传递信息,
- 未来的脚步轻盈,
- 在时间长河中前行。

您是否希望继续创作诗歌或执行其他操作?

用户

请断开客户端 'mqttx_2232bdb1' 的连接。

LLM 响应

我已成功断开客户端 'mqttx_2232bdb1' 的连接。如需进一步操作,请随时告诉我!

高级用法

以下是更多与 MCP 服务器交互的示例:

1. 列出所有客户端

用户: "请列出连接到 MQTT 代理的所有客户端。"

2. 获取客户端详细信息

用户: "请提供客户端 'mqttx_2232bdb1' 的详细信息。"

3. 发布消息

用户: "请发布一条消息到主题 '/test',内容为 'Hello EMQX'。"

4. 断开客户端连接

用户: "请断开客户端 'mqttx_2232bdb1' 的连接。"

📚 详细文档

运行 MCP 服务器

方式一: 使用 UV 工具运行

uv main.ts config.json

方式二: 克隆仓库后运行

  1. 在终端中克隆此仓库:

    git clone https://github.com/Benniu/emqx-mcp-server.git
    
  2. 打开 config.json 文件并修改以下字段:

    • emqxApiUrl: 您的 EMQX 实例地址。
    • apiKey: 您的 API 密钥。
    • apiSecret: 您的 API 密钥。
  3. 在终端中运行 MCP 服务器:

    npm start
    

🔧 技术细节

项目目标

  • 可扩展性:支持更多 MQTT 相关操作。
  • 易用性:提供简洁的命令行和 API 接口。
  • 可靠性:确保所有操作准确无误。

如果您有任何问题或建议,请随时联系我!

📄 许可证

本项目使用 MIT 许可证,具体条款如下:

版权所有 (c) 2024, 您的名字 <您的邮箱>
许可在以下条件下使用、复制、修改和分发本软件或其部分:
- 保留此版权声明。
- 在分发的任何衍生作品中包含原始版权声明。

无明示保证,包括但不限于适销性、适合特定用途及不侵权的保证。在任何情况下,作者及其贡献者均不对任何直接、间接、附带、特殊、 EXEMPLARY 或后果性的损害承担责任。
  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-10-04 07:06

相似服务问题

相关AI产品