L

Loki日志分析接口

一个MCP接口,允许AI助手使用LogQL查询和分析Grafana Loki日志,支持身份验证和各种输出格式。

monitoring

455 查看 · 2026-07-07 更新

简介

一个MCP接口,允许AI助手使用LogQL查询和分析Grafana Loki日志,支持身份验证和各种输出格式。

简介

一个MCP接口,允许AI助手使用LogQL查询和分析Grafana Loki日志,支持身份验证和各种输出格式。

简单的 Loki MCP 服务器

smithery 徽章

Loki MCP 服务器是一个 Model Context Protocol (MCP) 接口,用于通过 logcli 查询 Grafana Loki 日志。该服务器使 AI 助手能够直接访问和分析来自 Loki 的日志数据。

Loki 服务器 MCP 服务器

特性

  • 支持完整 LogQL 查询 Loki 日志
  • 获取标签值和元数据
  • 通过环境变量或配置文件支持身份验证和配置
  • 提供不同输出格式的结果(默认、原始、JSON 行)

前提条件

  • Node.js v16 或更高版本
  • TypeScript
  • 安装并可以在 PATH 中访问 Grafana Loki logcli
  • 可以访问一个 Loki 服务器实例

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 Simple Loki MCP 服务器:

npx -y @smithery/cli install @ghrud92/simple-loki-mcp --client claude

对于 MCP

{ "mcpServers": { "simple-loki": { "command": "npx", "args": ["-y", "simple-loki-mcp"], "env": { "LOKI_ADDR": "https://loki.sup.band" } } } }

npm

  1. 克隆仓库:
git clone https://github.com/ghrud92/loki-mcp.git cd loki-mcp
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

可用的 MCP 工具

query-loki

从 Loki 查询带有过滤选项的日志。

参数:

  • query(必需):Loki 查询字符串(LogQL)
  • from:开始时间戳(例如 "2023-01-01T12:00:00Z")
  • to:结束时间戳(例如 "2023-01-01T13:00:00Z")
  • limit:返回的最大日志数量
  • batch:查询结果的批次大小
  • output:输出格式("default"、"raw" 或 "jsonl")
  • quiet:抑制查询元数据
  • forward:按时间顺序显示结果

get-label-values

检索特定标签的所有值。

参数:

  • label(必需):要获取值的标签名称

get-labels

检索所有可用标签。

不需要参数。

配置

您可以使用以下方式配置 Loki 访问:

环境变量

  • LOKI_ADDR:Loki 服务器地址(URL)
  • LOKI_USERNAME:基本身份验证用户名
  • LOKI_PASSWORD:基本身份验证密码
  • LOKI_TENANT_ID:多租户 Loki 的租户 ID
  • LOKI_BEARER_TOKEN:用于身份验证的承载令牌
  • LOKI_BEARER_TOKEN_FILE:包含承载令牌的文件
  • LOKI_CA_FILE:用于 TLS 的自定义 CA 文件
  • LOKI_CERT_FILE:用于 TLS 的客户端证书文件
  • LOKI_KEY_FILE:用于 TLS 的客户端密钥文件
  • LOKI_ORG_ID:多组织设置的组织 ID
  • LOKI_TLS_SKIP_VERIFY:跳过 TLS 验证("true" 或 "false")
  • LOKI_CONFIG_PATH:配置文件的自定义路径
  • DEBUG:启用调试日志

配置文件

或者,在以下位置之一创建一个 logcli-config.yaml 文件:

  • LOKI_CONFIG_PATH 指定的自定义路径
  • 当前工作目录
  • 您的主目录 (~/.logcli-config.yaml)

示例配置文件:

addr: https://loki.example.com username: user password: pass tenant_id: mytenant

使用

启动服务器:

npm start

开发时使用:

npm run dev

开发

# Run linter npm run lint # Fix linting issues npm run lint:fix # Run tests npm run test

许可证

本项目采用 MIT 许可证进行授权 - 详情请参阅 LICENSE.md 文件。

服务配置

[{'mcpServers': {'simple-loki': {'args': ['-y', 'simple-loki-mcp'], 'command': 'npx', 'env': {'LOKI_ADDR': 'https://loki.sup.band'}}}}]

来源