VirusTotal MCP服务器
](https://smithery.ai/server/@emeryray2002/virustotal-mcp)
用于查询的模型上下文协议(MCP)服务器 病毒API总量该服务器提供全面的安全分析工具,具有自动关系数据获取功能。它与MCP兼容的应用程序无缝集成,如 克劳德桌面.
快速启动(待定)
通过Smithery安装
通过以下方式自动安装克劳德桌面版virustotal mcp 史密瑟里:
npx -y @smithery/cli install @emeryray2002/virustotal-mcp --client claude手动安装
待定
特性
- 综合分析报告:每个分析工具都会自动获取相关关系数据以及基本报告,在单个请求中提供完整的安全概述
- URL分析:自动获取联系域、下载文件和威胁行为者的安全报告
- 文件分析:文件哈希的详细分析,包括行为、丢弃的文件和网络连接
- IP分析:包含历史数据、解决方案和相关威胁的安全报告
- 领域分析:DNS信息、WHOIS数据、SSL证书和子域
- 详细关系分析:用于查询具有分页支持的特定类型关系的专用工具
- 高级搜索:针对整个VirusTotal数据集的复杂查询的VT Intelligence搜索功能
- 丰富的格式:对分析结果和关系数据进行清晰的分类和呈现
工具
报告工具(带自动关系获取)
1.URL报告工具
- 姓名:
get_url_report - 描述:获取一份全面的URL分析报告,包括安全扫描结果和关键关系(通信文件、联系的域/IP、下载的文件、重定向、威胁行为者)
- 参数:
- url (必填):要分析的URL
- 例子:
await get_url_report(url="http://example.com/suspicious")2.文件报告工具
- 姓名:
get_file_report - 说明:使用其哈希值(MD5/SHA-1/SHA-256)获取全面的文件分析报告。包括检测结果、文件属性和关键关系(行为、丢失的文件、网络连接、嵌入式内容、威胁参与者)
- 参数:
- hash (必填):文件的MD5、SHA-1或SHA-256哈希值
- 例子:
await get_file_report(hash="44d88612fea8a8f36de82e1278abb02f")3.IP报告工具
- 姓名:
get_ip_report - 描述:获取一份全面的IP地址分析报告,包括地理位置、信誉数据和关键关系(通信文件、历史证书/WHOIS、决议)
- 参数:
- ip (必填):要分析的IP地址
- 例子:
await get_ip_report(ip="8.8.8.8")4.域报告工具
- 姓名:
get_domain_report - 描述:获取一份全面的域分析报告,包括DNS记录、WHOIS数据和密钥关系(SSL证书、子域、历史数据)
- 参数:
- domain (必填):要分析的域名
- 例子:
await get_domain_report(domain="example.com")关系工具(用于详细分析)
1.URL关系工具
- 姓名:
get_url_relationship - 描述:查询具有分页支持的URL的特定关系类型
- 参数:
- url (必填):获取关系的URL - relationship (必填):要查询的关系类型 - 可用关系:分析、评论、通信文件、联系域、联系ips、下载文件、图表、last_serving_ip-address、network_location、引用文件、引用资源、重定向资源、重定向至、相关评论、相关引用、相关三个角色、提交 - limit (可选,默认值:10):要检索的相关对象的最大数量(1-40) - cursor (可选):用于分页的连续光标
- 例子:
await get_url_relationship(
url="http://example.com/suspicious",
relationship="communicating_files",
limit=20
)2.文件关系工具
- 姓名:
get_file_relationship - 说明:查询具有分页支持的文件的特定关系类型
- 参数:
- hash (必填):文件的MD5、SHA-1或SHA-256哈希值 - relationship (必填):要查询的关系类型 - 可用关系:分析、行为、捆绑文件、carbonblack_children、carbonblack_parents、加密_捆绑文件、加密_父母、线索、集合、评论、压缩_父母、联系域、联系ips、联系url、丢弃文件、电子邮件附件、电子邮件租金、嵌入域、嵌入ip、嵌入rls、执行租金、图表、itw_domains、itw_ips、itwurls、memory_pattern_domains、memory-pattern_ips、memory \_pattern_urls、overlay_children和overlay_parents,pcap_children,pcap_prents,pe_resource_children,pe_reource_parents,related_references,related threat_actors,similar file,提交,截图,url for embedded js,投票 - limit (可选,默认值:10):要检索的相关对象的最大数量(1-40) - cursor (可选):用于分页的连续光标
- 例子:
await get_file_relationship(
hash="44d88612fea8a8f36de82e1278abb02f",
relationship="behaviours",
limit=20
)3.IP关系工具
- 姓名:
get_ip_relationship - 说明:查询具有分页支持的IP地址的特定关系类型
- 参数:
- ip (必填):要分析的IP地址 - relationship (必填):要查询的关系类型 - 可用关系:注释、通信文件、下载文件、图形、历史\_ ssl_证书、历史\_ whois、related_comments、related_references、related_threat_actors、引用文件、分辨率、url - limit (可选,默认值:10):要检索的相关对象的最大数量(1-40) - cursor (可选):用于分页的连续光标
- 例子:
await get_ip_relationship(
ip="8.8.8.8",
relationship="communicating_files",
limit=20
)4.领域关系工具
- 姓名:
get_domain_relationship - 描述:查询具有分页支持的域的特定关系类型
- 参数:
- domain (必填):要分析的域名 - relationship (必填):要查询的关系类型 - 可用关系:caa_records、cname_records、注释、通信_files、下载_files、historical_slsl_certificates、historical whois、immediate_parent、mx_crecords、ns_records,parent、referrer_files、related_comments、related_references、related_threat_actors、resolution、soa_records,同级、子域、url、user_votes - limit (可选,默认值:10):要检索的相关对象的最大数量(1-40) - cursor (可选):用于分页的连续光标
- 例子:
await get_domain_relationship(
domain="example.com",
relationship="historical_ssl_certificates",
limit=20
)5.高级搜索工具
- 姓名:
advanced_corpus_search - 描述:使用VT Intelligence查询语法在VirusTotal数据集中执行高级搜索
- 参数:
- query (必填):VT Intelligence搜索查询字符串 - limit (可选,默认值:20):每页返回的最大结果数 - cursor (可选):用于分页的连续光标 - descriptors_only (可选):如果为true,则仅检索对象描述符而不是完整对象
- 例子:
await advanced_corpus_search(
query="type:peexe size:100kb+ positives:5+",
limit=20,
cursor=None
)需求
- Python>=3.11
- A有效 病毒API总密钥
- 所需的Python包:
- 目标 >= 3.9.0 - mcp\[cli\]>=1.4.1 - python dotenv>=1.0.0 - 键入扩展名>=4.8.0
错误处理
该服务器包括全面的错误处理功能,用于:
- API密钥无效
- 速率限制
- 网络错误
- 输入参数无效
- 哈希格式无效
- IP格式无效
- URL格式无效
- 关系类型无效
- 分页错误
发展
要在开发模式下运行:
python -m virustotal_mcp贡献
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据Apache许可证2.0获得许可-请参阅 许可证 文件以获取详细信息。
致谢
- VirusTotal用于提供API和威胁情报平台
- 服务器框架的MCP项目
- 贡献者和维护者
支持
如需支持,请:
- 检查文档
- 搜索现有问题
- 如果需要,创建新问题
安全
- 永远不要提交API密钥或敏感凭据
- 使用环境变量进行配置
- 处理威胁情报数据时遵循安全最佳实践
