Ludus FastMCP (tjnull/Ludus-FastMCP) is an MCP server listed on the M8ven Trust Index. It scores 54 out of 100, grade D. It declares 201 tools. No publisher has claimed this listing.
Enables AI-powered management of Ludus cyber range environments through natural language commands. Provides 157 tools for range lifecycle management, scenario deployment, template creation, Ansible role management, and SIEM integration for security testing and research.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
tjnull
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
generate_config_from_descriptionGenerate a complete Ludus range configuration from natural language description.
explain_range_design_decisionsExplain the design decisions and best practices for a range configuration request.
suggest_range_enhancementsSuggest enhancements to improve a range configuration.
create_deployment_pipelineCreate a deployment pipeline with multiple stages.
schedule_range_tasksSchedule recurring tasks for the range.
auto_scalingConfigure auto-scaling for the range.
schedule_snapshotsSchedule automatic snapshots for VMs.
clone_rangeClone the current range to another user.
export_range_backupExport range backup.
import_range_backupImport and restore range from backup.
bulk_vm_operationsPerform bulk operations on multiple VMs.
delete_rangeDelete the entire range.
abort_and_remove_rangeAbort any active deployment and then remove the range. This is a convenience function that combines abort_range_deployment() and delete_range(). Equivalent to running: 1. `ludus range abort` 2. `ludus rm` (with confirmation) Args: confirm: Confirmation flag (must be True to proceed) user_id: Optiona…
get_recovery_recommendationGet recovery recommendations for failed deployments.
batch_snapshot_hostsCreate snapshots for multiple VMs in parallel.
batch_rollback_snapshotsRollback multiple VMs to a snapshot in parallel.
batch_remove_snapshotsRemove snapshots from multiple VMs in parallel.
batch_power_on_hostsPower on multiple VMs in parallel.
batch_power_off_hostsPower off multiple VMs in parallel.
batch_get_vm_statusGet status of multiple VMs in parallel.
list_blueprintsList all available blueprints.
create_blueprint_from_rangeCreate a reusable blueprint from an existing range.
apply_blueprint_to_rangeApply a blueprint to a range.
copy_blueprintCopy a blueprint.
delete_blueprintDelete a blueprint.
get_blueprint_configGet blueprint configuration.
update_blueprint_configUpdate blueprint configuration.
share_blueprint_with_usersShare a blueprint with users.
unshare_blueprint_with_usersUnshare a blueprint from users.
share_blueprint_with_groupsShare a blueprint with groups.
unshare_blueprint_with_groupsUnshare a blueprint from groups.
list_blueprint_access_usersList users with access to a blueprint.
list_blueprint_access_groupsList groups with access to a blueprint.
share_range_configShare range configuration with other users.
import_community_scenarioImport a scenario from the community repository.
publish_scenarioPublish a scenario to the community repository.
list_range_templatesList available range templates from the community.
get_range_templateGet a specific range template configuration.
get_resource_quotasGet resource quotas and current usage.
optimize_resource_allocationOptimize resource allocation for the range.
schedule_maintenance_windowSchedule a maintenance window for the range.
interactive_build_rangeInteractively build a range using natural language prompts.
build_range_from_promptBuild a range configuration from a natural language prompt.
list_rangesList all ranges (admin only).
get_rangeGet current user's range information.
get_range_configGet range configuration.
update_range_configUpdate range configuration.
deploy_rangeDeploy a range from configuration with optional filters for resuming.
get_range_tagsGet available Ansible tags for the current range.
abort_range_deploymentAbort a range deployment.
snapshot_hostCreate a snapshot of a host.
list_snapshotsList all snapshots for the range.
rollback_snapshotRollback to a snapshot.
remove_snapshotRemove a snapshot.
power_on_rangePower on all VMs in the range.
power_off_rangePower off all VMs in the range.
list_templatesList available templates.
list_hostsList all hosts in range.
list_networksList all networks in a range.
start_testingStart testing state for the range.
stop_testingStop testing state for the range.
health_checkCheck health of Ludus MCP server and Ludus API connectivity.
create_custom_os_templateCreate a custom OS template with specific packages and configuration.
create_kali_weekly_templateCreate a Kali Linux weekly template with automatic latest ISO detection. Automatically fetches the latest Kali Linux weekly ISO and checksum from https://cdimage.kali.org/kali-weekly/. The ISO URL and checksum change weekly, so this tool always uses the most recent version. Args: name: Template name…
get_common_iso_urlsGet common ISO download URLs for popular operating systems. Returns a reference of ISO download URLs for various operating systems that can be used with create_custom_os_template. Returns: Dictionary of OS names to ISO download information Example: # Get common ISO URLs isos = await get_common_iso_u…
build_container_based_templateBuild a custom container-based template for applications.
get_common_container_configsGet pre-configured container definitions for common applications.
create_custom_range_from_scenarioCreate a custom range configuration based on an existing scenario.
build_range_from_scratchBuild a completely custom range configuration from scratch.
export_range_config_to_yamlExport a range configuration to a YAML file for download.
get_current_range_config_for_downloadGet the current range configuration and prepare it for download.
clone_and_modify_scenarioClone an existing scenario and modify it to create a new custom scenario.
build_range_from_descriptionBuild a custom range configuration from a natural language description.
list_vm_skeletonsList all available VM skeleton templates.
get_vm_skeletonGet a specific VM skeleton template configuration.
list_range_skeletonsList all available range skeleton templates.
get_range_skeletonGet a complete range skeleton configuration.
list_yaml_examplesList all available YAML configuration examples.
get_yaml_exampleGet a ready-to-use YAML configuration example.
build_range_from_skeletonBuild a complete range configuration starting from a skeleton.
list_scenariosList all available scenarios.
deploy_scenarioDeploy a scenario with optional SIEM integration and customization.
get_scenario_configGet scenario configuration.
get_scenario_yamlGet scenario configuration as YAML.
preview_scenarioPreview a scenario before deployment with detailed information.
quick_statusGet one-line deployment status with emoji indicators.
get_deployment_statusGet current deployment status with detailed information.
get_range_logsGet deployment logs for the range.
smart_deploySmart deployment with validation, optional snapshot, and auto-monitoring. RECOMMENDED: This is the preferred method for deploying scenarios as it includes validation, error checking, and monitoring guidance. NO FILE UPLOAD REQUIRED: This tool automatically generates the configuration from the scenar…
monitor_deploymentMonitor deployment progress with periodic updates.
deployment_timelineGet deployment timeline with progress tracking.
validate_configValidate range configuration before deployment.
handle_adws_recoveryHandle Active Directory Web Services (ADWS) recovery for stuck deployments.
get_diagnosticsGet system diagnostics.
whoamiTest authentication and get user info.
get_licenseGet license information.
migrate_sqlite_to_pocketbaseMigrate from SQLite to PocketBase.
get_sdn_migration_statusGet SDN migration status.
migrate_to_sdnMigrate to SDN networking.
setup_sdnSetup SDN infrastructure.
101 further tools are not listed here. The complete surface is in the source.
LUDUS_SSH_HOSTLUDUS_SSH_USERLUDUS_SSH_KEY_PATHLUDUS_SSH_PASSWORDLUDUS_ALLOW_SSH_INSTALLTool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
201/201 tools missing one or more hints — generate_config_from_description (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); explain_range_design_decisions (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); suggest_range_enhancements (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +198 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Descriptions match behaviour
1 tool describes read intent but its handler mutates — health_check (line 569: result = subprocess.run()
Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.
Tool inputs are validated
174/201 tool handlers declare input schemas (87%)
Declare an inputSchema with zod/joi/yup on every tool definition.
Tool handlers catch errors
Only 29/201 tool handlers wrap calls in try/catch (14%)
Wrap each tool handler body in try/catch and return a structured error response.
Tests exist
No test files found
Add tests that exercise each declared tool.
Tool description accuracy
health_check: description implies read-only but handler writes/deletes/executes
Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/tjnull/ludus-fastmcp)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check