系统信息MCP服务器

一个基于Java的模型上下文协议(MCP)服务器实现,为AI助手提供系统信息工具,通过Spring Boot应用和Spring AI集成暴露进程管理能力。

  • by asahasrabuddhe
  • Java
  • 本地部署
  • 更新于
在 GitHub 查看 asahasrabuddhe/mcp-sysinfo-java

使用说明

SysInfo Java MCP服务器

Java中的模型上下文协议(MCP)服务器实现,为AI助手提供系统信息工具。此服务器通过与Spring AI集成的Spring Boot应用程序公开流程管理功能。

特性

  • 流程列表:列出所有支持分页的运行进程
  • 过程检查:通过PID对特定过程进行详细检查
  • MCP服务器:与MCP客户端和AI助手兼容

先决条件

  • Java 21或更高版本
  • Gradle 8.x(或使用附带的Gradle包装)

安装

  1. 克隆存储库:

    git clone https://github.com/asahasrabuddhe/mcp-sysinfo-java.git
    cd sysinfo-java
    
  2. 构建项目:

    ./gradlew build
    

用法

运行服务器

启动MCP服务器:

./gradlew bootRun

服务器将启动并准备接受MCP工具请求。

可用工具

1.列出流程

列出所有支持分页的正在运行的进程。

2.检查流程

通过进程ID(PID)检查特定进程。

配置

应用程序可以通过以下方式配置 src/main/resources/application.properties:

spring.application.name=sysinfo-java
spring.main.bannerMode=off
logging.level.root=OFF
logging.pattern.console=%msg%n

建筑分布

./gradlew build

构建的JAR将在 build/libs/.

依赖项

  • 弹簧靴3.5.3:核心框架
  • Spring AI MCP服务器1.0.0:MCP服务器实现
  • 杰克逊2.17.1:JSON处理
  • JUnit5:测试框架

技术细节

MCP集成

该服务器使用Spring AI的MCP服务器功能实现了模型上下文协议(MCP)。工具通过 @Tool 注释并自动注册到MCP服务器。

流程管理

服务器使用Java ProcessHandle API与系统流程交互,提供:

  • 安全过程枚举
  • 流程元数据提取
  • 跨平台兼容性

安全考虑

  • 服务器仅提供对进程信息的只读访问
  • 没有暴露过程控制能力(启动/停止/终止)
  • 进程信息仅限于通过标准Java API提供的信息