使用说明

项目简介

ThreatNews MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,专注于威胁情报的收集和分析。它提供工具来从网络源收集威胁信息,并提供 Prompt 模板,以便大型语言模型 (LLM) 可以分析这些信息。此服务器旨在作为 LLM 应用的后端,提供结构化的威胁情报数据和分析能力。

主要功能点

  • 威胁情报收集工具 (collect_threat_info): 允许用户指定日期范围,从预定义的网络源(antiycloud.com)抓取该时间段内的威胁情报信息。
  • 威胁情报分析 Prompt (analyze_threat): 提供一个预定义的 Prompt 模板,指导 LLM 对输入的威胁情报文本进行实体识别和关系抽取 (NER & RE),并基于预定义的实体和关系类型进行结构化分析。
  • 可扩展的工具和 Prompt 注册机制: 基于 'mcp-server' 库构建,易于添加新的工具和 Prompt,扩展服务器的功能。
  • 标准 MCP 协议支持: 通过 JSON-RPC 协议与 MCP 客户端通信,支持 Stdio 传输方式,方便集成到各种 MCP 客户端应用中。

安装步骤

  1. 克隆仓库: 首先将 GitHub 仓库 'https://github.com/xue20010808/ThreatNews' 克隆到本地。
  2. 安装 Python 依赖: 确保你的系统已安装 Python 环境。建议使用 'uv' 或 'pip' 管理 Python 包。在仓库根目录下,虽然没有 'requirements.txt' 文件,但根据代码内容,你需要安装 'mcp-server' 和 'requests' 库。可以使用以下命令安装:
    uv pip install mcp-server requests
    # 或者使用 pip
    pip install mcp-server requests

服务器配置

要将 ThreatNews MCP Server 集成到 MCP 客户端(例如 Cursor 或 Smithery),你需要配置客户端以连接到此服务器。以下是一个 'mcp.json' 配置示例,用于配置名为 "Threat_news" 的服务器连接:

{
  "mcpServers": {
    "Threat_news": {  // 服务器名称,可以自定义
      "command": "uv",   // 运行服务器的命令,这里假设你使用 uv
      "args": ["--directory", "/path/to/ThreatNews", "run", "mymcp.py"], // 命令参数,需要替换 "/path/to/ThreatNews" 为你克隆仓库的实际路径。"mymcp.py" 是服务器启动脚本
      "env": {}          // 环境变量,如果需要可以设置,此处为空
    }
  }
}

配置参数说明:

  • 'command': 指定用于启动 MCP 服务器的命令。示例中使用 'uv' 来运行 Python 脚本。如果你的环境没有 'uv',可以替换为 'python3' 或 'python' (取决于你的 Python 环境配置)。
  • 'args': 传递给 'command' 的参数列表。
    • '--directory': 用于设置脚本的运行目录,指向你克隆的 ThreatNews 仓库的路径。
    • '"run"': 'uv' 命令的子命令,用于运行 Python 脚本。
    • '"mymcp.py"': 指定实际的 MCP 服务器 Python 脚本文件。
  • 'env': 用于设置环境变量。如果服务器脚本需要访问 API 密钥或其他敏感信息,可以通过 'env' 字段进行配置。

基本使用方法

  1. 启动 MCP 服务器: 在终端中,导航到你的 ThreatNews 仓库目录,并根据你的 'mcp.json' 配置,使用相应的命令启动服务器。例如,如果 'mcp.json' 中 'command' 设置为 'uv',则客户端会自动调用 'uv --directory /path/to/ThreatNews run mymcp.py' 来启动服务器。
  2. 配置 MCP 客户端: 在你的 MCP 客户端(如 Cursor 或 Smithery)中,加载或配置 'mcp.json' 文件,客户端将读取配置并尝试连接到 ThreatNews MCP Server。
  3. 使用工具和 Prompt: 一旦客户端成功连接到服务器,你就可以在客户端中看到并使用 ThreatNews MCP Server 提供的 'collect_threat_info' 工具和 'analyze_threat' Prompt。根据客户端的具体操作方式,调用这些工具和 Prompt,实现威胁情报的收集和分析功能。

信息

分类

AI与计算