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' 文件中的服务器主机地址、端口号和超时设置等配置。

信息

分类

数据库与文件