FIWARE Context Broker MCP 服务器

FIWARE Context Broker MCP 服务器

本项目是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为 LLM 应用提供与 FIWARE Context Broker 交互的桥梁。它允许 LLM 通过标准化的 MCP 协议访问和操作 FIWARE Context Broker 中的上下文数据,从而实现更智能的应用场景。

主要功能点:

  • Context Broker 版本查询: 检查连接的 FIWARE Context Broker 的版本信息,确保兼容性。
  • Context Broker 数据查询: 允许 LLM 客户端查询 Context Broker 中的实体数据,获取所需的上下文信息。
  • Context Broker 实体发布与更新: 支持 LLM 客户端向 Context Broker 发布或更新实体数据,实现对外部环境状态的写入和控制。

安装步骤:

  1. 克隆仓库:

    git clone https://github.com/dncampo/FIWARE-MCP-Server
    cd FIWARE-MCP-Server
  2. 安装依赖: 确保已安装 Python 3.7 或更高版本和 pip。然后运行以下命令安装项目依赖:

    pip install -r requirements.txt

服务器配置 (MCP 客户端配置):

MCP 客户端需要配置以下 JSON 信息才能连接到此 MCP 服务器。将以下 JSON 配置添加到你的 MCP 客户端配置中,通常在客户端的服务器列表中添加一个新的服务器配置即可。

{
  "server name": "FIWARE Context Broker MCP Server",
  "command": "python",
  "args": [
    "server.py"
  ],
  "host": "127.0.0.1",
  "port": "5001"
}

配置参数说明:

  • '"server name"': 服务器的名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • '"command"': 启动服务器的命令,这里使用 'python' 命令来运行 'server.py' 脚本。
  • '"args"': 传递给启动命令的参数,这里是 'server.py',表示要运行的 Python 脚本。
  • '"host"': MCP 服务器监听的主机地址,默认为 '127.0.0.1' (本地主机)。如果需要从其他机器访问,请修改为服务器的 IP 地址或域名。
  • '"port"': MCP 服务器监听的端口号,默认为 '5001'。请确保此端口未被占用,并与服务器 'server.py' 中配置的端口一致。

基本使用方法:

  1. 启动服务器: 在仓库目录下,运行以下命令启动 MCP 服务器:

    python server.py

    服务器默认会在 '127.0.0.1:5001' 启动并监听来自 MCP 客户端的请求。

  2. 在 MCP 客户端中使用工具: 启动 MCP 客户端,并确保已添加上述服务器配置。客户端应该能够发现并调用以下工具 (Tools):

    • CB_version: 查询 Context Broker 版本。

      • 默认参数: 'address="localhost"', 'port=1026' (Context Broker 地址和端口,可根据实际情况修改)
      • 返回值: 包含版本信息的 JSON 字符串。
    • query_CB: 查询 Context Broker 数据。

      • 参数: 'address="localhost"', 'port=1026', 'query=""' (Context Broker 地址、端口和查询语句,'query' 参数留空则查询所有实体)
      • 返回值: 包含查询结果的 JSON 字符串。
    • publish_to_CB: 发布或更新实体到 Context Broker。

      • 参数: 'address="localhost"', 'port=1026', 'entity_data={...}' (Context Broker 地址、端口和实体数据,'entity_data' 为字典格式的实体信息,需要符合 NGSI-LD 规范)
      • 返回值: 包含操作状态的 JSON 字符串。

    具体工具的使用方法和参数可以在 MCP 客户端的界面中查看和操作。

注意:

  • 确保已安装并运行 FIWARE Context Broker 实例,并且 MCP 服务器可以访问到 Context Broker。
  • 可以根据需要修改 'server.py' 文件中的服务器主机地址、端口号和超时设置等配置。

服务器信息