LuaN1aoAgent uses the Model Context Protocol (MCP) as its tool interface. All tools the executor can call — fromDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/SanMuzZzZz/LuaN1aoAgent/llms.txt
Use this file to discover all available pages before exploring further.
http_request to sqlmap_tool — are exposed through a single MCP server process defined in mcp.json.
Default configuration
The defaultmcp.json at the project root launches tools/mcp_service.py as a stdio MCP server:
mcp.json
mcp.server.fastmcp.FastMCP). The FASTMCP_NO_BANNER and FASTMCP_LOG_LEVEL environment variables suppress startup noise.
Built-in tools
All tools registered intools/mcp_service.py are available to the executor out of the box.
HTTP and network tools
HTTP and network tools
| Tool | Description |
|---|---|
http_request | Full-featured HTTP client with persistent session and cookie management. The preferred tool for all single web requests. |
concurrency_test | Sends up to 50 concurrent requests simultaneously for race condition and TOCTOU testing. |
start_payload_server | Starts a temporary HTTP server (ports 18000–18999) to serve RFI/XXE/SSRF callback payloads. |
stop_payload_server | Stops a payload server by its server_id. |
get_payload_server_logs | Returns request logs for a running payload server (useful for OOB confirmation). |
list_payload_servers | Lists all active payload servers. |
Execution tools
Execution tools
| Tool | Description |
|---|---|
shell_exec | Executes arbitrary shell commands asynchronously with real-time output. |
python_exec | Executes self-contained Python scripts in a sandboxed scope with session cookie inheritance. |
Vulnerability scanning tools
Vulnerability scanning tools
| Tool | Description |
|---|---|
sqlmap_tool | Runs sqlmap against a URL or raw HTTP request file. |
dirsearch_scan | Runs dirsearch for web directory and file enumeration. |
nuclei_scan | Runs Nuclei template-based vulnerability scans. |
nuclei_list_templates | Lists available Nuclei templates filtered by keyword, tag, or severity. |
Intelligence tools
Intelligence tools
| Tool | Description |
|---|---|
web_search | DuckDuckGo web search for vulnerability research and documentation. |
search_exploit | Queries NVD and Exploit-DB (via searchsploit) for CVEs and public PoCs. |
view_exploit | Reads exploit code from Exploit-DB by EDB-ID or local path. |
retrieve_knowledge | Semantic search against the local RAG knowledge base. |
distill_knowledge | Saves a newly learned technique to the permanent skill library. |
Metacognitive tools
Metacognitive tools
| Tool | Description |
|---|---|
think | Structured reasoning tool for deep analysis or identifying knowledge gaps. |
formulate_hypotheses | Systematically proposes new attack hypotheses when the executor is stuck. |
reflect_on_failure | Structured root-cause analysis after a tool failure. |
expert_analysis | Escalates a hard problem to an independent LLM expert call. |
complete_mission | Signals successful task completion and terminates the run. |
Adding custom tools
You can extend the tool layer in two ways.Option 1: Add tools to mcp_service.py
Register a new function with the @mcp.tool() decorator:
tools/mcp_service.py
Option 2: Add a separate MCP server in mcp.json
Add a new entry under mcpServers to run an additional MCP server alongside the built-in one:
mcp.json
Example integrations
- Metasploit RPC
- Nuclei (extended)
- Burp Suite API
tools/msf_mcp.py
mcp.json (addition)
Tool timeout configuration
All tool timeouts are controlled via environment variables. The executor enforces these limits and returns a timeout error to the LLM if a tool exceeds its budget..env
Environment variables that affect tool behavior
| Variable | Effect on tools |
|---|---|
SCENARIO_MODE=ctf | Disables large-scale scanning tools (nuclei_scan, dirsearch_scan, sqlmap_tool) to prevent noise in CTF environments. |
KNOWLEDGE_SERVICE_URL | Controls where retrieve_knowledge and distill_knowledge send requests. |
EXECUTOR_MAX_OUTPUT_LENGTH | Truncates tool stdout/stderr before it is sent back to the LLM. |
FastMCP framework
The tool layer is built on FastMCP, a high-level wrapper around the MCP server SDK. Key properties:- Tools are plain Python functions decorated with
@mcp.tool(). - Both
asyncand synchronous functions are supported. - The server communicates over
stdio(default) orsse. - The server instance is named
"LuaN1ao-mcp"inmcp_service.py. - Logs are written to
logs/mcp_service.log.