{
  "info": {
    "name": "Virustotal — mcp.ai",
    "description": "REST API for the Virustotal MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/virustotal",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "virustotal_add_comment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/add/comment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "add",
            "comment"
          ]
        },
        "description": "Tool to add a comment to a VirusTotal resource (file, URL, domain, or IP address). Use after analyzing a resource to leave contextual feedback. Provide exactly one identifier per call.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"url\": \"\",\n  \"file\": \"\",\n  \"text\": \"\",\n  \"domain\": \"\",\n  \"ip_address\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_add_vote",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/add/vote",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "add",
            "vote"
          ]
        },
        "description": "Tool to add a vote (harmless/malicious) to a VirusTotal resource. Use after reviewing analysis results to submit your verdict.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"data\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_analysis",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/analysis",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "analysis"
          ]
        },
        "description": "Tool to retrieve the analysis report of a file or URL submission. Use after obtaining an analysis ID to fetch its detailed report. Analysis results may be incomplete immediately after submission; poll",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_comments",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/comments",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "comments"
          ]
        },
        "description": "Tool to retrieve the latest comments on a VirusTotal resource. Use when you need to review user-generated comments for a file, URL, domain, or IP after obtaining its identifier.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"sort\": \"\",\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"filter_resource\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_domain_relationships",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/domain/relationships",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "domain",
            "relationships"
          ]
        },
        "description": "Tool to retrieve relationship objects for a given domain. Use when you have a domain and need to explore its related entities.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"domain\": \"\",\n  \"relationship\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_domain_report",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/domain/report",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "domain",
            "report"
          ]
        },
        "description": "Tool to retrieve the analysis report of a domain. Use when you need detailed insight on a domain's reputation and analysis stats. No malicious signals on obscure or low-traffic domains may indicate li",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"domain\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_file_report",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/file/report",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "file",
            "report"
          ]
        },
        "description": "Tool to retrieve the analysis report of a file. Use when you have a file's hash and need detailed scan metadata. Recently submitted files may return partial results; retry after a short delay before t",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_ip_address_relationships",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/ip/address/relationships",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "ip",
            "address",
            "relationships"
          ]
        },
        "description": "Tool to retrieve objects related to a specific IP address by relationship type. Use when you have an IP and need to explore connected files, URLs, or other entities.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"ip\": \"\",\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"relationship\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_ip_address_report",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/ip/address/report",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "ip",
            "address",
            "report"
          ]
        },
        "description": "Tool to retrieve the analysis report of an IP address. Use when you need detailed insight on an IP's reputation, ASN, country, and analysis stats. Low or zero detections indicate unknown risk, not saf",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"ip\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_metadata",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/metadata",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "metadata"
          ]
        },
        "description": "Tool to retrieve VirusTotal metadata. Use when you need information about available privileges, relationships between resources (like files, domains, IPs, URLs), and supported antivirus engines.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_url_report",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/url/report",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "url",
            "report"
          ]
        },
        "description": "Tool to retrieve the analysis report of a URL. Use when you have a URL identifier (base64-url without padding) and need detailed scan results, reputation, and metadata. Results may be incomplete immed",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_get_votes",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/votes",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "votes"
          ]
        },
        "description": "Tool to retrieve votes on files, URLs, domains, or IP addresses. Use when you need to view community votes for a given object.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"object_id\": \"\",\n  \"object_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_rescan_file",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/rescan/file",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "rescan",
            "file"
          ]
        },
        "description": "Tool to re-analyze a previously submitted file. Use when you need updated analysis results after an initial scan.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_scan_url",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/scan/url",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "scan",
            "url"
          ]
        },
        "description": "Tool to submit a URL for scanning. Use when you have a URL and need to submit it to VirusTotal to obtain an analysis ID for later retrieval. The returned analysis ID is preliminary — scanning engines ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"url\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_search",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/search",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "search"
          ]
        },
        "description": "Tool to search for objects in the VirusTotal database. Use when locating files, URLs, domains, IPs, or comments matching a query. Supports pagination with limit and cursor.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"query\": \"\",\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "virustotal_upload_file",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/upload/file",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "upload",
            "file"
          ]
        },
        "description": "Tool to upload a file for scanning. Use when you have binary file content ready to submit for VirusTotal analysis.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"file\": \"\",\n  \"filename\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}