MQTTX SSE Server

MQTTX SSE Server

一个实现了模型-上下文协议 (MCP) 的方案,该方案支持通过服务器发送事件 (SSE) 传输 MQTT 操作。

ysfscream

研究与数据
访问服务器

README

MQTTX SSE 服务器

一个实现了模型-上下文协议 (MCP) 的服务器,它支持通过服务器发送事件 (SSE) 传输 MQTT 操作。

关于 MCP

模型-上下文协议 (MCP) 是一种标准化协议,允许 AI 助手与外部工具和服务进行交互。 此服务器使用 SSE(服务器发送事件)作为传输层来实现 MCP 规范,从而提供 MQTT 代理连接功能。

特性

  • 实现 MCP 协议版本 2024-11-05
  • 使用 SSE(服务器发送事件)作为传输层
  • 通过 MCP 工具提供 MQTT 操作:
    • 连接到 MQTT 代理
    • 订阅 MQTT 主题
    • 将消息发布到 MQTT 主题
  • 从订阅的主题实时传递消息
  • 多个客户端的会话管理

快速开始

前提条件

  • Node.js (v14 或更高版本)
  • npm

安装

# 克隆仓库
git clone https://github.com/yourusername/mqttx-sse-server.git
cd mqttx-sse-server

# 安装依赖
npm install

运行服务器

npm start

服务器默认将在端口 4000 上启动。

配置 MQTTX

要将此 MCP 服务器与 MQTTX 一起使用,请将以下配置添加到您的 MQTTX 设置:

{
  "mcpServers": {
    "mqttx-server": {
      "url": "http://localhost:4000/mqttx/sse"
    }
  }
}

MCP 协议实现

此服务器使用以下组件实现模型-上下文协议:

  • SSE 连接:建立持久连接以进行实时更新
  • JSON-RPC API:根据 MCP 规范处理工具调用和响应
  • 工具接口:通过标准化的 MCP 工具提供 MQTT 功能
  • 会话管理:跟踪客户端会话及其 MQTT 连接

API 参考

SSE 连接

建立持久连接以接收服务器事件。

GET /mqttx/sse

响应事件:

  • endpoint:包含用于进行 JSON-RPC 调用的 URL
  • heartbeat:定期 ping 以保持连接活动
  • message:包含 JSON-RPC 响应

JSON-RPC 命令

所有命令都使用您的会话 ID 发送到消息端点:

POST /mqttx/message?sessionId=xxx

初始化

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize"
}

列出工具

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/list"
}

MQTT 连接

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "mqttConnect",
    "arguments": {
      "host": "broker.example.com",
      "port": 1883,
      "clientId": "mqttx-client"
    }
  }
}

MQTT 订阅

{
  "jsonrpc": "2.0",
  "id": 4,
  "method": "tools/call",
  "params": {
      "name": "mqttSubscribe",
      "arguments": {
        "topic": "test/topic",
        "qos": 0
      }
  }
}

MQTT 发布

{
  "jsonrpc": "2.0",
  "id": 5,
  "method": "tools/call",
  "params": {
      "name": "mqttPublish",
      "arguments": {
        "topic": "test/topic",
        "payload": "Hello MQTT!",
        "qos": 0,
        "retain": false
      }
  }
}

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python