What is OpenCTI MCP Server for querying threat intelligence data.?
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, supporting various operations such as fetching reports, searching malware, and managing users.
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
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:
{
"mcpServers": {
"opencti": {
"command": "node",
"args": ["path/to/opencti-server/build/index.js"],
"env": {
"OPENCTI_URL": "${OPENCTI_URL}", // Will be loaded from .env
"OPENCTI_TOKEN": "${OPENCTI_TOKEN}" // Will be loaded from .env
}
}
}
}
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.