MCP ExplorerExplorer

OpenCTI

@Spathodea-Networkon 13 days ago
14 MIT
FreeCommunity
Knowledge Base
#OpenCTI#Threat Intelligence
Interact with OpenCTI platform to retrieve threat intelligence data including reports, indicators, malware and threat actors.

Overview

What is OpenCTI

OpenCTI MCP Server is a Model Context Protocol server designed for integration with the Open Cyber Threat Intelligence platform. It offers a standardized interface for querying and retrieving threat intelligence data.

Use cases

The server is used for fetching threat intelligence data, managing users and groups, performing operations on STIX objects, and accessing system management functionalities. It serves security professionals needing comprehensive insights into threats, malware, and threat actors.

How to use

To use the OpenCTI MCP Server, install it via Smithery or manually by cloning the repository, installing dependencies, and building the project. Configure it with OpenCTI credentials and set up the MCP settings for integration.

Key features

Key features include fetching threat intelligence reports, searching for malware and indicators of compromise, user and group management, operations on STIX objects, system management utilities, and file operations. It supports customizable query limits and full GraphQL queries.

Where to use

Use the OpenCTI MCP Server in security operations centers, threat intelligence platforms, and cybersecurity teams that leverage the OpenCTI platform for insight into cyber threats and to enhance their incident response capabilities.

Content

OpenCTI MCP Server

smithery badge
Traditional Chinese (繁體中文)

OpenCTI Server MCP server

Overview

OpenCTI MCP Server is a Model Context Protocol (MCP) server that provides seamless integration with OpenCTI (Open Cyber Threat Intelligence) platform. It enables querying and retrieving threat intelligence data through a standardized interface.

Features

  • Fetch and search threat intelligence data
    • Get latest reports and search by ID
    • Search for malware information
    • Query indicators of compromise
    • Search for threat actors
  • User and group management
    • List all users and groups
    • Get user details by ID
  • STIX object operations
    • List attack patterns
    • Get campaign information by name
  • System management
    • List connectors
    • View status templates
  • File operations
    • List all files
    • Get file details by ID
  • Reference data access
    • List marking definitions
    • View available labels
  • Customizable query limits
  • Full GraphQL query support

Prerequisites

  • Node.js 16 or higher
  • Access to an OpenCTI instance
  • OpenCTI API token

Installation

Installing via Smithery

To install OpenCTI Server for Claude Desktop automatically via Smithery:

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

Manual Installation

# Clone the repository
git clone https://github.com/yourusername/opencti-mcp-server.git

# Install dependencies
cd opencti-mcp-server
npm install

# Build the project
npm run build

Configuration

Environment Variables

Copy .env.example to .env and update with your OpenCTI credentials:

cp .env.example .env

Required environment variables:

  • OPENCTI_URL: Your OpenCTI instance URL
  • OPENCTI_TOKEN: Your OpenCTI API token

MCP Settings

Create a configuration file in your MCP settings location:

Security Notes

  • Never commit .env file or API tokens to version control
  • Keep your OpenCTI credentials secure
  • The .gitignore file is configured to exclude sensitive files

Available Tools

Available Tools

Reports

get_latest_reports

Retrieves the most recent threat intelligence reports.

{
  "name": "get_latest_reports",
  "arguments": {
    "first": 10  // Optional, defaults to 10
  }
}

get_report_by_id

Retrieves a specific report by its ID.

{
  "name": "get_report_by_id",
  "arguments": {
    "id": "report-uuid"  // Required
  }
}

Search Operations

search_malware

Searches for malware information in the OpenCTI database.

{
  "name": "search_malware",
  "arguments": {
    "query": "ransomware",
    "first": 10  // Optional, defaults to 10
  }
}

search_indicators

Searches for indicators of compromise.

{
  "name": "search_indicators",
  "arguments": {
    "query": "domain",
    "first": 10  // Optional, defaults to 10
  }
}

search_threat_actors

Searches for threat actor information.

{
  "name": "search_threat_actors",
  "arguments": {
    "query": "APT",
    "first": 10  // Optional, defaults to 10
  }
}

User Management

get_user_by_id

Retrieves user information by ID.

{
  "name": "get_user_by_id",
  "arguments": {
    "id": "user-uuid"  // Required
  }
}

list_users

Lists all users in the system.

{
  "name": "list_users",
  "arguments": {}
}

list_groups

Lists all groups with their members.

{
  "name": "list_groups",
  "arguments": {
    "first": 10  // Optional, defaults to 10
  }
}

STIX Objects

list_attack_patterns

Lists all attack patterns in the system.

{
  "name": "list_attack_patterns",
  "arguments": {
    "first": 10  // Optional, defaults to 10
  }
}

get_campaign_by_name

Retrieves campaign information by name.

{
  "name": "get_campaign_by_name",
  "arguments": {
    "name": "campaign-name"  // Required
  }
}

System Management

list_connectors

Lists all system connectors.

{
  "name": "list_connectors",
  "arguments": {}
}

list_status_templates

Lists all status templates.

{
  "name": "list_status_templates",
  "arguments": {}
}

File Operations

get_file_by_id

Retrieves file information by ID.

{
  "name": "get_file_by_id",
  "arguments": {
    "id": "file-uuid"  // Required
  }
}

list_files

Lists all files in the system.

{
  "name": "list_files",
  "arguments": {}
}

Reference Data

list_marking_definitions

Lists all marking definitions.

{
  "name": "list_marking_definitions",
  "arguments": {}
}

list_labels

Lists all available labels.

{
  "name": "list_labels",
  "arguments": {}
}

Contributing

Contributions are welcome! Please feel free to submit pull requests.

License

MIT License

Tools

get_latest_reports
獲取最新的OpenCTI報告
get_report_by_id
根據ID獲取OpenCTI報告
search_indicators
搜尋OpenCTI中的指標
search_malware
搜尋OpenCTI中的惡意程式
search_threat_actors
搜尋OpenCTI中的威脅行為者
get_user_by_id
根據ID獲取使用者資訊
list_users
列出所有使用者
list_groups
列出所有群組
list_attack_patterns
列出所有攻擊模式
get_campaign_by_name
根據名稱獲取行動資訊
list_connectors
列出所有連接器
list_status_templates
列出所有狀態模板
get_file_by_id
根據ID獲取檔案資訊
list_files
列出所有檔案
list_marking_definitions
列出所有標記定義
list_labels
列出所有標籤

Comments