forked from AynOps/AynOps
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.py
More file actions
60 lines (55 loc) · 2.02 KB
/
Copy pathserver.py
File metadata and controls
60 lines (55 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
from fastmcp import FastMCP
from fastmcp.prompts import PromptResult
from tools.whois_tool import whois_lookup
from tools.dns_tool import dns_enumeration
from tools.portscan_tool import port_scan
from tools.ssl_tool import ssl_inspect
from tools.techstack_tool import tech_stack_detect
from tools.asn_tool import asn_lookup
from tools.fullrecon_tool import full_recon
from tools.cve_tool import cve_lookup
from tools.iprep_tool import ip_reputation
from tools.crt_sh_tool import cert_transparency
from tools.headers_tool import headers_analyzer
from tools.email_security_tool import email_security_check
from tools.redirect_tracer import trace_redirects
from tools.cloud_exposure_tool import cloud_exposure_check
from tools.robots_txt_tool import robots_txt_inspect
from tools.subdomain_takeover_tool import subdomain_takeover
from tools.hibp_tool import hibp_check
from tools.prompts.threat_analysis import THREAT_ANALYSIS_PROMPT
mcp = FastMCP("AynOps")
mcp.tool()(whois_lookup)
mcp.tool()(dns_enumeration)
mcp.tool()(port_scan)
mcp.tool()(ssl_inspect)
mcp.tool()(tech_stack_detect)
mcp.tool()(asn_lookup)
mcp.tool()(full_recon)
mcp.tool()(cve_lookup)
mcp.tool()(ip_reputation)
mcp.tool()(cert_transparency)
mcp.tool()(headers_analyzer)
mcp.tool()(email_security_check)
mcp.tool()(trace_redirects)
mcp.tool()(cloud_exposure_check)
mcp.tool()(robots_txt_inspect)
mcp.tool()(subdomain_takeover)
mcp.tool()(hibp_check)
@mcp.prompt(
name="threat_analysis",
description="Generate a structured cybersecurity threat analysis from AynOps full reconnaissance results.",
tags={"security", "analysis", "full_recon", "threat_intelligence"},
meta={"tool": "full_recon", "category": "security_analysis",}
)
def threat_analysis() -> PromptResult:
"""
Generate a threat analysis prompt for the `full_recon` tool.
"""
return PromptResult(
messages=THREAT_ANALYSIS_PROMPT,
description="Threat analysis prompt for AynOps full reconnaissance results.",
meta={"tool": "full_recon",}
)
if __name__ == "__main__":
mcp.run()