OpenCTI MCP Server
Integra-se com a plataforma OpenCTI para consultar e recuperar dados de inteligência de ameaças.
Documentação
OpenCTI MCP Server
Visão Geral
O OpenCTI MCP Server é um servidor Model Context Protocol (MCP) que fornece integração perfeita com a plataforma OpenCTI (Open Cyber Threat Intelligence). Ele permite consultar e recuperar dados de inteligência de ameaças por meio de uma interface padronizada.
Recursos
- Buscar e pesquisar dados de inteligência de ameaças
- Obter relatórios mais recentes e pesquisar por ID
- Pesquisar informações sobre malware
- Consultar indicadores de comprometimento
- Pesquisar atores de ameaças
- Gerenciamento de usuários e grupos
- Listar todos os usuários e grupos
- Obter detalhes do usuário por ID
- Operações de objetos STIX
- Listar padrões de ataque
- Obter informações de campanha por nome
- Gerenciamento do sistema
- Listar conectores
- Visualizar modelos de status
- Operações de arquivo
- Listar todos os arquivos
- Obter detalhes do arquivo por ID
- Acesso a dados de referência
- Listar definições de marcação
- Visualizar rótulos disponíveis
- Limites de consulta personalizáveis
- Suporte completo a consultas GraphQL
Pré-requisitos
- Node.js 16 ou superior
- Acesso a uma instância do OpenCTI
- Token da API do OpenCTI
Instalação
Instalação via Smithery
Para instalar o OpenCTI Server para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install opencti-server --client claude
Instalação Manual
# 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
Configuração
Variáveis de Ambiente
Copie .env.example para .env e atualize com suas credenciais do OpenCTI:
cp .env.example .env
Variáveis de ambiente obrigatórias:
OPENCTI_URL: URL da sua instância do OpenCTIOPENCTI_TOKEN: Token da API do OpenCTI
Configurações do MCP
Crie um arquivo de configuração no local das configurações do MCP:
{
"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
}
}
}
}
Notas de Segurança
- Nunca envie o arquivo
.envou tokens de API para o controle de versão - Mantenha suas credenciais do OpenCTI seguras
- O arquivo
.gitignoreestá configurado para excluir arquivos sensíveis
Ferramentas Disponíveis
Ferramentas Disponíveis
Relatórios
get_latest_reports
Recupera os relatórios de inteligência de ameaças mais recentes.
{
"name": "get_latest_reports",
"arguments": {
"first": 10 // Optional, defaults to 10
}
}
get_report_by_id
Recupera um relatório específico pelo seu ID.
{
"name": "get_report_by_id",
"arguments": {
"id": "report-uuid" // Required
}
}
Operações de Pesquisa
search_malware
Pesquisa informações sobre malware no banco de dados do OpenCTI.
{
"name": "search_malware",
"arguments": {
"query": "ransomware",
"first": 10 // Optional, defaults to 10
}
}
search_indicators
Pesquisa indicadores de comprometimento.
{
"name": "search_indicators",
"arguments": {
"query": "domain",
"first": 10 // Optional, defaults to 10
}
}
search_threat_actors
Pesquisa informações sobre atores de ameaças.
{
"name": "search_threat_actors",
"arguments": {
"query": "APT",
"first": 10 // Optional, defaults to 10
}
}
Gerenciamento de Usuários
get_user_by_id
Recupera informações do usuário por ID.
{
"name": "get_user_by_id",
"arguments": {
"id": "user-uuid" // Required
}
}
list_users
Lista todos os usuários do sistema.
{
"name": "list_users",
"arguments": {}
}
list_groups
Lista todos os grupos com seus membros.
{
"name": "list_groups",
"arguments": {
"first": 10 // Optional, defaults to 10
}
}
Objetos STIX
list_attack_patterns
Lista todos os padrões de ataque do sistema.
{
"name": "list_attack_patterns",
"arguments": {
"first": 10 // Optional, defaults to 10
}
}
get_campaign_by_name
Recupera informações de campanha por nome.
{
"name": "get_campaign_by_name",
"arguments": {
"name": "campaign-name" // Required
}
}
Gerenciamento do Sistema
list_connectors
Lista todos os conectores do sistema.
{
"name": "list_connectors",
"arguments": {}
}
list_status_templates
Lista todos os modelos de status.
{
"name": "list_status_templates",
"arguments": {}
}
Operações de Arquivo
get_file_by_id
Recupera informações do arquivo por ID.
{
"name": "get_file_by_id",
"arguments": {
"id": "file-uuid" // Required
}
}
list_files
Lista todos os arquivos do sistema.
{
"name": "list_files",
"arguments": {}
}
Dados de Referência
list_marking_definitions
Lista todas as definições de marcação.
{
"name": "list_marking_definitions",
"arguments": {}
}
list_labels
Lista todos os rótulos disponíveis.
{
"name": "list_labels",
"arguments": {}
}
Contribuição
Contribuições são bem-vindas! Sinta-se à vontade para enviar pull requests.
Licença
Licença MIT