get_submission_status_summary
Retrieve detailed malware analysis results for a specific submission, including interpreted status and threat level assessment.
Instructions
Get submission details with interpreted status and threat level.
Args: uuid: Submission UUID
Returns: Submission details with human-readable status and threat level
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes |
Implementation Reference
- src/threatzone_mcp/server.py:178-199 (handler)The main FastMCP tool handler for get_submission_status_summary. Fetches submission data from the API and enhances it with human-readable status and threat level descriptions using helper functions interpret_status and interpret_threat_level.@app.tool async def get_submission_status_summary(uuid: str) -> Dict[str, Any]: """ Get submission details with interpreted status and threat level. Args: uuid: Submission UUID Returns: Submission details with human-readable status and threat level """ submission = await get_client().get(f"/public-api/get/submission/{uuid}") # Add interpreted values if available if 'status' in submission: submission['status_description'] = await interpret_status(submission['status']) if 'level' in submission: submission['threat_level_description'] = await interpret_threat_level(submission['level']) return submission
- src/threatzone_mcp/server.py:138-156 (helper)Helper function (also exposed as tool) that converts numeric submission status codes to human-readable strings. Used by the main handler.async def interpret_status(status_value: int) -> str: """ Interpret a numeric status value from submission results. Args: status_value: Numeric status value (1-5) Returns: Human-readable status description """ status_map = { 1: "File received", 2: "Submission is failed", 3: "Submission is running", 4: "Submission VM is ready", 5: "Submission is finished" } return status_map.get(status_value, f"Unknown status: {status_value}")
- src/threatzone_mcp/server.py:159-176 (helper)Helper function (also exposed as tool) that converts numeric threat levels to human-readable strings. Used by the main handler.async def interpret_threat_level(level_value: int) -> str: """ Interpret a numeric threat level value from analysis results. Args: level_value: Numeric threat level (0-3) Returns: Human-readable threat level description """ level_map = { 0: "Unknown", 1: "Informative", 2: "Suspicious", 3: "Malicious" } return level_map.get(level_value, f"Unknown level: {level_value}")