Skip to main content
Glama
threat-zone

Threat.Zone MCP Server

by threat-zone

get_submission_status_summary

Retrieve detailed analysis results for malware submissions, including interpreted status and threat level assessment, to monitor security threats.

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
NameRequiredDescriptionDefault
uuidYes

Implementation Reference

  • The handler function for the 'get_submission_status_summary' tool. It retrieves submission details from the ThreatZone API and enriches the response with human-readable interpretations of the status and threat level 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
  • Helper tool that converts numeric status codes to human-readable descriptions. Called by get_submission_status_summary to enrich the API response.
    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}")
  • Helper tool that converts numeric threat levels to human-readable descriptions. Called by get_submission_status_summary to enrich the API response.
    @app.tool
    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}")
  • The @app.tool decorator registers the get_submission_status_summary function as an MCP tool in the FastMCP server.
    @app.tool

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/threat-zone/threatzonemcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server