Megaraptor MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VELOCIRAPTOR_API_URL | No | The URL of the Velociraptor server (e.g., https://velociraptor.example.com:8001). | |
| VELOCIRAPTOR_CA_CERT | No | Path to the CA certificate or PEM content. | |
| VELOCIRAPTOR_CLIENT_KEY | No | Path to the client key or PEM content. | |
| VELOCIRAPTOR_CLIENT_CERT | No | Path to the client certificate or PEM content. | |
| VELOCIRAPTOR_CONFIG_PATH | No | Path to the generated API client config file (api_client.yaml). |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_clientsA | Search and list Velociraptor clients (endpoints). Args: search: Optional search query. Supports prefixes like 'label:' and 'host:'. Examples: 'label:production', 'host:workstation-01', 'windows' limit: Maximum number of clients to return (default 100) Returns: List of clients with their ID, hostname, OS, labels, and last seen time. |
| get_client_infoA | Get detailed information about a specific Velociraptor client. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') Returns: Detailed client information including hardware, OS, IP addresses. |
| label_clientA | Add or remove labels from a Velociraptor client. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') labels: List of label names to add or remove operation: Either 'add' or 'remove' (default: 'add') Returns: Updated client labels. |
| quarantine_clientA | Quarantine or unquarantine a Velociraptor client. Quarantining a client isolates it from the network while maintaining communication with the Velociraptor server. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') quarantine: True to quarantine, False to unquarantine (default: True) message: Optional message to include with the quarantine action Returns: Quarantine status of the client. |
| list_artifactsB | List available Velociraptor artifacts. Args: search: Optional search term to filter artifacts by name or description artifact_type: Optional type filter: 'CLIENT', 'SERVER', or 'NOTEBOOK' limit: Maximum number of artifacts to return (default 100) Returns: List of artifacts with their names, descriptions, and types. |
| get_artifactA | Get the full definition of a Velociraptor artifact. Args: artifact_name: The name of the artifact (e.g., 'Windows.System.Pslist') Returns: Complete artifact definition including parameters, sources, and VQL. |
| collect_artifactA | Schedule artifact collection on a Velociraptor client. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') artifacts: List of artifact names to collect parameters: Optional dict of parameters for the artifacts. Format: {"ArtifactName": {"param1": "value1"}} timeout: Query timeout in seconds (default 600) urgent: If True, prioritize this collection (default False) Returns: Flow ID for tracking the collection. |
| create_huntA | Create a new Velociraptor hunt to collect artifacts across multiple clients. Args: artifacts: List of artifact names to collect description: Description of the hunt's purpose parameters: Optional parameters for artifacts. Format: {"ArtifactName": {"param": "value"}} include_labels: Only include clients with these labels exclude_labels: Exclude clients with these labels os_filter: Filter by OS: 'windows', 'linux', 'darwin' timeout: Query timeout per client in seconds (default 600) expires_hours: Hunt expiration in hours (default 24) paused: Create hunt in paused state (default True for safety) Returns: Hunt ID and details. |
| list_huntsB | List Velociraptor hunts. Args: state: Optional filter by state: 'RUNNING', 'PAUSED', 'STOPPED', 'COMPLETED' limit: Maximum number of hunts to return (default 50) Returns: List of hunts with their status and statistics. |
| get_hunt_resultsA | Get results from a Velociraptor hunt. Args: hunt_id: The hunt ID (e.g., 'H.1234567890') artifact: Optional specific artifact to get results for limit: Maximum number of result rows to return (default 1000) Returns: Hunt results data from all clients. |
| modify_huntA | Modify a Velociraptor hunt state. Args: hunt_id: The hunt ID (e.g., 'H.1234567890') action: Action to perform: 'start', 'pause', 'stop', 'archive' Returns: Updated hunt status. |
| list_flowsA | List collection flows for a Velociraptor client. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') limit: Maximum number of flows to return (default 50) Returns: List of flows with their status and artifacts. |
| get_flow_resultsA | Get results from a specific Velociraptor collection flow. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') flow_id: The flow ID (e.g., 'F.1234567890') artifact: Optional specific artifact to get results for limit: Maximum number of result rows to return (default 1000) Returns: Collection results data. |
| get_flow_statusB | Get the status of a specific collection flow. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') flow_id: The flow ID (e.g., 'F.1234567890') Returns: Flow status including state, progress, and any errors. |
| cancel_flowB | Cancel a running collection flow. Args: client_id: The client ID (e.g., 'C.1234567890abcdef') flow_id: The flow ID (e.g., 'F.1234567890') Returns: Cancellation status. |
| run_vqlA | Execute an arbitrary VQL (Velociraptor Query Language) query. VQL is the query language used by Velociraptor for forensic analysis. It follows a SQL-like syntax with plugins instead of tables. Common VQL patterns:
Args: query: The VQL query to execute env: Optional environment variables to pass to the query. Use this to safely pass dynamic values instead of string interpolation. max_rows: Maximum number of rows to return (default 10000) org_id: Optional organization ID for multi-tenant deployments Returns: Query results as JSON. |
| vql_helpA | Get help on VQL (Velociraptor Query Language). Args: topic: Optional topic to get help on. Options: - 'syntax': VQL syntax basics - 'plugins': Common VQL plugins - 'functions': Common VQL functions - 'examples': Example queries Returns: Help text for the requested topic. |
| deploy_serverA | Deploy a Velociraptor server for incident response. Args: deployment_type: Deployment target - 'docker', 'binary', 'aws', or 'azure' profile: Deployment profile - 'rapid' (auto-destroys in 72h), 'standard', or 'enterprise' server_hostname: Hostname for the server (used in certificates and config) gui_port: Port for GUI/API access (default 8889) frontend_port: Port for client connections (default 8000) target_host: Target host for binary deployment (required for binary type) ssh_user: SSH username for binary deployment ssh_key_path: Path to SSH private key for binary deployment Returns: Deployment details including server URL, API URL, and admin credentials. IMPORTANT: Admin password is shown only once - save it immediately. |
| deploy_server_dockerA | Deploy Velociraptor server using Docker (fastest method). Optimized for rapid incident response. Server will be operational within 2-5 minutes. Args: profile: Deployment profile ('rapid', 'standard', 'enterprise') server_hostname: Hostname for server access gui_port: GUI/API port (default 8889) frontend_port: Client connection port (default 8000) memory_limit: Container memory limit (default 4g) cpu_limit: Container CPU limit (default 2) Returns: Deployment details including URLs and one-time admin password. |
| deploy_server_cloudA | Deploy Velociraptor server on cloud infrastructure. Deploys using CloudFormation (AWS) or ARM templates (Azure). Args: cloud_provider: Cloud provider - 'aws' or 'azure' profile: Deployment profile ('standard' or 'enterprise') region: Cloud region (defaults to us-east-1 for AWS, eastus for Azure) instance_type: VM instance type (auto-selected based on profile) server_hostname: Hostname for server (defaults to public IP) Returns: Deployment details including cloud resource IDs and URLs. |
| get_deployment_statusB | Check the status and health of a deployment. Args: deployment_id: The deployment identifier (e.g., 'vr-20240115-a1b2c3d4') Returns: Current deployment status including health checks and metrics. |
| destroy_deploymentA | Destroy a Velociraptor deployment and clean up resources. WARNING: This action is irreversible. All data will be lost. Args: deployment_id: The deployment identifier to destroy confirm: Must be True to confirm destruction Returns: Destruction status and cleanup details. |
| list_deploymentsA | List all managed Velociraptor deployments. Args: profile_filter: Filter by profile name ('rapid', 'standard', 'enterprise') include_destroyed: Include destroyed deployments Returns: List of deployments with their current status. |
| generate_agent_installerA | Generate an agent installer package with embedded configuration. Creates platform-specific installers that can be deployed without additional configuration. Args: deployment_id: The deployment to generate installer for os_type: Target OS - 'windows', 'linux', or 'macos' installer_type: Installer format - 'msi', 'deb', 'rpm', or 'pkg' (auto-selected based on os_type if not specified) labels: Labels to apply to agents installed with this package Returns: Path to generated installer and installation instructions. |
| create_offline_collectorA | Create an offline collection package for air-gapped systems. Generates a self-contained package that collects forensic artifacts without requiring network connectivity to a Velociraptor server. Args: artifacts: List of artifacts to collect (e.g., ['Windows.System.Pslist']) target_os: Target OS - 'windows', 'linux', or 'macos' artifact_set: Use predefined artifact set instead of listing artifacts. Options: 'windows_triage', 'windows_quick', 'linux_triage', 'macos_triage', 'memory', 'ransomware' encrypt_output: Encrypt collection output with a generated password deployment_id: Optional deployment ID for tracking Returns: Path to generated collector package and usage instructions. |
| generate_gpo_packageA | Generate a GPO deployment bundle for Windows domain environments. Creates MSI installer, configuration files, and step-by-step GPO setup documentation. Args: deployment_id: The deployment to generate package for domain_controller: Name of the domain controller (for share paths) labels: Labels to apply to deployed agents Returns: Path to GPO package and deployment instructions. |
| generate_ansible_playbookB | Generate Ansible playbook for agent deployment. Creates a complete Ansible role with tasks for all selected platforms. Args: deployment_id: The deployment to generate playbook for include_windows: Include Windows deployment tasks include_linux: Include Linux deployment tasks include_macos: Include macOS deployment tasks labels: Labels to apply to deployed agents Returns: Path to generated playbook directory and usage instructions. |
| deploy_agents_winrmA | Push Velociraptor agents to Windows systems via WinRM. Args: deployment_id: The deployment to connect agents to targets: List of target hostnames or IPs username: Windows username (DOMAIN\user or user@domain) password: Windows password labels: Labels to apply to deployed agents use_ssl: Use HTTPS for WinRM (default True) port: WinRM port (default 5986 for HTTPS) Returns: Deployment results for each target. |
| deploy_agents_sshA | Push Velociraptor agents to Linux/macOS systems via SSH. Args: deployment_id: The deployment to connect agents to targets: List of target hostnames or IPs username: SSH username key_path: Path to SSH private key (preferred) password: SSH password (if not using key) target_os: Target OS - 'linux' or 'macos' labels: Labels to apply to deployed agents port: SSH port (default 22) Returns: Deployment results for each target. |
| check_agent_deploymentB | Verify agent enrollment status for a deployment. Checks which agents have successfully enrolled with the server. Args: deployment_id: The deployment to check client_search: Optional search filter for client hostname/ID labels: Filter by client labels Returns: List of enrolled clients and their status. |
| generate_server_configB | Generate Velociraptor server configuration file. Args: deployment_id: The deployment to generate config for output_format: Output format - 'yaml' or 'json' Returns: Server configuration content. |
| generate_api_credentialsA | Generate API client credentials for MCP connection. Creates a new API client certificate for connecting this MCP server to a Velociraptor deployment. Args: deployment_id: The deployment to generate credentials for client_name: Name for the API client validity_days: Certificate validity in days Returns: API credentials in Velociraptor config file format. IMPORTANT: Save these credentials - they can only be displayed once. |
| rotate_certificatesA | Rotate certificates for a deployment. WARNING: Rotating CA certificate will require re-enrollment of all agents. Args: deployment_id: The deployment to rotate certificates for rotate_ca: Also rotate the CA certificate (requires re-enrollment) validity_days: Validity period for new certificates Returns: New certificate fingerprints and re-enrollment instructions. |
| validate_deploymentA | Run comprehensive security and health validation on a deployment. Checks:
Args: deployment_id: The deployment to validate Returns: Detailed validation report with any issues found. |
| export_deployment_docsB | Generate comprehensive deployment documentation. Creates documentation including:
Args: deployment_id: The deployment to document output_path: Optional path for documentation files Returns: Path to generated documentation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| investigate_endpoint | Start a comprehensive investigation on a specific endpoint. Guides through system interrogation, process analysis, network connections, and persistence mechanisms. Args: client_id: The Velociraptor client ID (e.g., C.1234567890abcdef) or hostname to investigate |
| threat_hunt | Create and execute a threat hunting campaign across multiple endpoints. Helps build hunts for specific IOCs, TTPs, or suspicious behaviors. Args: indicators: Indicators of compromise (IOCs) or behaviors to hunt for hunt_type: Type of hunt - 'file', 'process', 'network', 'registry', 'persistence', or 'custom' |
| triage_incident | Rapid incident triage workflow. Quickly collects critical forensic artifacts for initial assessment and scoping. Args: client_id: The Velociraptor client ID of the affected endpoint incident_type: Type of incident - 'malware', 'intrusion', 'data_exfil', 'ransomware', or 'unknown' |
| malware_analysis | Analyze potentially malicious files or processes. Guides through file analysis, process inspection, and behavioral indicators. Args: client_id: The Velociraptor client ID where the suspected malware exists target: File path or process name to analyze |
| lateral_movement | Detect and investigate lateral movement indicators. Checks for RDP, SMB, WMI, PowerShell remoting, and other lateral movement techniques. Args: scope: Investigation scope - specific client_id, 'label:xxx' for labeled clients, or 'all' for enterprise-wide timeframe: Time range to investigate (e.g., '24h', '7d', '30d') |
| rapid_ir_deployment | Guided workflow for rapid Velociraptor deployment during an active incident. Gets you from zero to collecting artifacts in under 5 minutes. Args: target_count: Approximate number of endpoints to deploy to environment: Environment type - 'windows_domain', 'mixed', 'linux', or 'cloud' |
| deploy_and_triage | Deploy Velociraptor and immediately begin triage collection on affected systems. Args: incident_type: Type of incident - 'ransomware', 'intrusion', 'malware', 'data_breach', or 'unknown' affected_systems: List of affected system hostnames or IPs (comma-separated) |
| offline_collection_kit | Generate a complete offline collection kit for air-gapped or isolated systems. Args: target_os: Target operating system - 'windows', 'linux', or 'macos' collection_type: Collection type - 'triage', 'full', 'memory', or 'custom' |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| clients_resource | Browse connected Velociraptor endpoints. |
| hunts_resource | Browse Velociraptor hunt campaigns. |
| artifacts_resource | Browse available Velociraptor artifacts. |
| server_info_resource | Velociraptor server information and status. |
| deployments_resource | List of Velociraptor deployments managed by Megaraptor MCP. |
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/wagonbomb/megaraptor-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server