OpenCTI MCP Server

OpenCTI MCP Server

site icon
2025.01.30 9
TypeScript威胁情报网络安全其它
OpenCTI MCP Server 是一个模型上下文协议(MCP)服务器,专为与 OpenCTI(开放网络威胁情报)平台无缝集成而设计。它通过标准化接口提供查询和检索威胁情报数据的能力。该服务器支持多种功能,包括获取和搜索威胁情报数据、用户和组管理、STIX对象操作、系统管理、文件操作以及参考数据访问等。
View on GitHub

Overview

基本能力

产品定位

OpenCTI MCP Server 是一个专为 OpenCTI 平台设计的 MCP 服务器,旨在通过标准化接口提供威胁情报数据的查询和检索功能。

核心功能

  • 获取和搜索威胁情报数据
  • 获取最新报告和按ID搜索
  • 搜索恶意软件信息
  • 查询妥协指标
  • 搜索威胁行为者
  • 用户和组管理
  • 列出所有用户和组
  • 按ID获取用户详细信息
  • STIX对象操作
  • 列出攻击模式
  • 按名称获取活动信息
  • 系统管理
  • 列出连接器
  • 查看状态模板
  • 文件操作
  • 列出所有文件
  • 按ID获取文件详细信息
  • 参考数据访问
  • 列出标记定义
  • 查看可用标签
  • 可自定义查询限制
  • 完整的GraphQL查询支持

适用场景

  • 网络安全团队需要快速查询威胁情报数据
  • 开发人员需要集成威胁情报功能到现有系统
  • 研究人员需要分析恶意软件和威胁行为者

工具列表

报告

  • get_latest_reports: 检索最新的威胁情报报告
  • get_report_by_id: 按ID检索特定报告

搜索操作

  • search_malware: 在OpenCTI数据库中搜索恶意软件信息
  • search_indicators: 搜索妥协指标
  • search_threat_actors: 搜索威胁行为者信息

用户管理

  • get_user_by_id: 按ID检索用户信息
  • list_users: 列出系统中的所有用户
  • list_groups: 列出所有组及其成员

STIX对象

  • list_attack_patterns: 列出系统中的所有攻击模式
  • get_campaign_by_name: 按名称检索活动信息

系统管理

  • list_connectors: 列出所有系统连接器
  • list_status_templates: 列出所有状态模板

文件操作

  • get_file_by_id: 按ID检索文件信息
  • list_files: 列出系统中的所有文件

参考数据

  • list_marking_definitions: 列出所有标记定义
  • list_labels: 列出所有可用标签

常见问题解答

  • 确保安装了 Node.js 16 或更高版本
  • 确保有 OpenCTI 实例的访问权限和 API 令牌
  • 不要将 .env 文件或 API 令牌提交到版本控制

使用教程

使用依赖

  • Node.js 16 或更高版本
  • OpenCTI 实例的访问权限
  • OpenCTI API 令牌

安装教程

通过 Smithery 安装

npx -y @smithery/cli install opencti-server --client claude

手动安装

git clone https://github.com/yourusername/opencti-mcp-server.git
cd opencti-mcp-server
npm install
npm run build

配置

环境变量

复制 .env.example.env 并更新 OpenCTI 凭据:

cp .env.example .env

必需的环境变量: - OPENCTI_URL: 您的 OpenCTI 实例 URL - OPENCTI_TOKEN: 您的 OpenCTI API 令牌

MCP 设置

在 MCP 设置位置创建配置文件:

{
  "mcpServers": {
    "opencti": {
      "command": "node",
      "args": ["path/to/opencti-server/build/index.js"],
      "env": {
        "OPENCTI_URL": "${OPENCTI_URL}",
        "OPENCTI_TOKEN": "${OPENCTI_TOKEN}"
      }
    }
  }
}

调试方式

  • 确保所有依赖项已正确安装
  • 检查环境变量是否正确设置
  • 运行服务器并测试基本查询功能

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。