NebulaFinger MCP
Uma interface de servidor MCP para a ferramenta de reconhecimento de impressões digitais NebulaFinger.
Documentação
Guia de Configuração do NebulaFinger MCP
Nota sobre a relação do projeto: Este módulo MCP é a implementação da interface de agente de IA da ferramenta de identificação de impressões digitais NebulaFinger. A implementação MCP independente completa pode ser encontrada em MCP-NebulaFinger. Esta interface permite que modelos de linguagem de grande porte chamem diretamente o NebulaFinger para identificação de impressões digitais de serviços e da web.
📋 Pré-requisitos
- Python 3.8+ instalado
- Ferramenta NebulaFinger.exe compilada ou baixada
- Biblioteca FastMCP instalada
Nota sobre suporte multiplataforma: Embora a documentação faça referência ao NebulaFinger.exe (executável do Windows), a ferramenta NebulaFinger pode ser compilada de acordo com o sistema operacional do seu ambiente. Em sistemas Linux/macOS, você pode compilar a partir do código-fonte para gerar um executável sem extensão.
🛠️ Etapas de instalação
1. Instalar dependências
pip install fastmcp
2. Estrutura do projeto
Certifique-se de que a estrutura do seu projeto seja a seguinte:
NebulaFinger/
├── NebulaFinger.exe # 主程序
├── configs/ # 配置目录
│ ├── web_fingerprint_v4.json
│ ├── service_fingerprint_v4.json
│ ├── fingerprint_weights.json
│ └── tcp_ports.json
├── MCP/ # MCP 服务目录
│ └── mcp_server.py # MCP 服务端脚本
└── README.md
3. Configurar o cliente MCP
Adicione a seguinte configuração ao arquivo de configuração do seu cliente MCP (recomenda-se salvar um arquivo NebulaFinger separado, com o caminho absoluto na configuração):
{
"mcpServers": {
"nebulafinger_mcp": {
"isActive": true,
"name": "nebulafinger_mcp",
"type": "stdio",
"command": "python",
"args": [
"D:\\NebulaFinger\\MCP\\mcp_server.py"
],
"env": {
"NEBULAFINGER_PATH": "D:\\NebulaFinger"
}
}
}
}
Notas importantes:
- Substitua o caminho pelo seu caminho absoluto real
- A variável de ambiente
NEBULAFINGER_PATHaponta para o diretório raiz da ferramenta NebulaFinger

🔧 Funções de ferramentas disponíveis
O servidor MCP fornece as seguintes funções de ferramentas:
1. scan_target - Escanear um único alvo
参数:
- target: 要扫描的目标 (例如: example.com 或 http://example.com)
- mode: 扫描模式 ("web", "service", "all"),默认 "web"
- concurrent: 并发数,默认 5
- output_html: 是否生成HTML报告,默认 False
- silent: 静默模式,默认 False
- no_favicon: 禁用Favicon检测,默认 False
- bp_stat: 只输出有指纹匹配的结果,默认 False
2. scan_targets_from_list - Escanear uma lista de alvos
参数:
- targets: 要扫描的目标列表 (字符串数组)
- 其他参数与 scan_target 相同
3. scan_targets_from_file - Escanear a partir de arquivo
参数:
- file_path: 包含目标列表的文件路径
- 其他参数与 scan_target 相同
4. get_help - Obter informações de ajuda
Obtém as informações completas de ajuda da ferramenta NebulaFinger
5. get_version - Obter informações de versão
Obtém a versão da ferramenta e informações básicas
6. check_status - Verificar status
Verifica o status da ferramenta e dos arquivos de configuração
💡 Exemplos de uso
No cliente MCP (usando Cherry Studio+qwen-plus como exemplo), você pode usar da seguinte forma:
Identificação de impressão digital única
(请使用 NebulaFinger) 扫描 www.baidu.com 的 web 指纹

Identificação de impressões digitais de múltiplos alvos
使用 NebulaFinger 扫描以下网站的指纹www.baidu.com、www.github.com

Ler arquivo para identificação de impressões digitais
读取文件D:\学习计划进度\GO\NebulaFinger\url_small.txt,并依次进行指纹识别,并生成结果html

🐛 Solução de problemas
1. NebulaFinger.exe não encontrado
- Certifique-se de que a variável de ambiente
NEBULAFINGER_PATHesteja configurada corretamente - Ou especifique o caminho correto nos argumentos da linha de comando
- Verifique se o arquivo existe e tem permissão de execução
2. Arquivo de configuração não encontrado
- Certifique-se de que o diretório configs exista
- Verifique se os arquivos da biblioteca de impressões digitais estão completos
- Valide se o caminho do arquivo está correto (use caminho absoluto)
3. Problemas de codificação
- Certifique-se de que todos os arquivos usem codificação UTF-8
- Verifique as configurações regionais do sistema
4. Problemas de permissão
- Certifique-se de que o processo Python tenha permissão para acessar o NebulaFinger.exe
- Verifique as permissões de leitura e gravação de arquivos e diretórios
📝 Depuração de logs
O servidor gera informações detalhadas de log, incluindo:
- Verificação do caminho da ferramenta
- Processo de execução de comandos
- Mensagens de erro
Se encontrar problemas, consulte as informações de log no console para depuração.
🔄 Atualização e manutenção
- Atualizar a biblioteca de impressões digitais: Substitua diretamente os arquivos da biblioteca de impressões digitais no diretório configs
- Atualizar a ferramenta: Substitua o arquivo NebulaFinger.exe
- Atualizar o serviço MCP: Modifique o arquivo mcp_server.py e reinicie o cliente MCP