使用说明

项目简介

Consul MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将 HashiCorp Consul 的强大功能以标准化的方式暴露给大型语言模型 (LLM) 客户端。通过此服务器,LLM 应用可以安全、便捷地访问 Consul 的服务注册与发现、健康检查、键值存储等核心能力,从而实现更加智能和上下文感知的应用集成。

主要功能点

  • 服务管理:
    • 列出正在运行的服务
    • 注册和注销服务
    • 获取服务信息
    • 列出目录服务
    • 获取目录服务信息
  • 健康检查:
    • 注册健康检查
    • 注销健康检查
    • 获取服务的健康检查
  • 键值存储 (KV Store):
    • 从 KV 存储中获取值
    • 列出 KV 存储中的键
    • 在 KV 存储中设置值
    • 删除 KV 存储中的键
  • 会话 (Sessions):
    • 列出会话
    • 销毁会话
  • 事件 (Events):
    • 触发事件
    • 列出事件
  • 预查询 (Prepared Queries):
    • 创建预查询
    • 执行预查询
  • 状态 (Status):
    • 获取当前 Leader
    • 获取当前 Peers
  • Agent:
    • 获取 Agent 成员
    • 获取 Agent 自身信息
  • 系统 (System):
    • 获取系统健康服务信息

安装步骤

  1. 克隆仓库
    git clone https://github.com/kocierik/consul-mcp-server.git
    cd consul-mcp-server
  2. 安装依赖 确保已安装 Node.js 和 npm,然后运行:
    npm install
  3. 构建项目
    npm run build

服务器配置

为了让 MCP 客户端(如 Claude)连接到 Consul MCP Server,您需要配置客户端的 'mcpServers' 字段。以下是一个示例配置,您需要根据实际情况修改 'args' 中的路径:

{
    "mcpServers": {
        "consul-mcp": {
            "command": "node",
            "args": [
                "/ABSOLUTE/PATH/TO/PARENT/FOLDER/consul-mcp-server/build/index.js"
            ],
            "environment": {
                // Consul 服务器地址,默认为 localhost
                "CONSUL_HOST": "your_consul_host",
                // Consul 服务器端口,默认为 8500
                "CONSUL_PORT": "your_consul_port"
            }
        }
    }
}

配置参数说明:

  • 'command': 启动 MCP 服务器的命令,这里使用 'node' 运行 JavaScript 代码。
  • 'args': 启动命令的参数,指向编译后的 'index.js' 文件路径。请务必将 '/ABSOLUTE/PATH/TO/PARENT/FOLDER/consul-mcp-server' 替换为 'consul-mcp-server' 仓库在您本地文件系统中的绝对路径。
  • 'environment': 环境变量配置,用于配置 Consul 连接信息。
    • 'CONSUL_HOST': Consul 服务器的主机名或 IP 地址。如果 Consul 服务器运行在本地,则可以使用默认值 'localhost'。
    • 'CONSUL_PORT': Consul 服务器的端口号,默认为 '8500'。如果您的 Consul 服务器使用非默认端口,请修改此配置。

基本使用方法

  1. 启动 Consul MCP Server 在 'consul-mcp-server' 仓库目录下,运行以下命令启动服务器:

    node build/index.js

    服务器成功启动后,会在控制台输出类似 'Consul MCP Server running: @ localhost:8500' 的信息(具体地址和端口取决于您的配置)。

  2. 在 MCP 客户端中使用 配置好 MCP 客户端(如 Claude)的 'mcpServers' 后,客户端即可通过 MCP 协议与 Consul MCP Server 通信,并调用服务器提供的各项工具。

    例如,在 Claude 中,您可以指示 Claude 使用 'consul-mcp' 服务器提供的 'list-services' 工具来获取 Consul 中注册的服务列表。具体的工具调用方式和参数,请参考 MCP 客户端的文档和 Consul MCP Server 提供的工具描述。

    您可以通过 MCP Inspector 工具 (参考仓库 README 中的 Development -> Run inspector 部分) 来探索和测试服务器提供的工具。

重要提示:

  • 确保 Consul 服务器已正确安装并运行,并且 Consul MCP Server 可以访问到 Consul 服务器。
  • 根据您的 Consul 服务器配置,修改 'CONSUL_HOST' 和 'CONSUL_PORT' 环境变量。
  • 仔细检查并替换 Claude 客户端配置中 'args' 路径为正确的绝对路径。
  • 请参考 Consul 官方文档了解更多关于 Consul 功能和配置的信息 (https://www.consul.io/docs)。

信息

分类

开发者工具