Token导航 LogoToken导航TokenDH.com
Journald MCP Server logo
运维云端stdio官方级别未说明来源级核验

Journald MCP Server

MCP Server

Journald MCP Server 是一个用于访问和查询 systemd 日志的服务,支持按时间范围、系统单元、syslog 标识符和消息内容进行过滤,并提供自然语言日期时间解析功能。

工具数

2

提示词数

0

GitHub Stars

1

资源数

0
日志分析Python云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

james116blue

提供方

james116blue

最后核验

2026/5/17 20:38

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run server.py [OPTIONS]

详细介绍

日志MCP服务器

用于访问systemd日志的MCP服务器。

特性

  • 从日志中列出systemd单位
  • 从日志中列出syslog标识符
  • 获取第一条日记账分录的日期时间
  • 按日期时间范围(从/到)筛选日记条目
  • 按systemd单元或syslog标识符筛选
  • 按消息内容筛选(不区分大小写的子字符串匹配)
  • 自然语言日期时间解析(例如,“2小时前”、“昨天下午3点”)
  • 列出特定时间范围内的单位和标识符

安装

# Install dependencies
uv sync

用法

以非root身份运行:授予用户systemd日志组访问权限 usermod -aG systemd-journal $USER

使用以下命令运行服务器:

uv run server.py [OPTIONS]

CLI选项

  • --transport:要使用的传输协议(stdio, sse,或 streamable-http).违约: stdio
  • --port:用于侦听HTTP传输的端口(忽略 stdio 运输)。违约: 3002
  • --log-level:日志记录级别(DEBUG, INFO, WARNING, ERROR, CRITICAL).违约: INFO

例子

  1. 使用stdio传输运行(默认情况下,对于通过stdin/stdout通信的MCP客户端):
   python server.py
  1. 在自定义端口上使用HTTP传输运行:
   python server.py --transport streamable-http --port 8080
  1. 使用SSE传输运行:
   python server.py --transport sse --port 3000
  1. 运行调试日志:
   python server.py --log-level DEBUG

MCP集成

服务器提供以下MCP资源和工具:

资源

  • journal://units:列出日记日志中的唯一systemd单位(所有可访问时间)
  • journal://syslog-identifiers:列出日志日志中的唯一syslog标识符(所有可访问时间)
  • journal://first-entry-datetime:获取日记中第一条记录的日期时间
  • journal://units/{since}/{until}:列出指定时间范围内的唯一systemd单位
  • journal://syslog-identifiers/{since}/{until}:列出指定时间范围内的唯一syslog标识符

工具

  • get_journal_entries:获取具有日期时间过滤的日记条目

- 参数: since (可选), until (可选), unit (可选), identifier (可选), message_contains (可选), limit (默认值:100) - 返回:包含时间戳、单位、标识符和消息的条目列表 - 示例:获取过去2小时包含“错误”的日志: since="2 hours ago", message_contains="error"

  • get_recent_logs:获取最近N分钟的日志

- 参数: minutes (默认值:60), unit (可选), limit (默认值:50) - 返回:最近日志消息的格式化字符串

日期时间输入格式

服务器通过以下方式使用自然语言日期时间解析 dateparser 图书馆。支持的格式包括:

  • 相对时间:“2小时前”、“昨天下午3点”、“上周”、“现在”
  • 绝对时间:“2024-01-15 14:30”,“2024-01-15T14:30:00”
  • 混合:“今天上午9点”,“明天下午3点”

所有时间都被解释为UTC,并以人类可读的格式返回:“YYYY-MM-DD HH:MM:SS UTC”

发展

本项目使用:

  • Python 3.12+
  • 主控程序 FastMCP
  • 用于日志访问的systemd-python
  • 单击以查看CLI界面
  • 用于自然语言日期时间解析的dateparser

项目结构

journald-mcp-server/
├── journald_mcp_server/     # Main package
│   ├── __init__.py
│   ├── server.py           # MCP server implementation
│   └── datetime_utils.py   # Datetime parsing and formatting utilities
├── tests/                  # Test suite
│   ├── __init__.py
│   └── test_server.py
├── server.py              # Entry point wrapper
├── pyproject.toml
└── README.md

运行测试

python -m pytest tests/

目录标签

目录标签

日志分析Python云端部署日志查询本地部署systemd时间范围过滤自然语言解析

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP