软件生命周期检查服务

一个通过Model Context Protocol (MCP)服务器连接endoflife.date API,实时检查软件生命周期状态、安全漏洞并提供升级建议的服务。

  • by ducthinh993
  • JavaScript
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 ducthinh993/mcp-server-endoflife

使用说明

EOL MCP服务器📅

模型上下文协议(MCP)服务器,使Claude等人工智能助手能够使用endoflife.date API检查软件寿命终止(EOL)日期和支持状态。这有助于人工智能模型实时提供有关软件生命周期和安全状态的准确信息。

什么是MCP? 🤔

模型上下文协议(MCP)是一个允许人工智能应用程序(如Claude Desktop)连接到外部工具和数据源的系统。它为AI助手提供了一种标准化的方式来使用本地服务和API,同时让用户保持控制。

这个服务器做什么? 🚀

EOL MCP服务器:

  • 检查软件寿命终止日期和支持状态
  • 扫描软件版本中的CVE漏洞
  • 提供版本比较和升级建议
  • 支持关于软件生命周期的自然语言查询
  • 处理多种软件产品(Python、Node.js、Ubuntu等)
  • 缓存最近的查询以供快速参考

特性✨

核心功能

  • 实时EOL日期验证
  • 版本支持状态检查
  • 安全脆弱性分析
  • 全面版本比较
  • 自然语言查询处理
  • 详细的生命周期验证

工具

  1. check_version

    • 获取EOL日期和支持状态
    • 检查最新补丁版本
    • 验证LTS状态
    • 验证支持时间表
  2. get_all_details 新

    • 获取全面的生命周期详细信息
    • 查看所有版本周期
    • 检查支持时间表
    • 获取验证结果
    • 计算剩余支持天数
  3. compare_versions

    • 比较当前版本与最新版本
    • 获取升级建议
    • 检查兼容性
    • 评估升级的紧迫性
    • 验证升级路径
  4. check_cve

    • 安全漏洞扫描
    • 支持状态验证
    • 安全补丁验证
    • 供应商支持检查
  5. list_products

    • 浏览可用软件
    • 使用筛选器搜索
    • 验证产品名称
    • 获取产品详细信息

鼓励

  1. check_software_status

    • 验证版本支持
    • 检查EOL日期
    • 获取安全状态
  2. compare_versions

    • 分析版本差异
    • 获取升级建议
    • 检查兼容性
  3. analyze_security

    • 安全脆弱性分析
    • 支持状态检查
    • 补丁验证
  4. natural_language_query

    • 处理自然语言问题
    • 获取上下文响应
    • 智能版本检测
  5. validate_version

    • 验证版本建议
    • 检查支持状态
    • 验证安全影响

响应示例

版本验证

{
  "current_date": "2024-02-20T00:00:00.000Z",
  "validations": {
    "current": {
      "version": "1.20",
      "eol_check": {
        "date": "2024-02-06",
        "valid": false,
        "days_remaining": -14,
        "message": "Version 1.20 EOL date 2024-02-06 is invalid, -14 days from now"
      },
      "support": {
        "status": "not supported",
        "lts": "not LTS"
      }
    }
  },
  "recommendation": {
    "needs_update": true,
    "urgency": "critical",
    "message": "Current version needs urgent upgrade - use a supported version"
  }
}

所有详细信息响应(新!)

{
  "product": "go",
  "current_date": "2024-02-20T00:00:00.000Z",
  "cycles": [
    {
      "cycle": "1.22",
      "releaseDate": "2024-02-06",
      "eol": "2025-02-06",
      "latest": "1.22.0",
      "validation": {
        "is_valid": true,
        "days_to_eol": 351,
        "is_supported": true,
        "message": "Version 1.22 EOL date 2025-02-06 is valid, +351 days from now"
      }
    }
  ]
}

对话示例💬

  1. 基本版本检查:
Human: Is Python 3.8 still good to use?
Claude: Let me check the status of Python 3.8.
[Uses check_version tool]
Based on the EOL data, Python 3.8:
- Security support ends: October 2024
- Current status: Security fixes only
Recommendation: Consider upgrading to Python 3.11 for new projects.
  1. 安全分析:
Human: Any security concerns with Node.js 16?
Claude: I'll analyze the security status of Node.js 16.
[Uses check_version tool]
[Uses check_cve tool]
Found:
- Support Status: LTS until September 2023
- Critical CVEs: 2 in last 6 months
- CVSS Score Range: 7.5-9.8
Recommendation: Update to latest 16.x patch or consider Node.js 18 LTS.
  1. 版本比较:
Human: Which Ubuntu version should I use?
Claude: I'll help you compare Ubuntu versions.
[Uses version-comparison prompt]
Analysis:
- 22.04 LTS: Supported until 2027, recommended for new deployments
- 20.04 LTS: Supported until 2025, stable and widely used
- 18.04 LTS: Approaching EOL, plan migration
Recommendation: Use 22.04 LTS for best long-term support.

先决条件📋

在开始之前,请确保您已经:

您可以通过运行以下命令来验证您的Node.js安装:

node --version  # Should show v18.0.0 or higher

安装🛠️

  1. 克隆存储库:
git clone https://github.com/ducthinh993/mcp-server-endoflife
cd mcp-server-endoflife
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build
  1. 创建全局链接:
npm link

配置⚙️

1.克劳德桌面配置

配置Claude Desktop以识别EOL MCP服务器:

对于macOS:

code ~/Library/Application\ Support/Claude/claude_desktop_config.json

对于Windows:

code %APPDATA%\Claude\claude_desktop_config.json

添加EOL服务器配置:

{
  "mcpServers": {
    "eol": {
      "command": "npx",
      "args": ["/path/to/eol-mcp-server/build/index.js"]
    }
  }
}

2.重新启动克劳德桌面

要使更改生效,请执行以下操作:

  1. 完全退出Claude Desktop(不仅仅是关闭窗口)
  2. 重新启动克劳德桌面
  3. 寻找🔌 用于验证EOL服务器是否已连接的图标

故障排除🔧

常见问题

  1. 找不到服务器

    • 验证npm链接是否设置正确
    • 检查Claude Desktop配置语法
    • 确保Node.js安装正确
  2. API问题

    • 检查endoflife.date API是否可访问
    • 验证API响应格式是否未更改
    • 检查网络连接
  3. 连接问题

    • 完全重新启动克劳德桌面
    • 检查克劳德桌面日志:
      # macOS
      tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
      

获取帮助

如果您遇到问题:

致谢🙏