AFSIM MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AFSIM_MCP_STATE_DIR | No | Path to the runtime state directory (default: <project_root>\mcp_state) | |
| AFSIM_MCP_CONFIG_DIR | No | Path to the configuration directory (default: C:\Users\<username>\.afsim_mcp) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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 |
|---|---|
| create_scenarioA | Create a new AFSIM scenario in memory. Parametersname: Unique name for the scenario. description: Optional human-readable description. duration_s: Simulation duration in seconds (default 3600). time_step_s: Simulation time step in seconds (default 1.0). ReturnsJSON with scenario_id, name, and metadata. |
| load_scenarioA | Load a scenario from disk. Parametersfile_path: Path to the scenario file. format: 'afsim' for .afsim files (default), 'json' for JSON files. ReturnsJSON with scenario_id and metadata. |
| save_scenarioA | Save a scenario to disk. Parametersscenario_id: UUID of the scenario to save. file_path: Destination path. Defaults to scenarios/.afsim (or .json). format: 'afsim' (default) or 'json'. ReturnsJSON with the saved file path. |
| validate_scenarioB | Validate a scenario and return errors/warnings. Parametersscenario_id: UUID of the scenario to validate. ReturnsJSON with 'valid', 'errors', and 'warnings' lists. |
| list_scenariosA | List all in-memory scenarios. ReturnsJSON array of scenario summaries. |
| list_scenario_filesA | List scenario files (.afsim and .json) in the scenarios directory. ReturnsJSON array of file paths. |
| delete_scenarioA | Remove a scenario from memory (does not delete files on disk). Parametersscenario_id: UUID of the scenario to remove. ReturnsJSON with 'removed' boolean. |
| get_scenario_contentA | Get the AFSIM text representation of a scenario. Parametersscenario_id: UUID of the scenario. ReturnsJSON with 'name' and 'content' (AFSIM scenario text). |
| create_platformA | Add a new platform (entity) to a scenario. Parametersscenario_id: UUID of the target scenario. name: Unique name for the platform within the scenario. platform_type: AFSIM platform type (e.g. 'wsf_air_vehicle', 'wsf_ground_vehicle'). latitude, longitude: Initial position in decimal degrees. altitude_m: Initial altitude in metres. ReturnsJSON with platform metadata. |
| delete_platformA | Remove a platform from a scenario. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the platform to remove. ReturnsJSON with 'removed' boolean. |
| modify_platformA | Modify an existing platform's position or type. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the platform to modify. latitude, longitude, altitude_m: New position values (omit to keep current). platform_type: New platform type string (omit to keep current). ReturnsJSON with updated platform metadata. |
| list_platformsA | List all platforms in a scenario. Parametersscenario_id: UUID of the target scenario. ReturnsJSON array of platform summaries. |
| add_moverA | Add a mover component to a platform. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the target platform. mover_type: AFSIM mover type (e.g. 'wsf_route_mover', 'wsf_air_mover'). mover_name: Optional name for the mover component. ReturnsJSON with component metadata. |
| add_sensorA | Add a sensor component to a platform. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the target platform. sensor_type: AFSIM sensor type (e.g. 'wsf_radar_sensor', 'wsf_eo_sensor'). sensor_name: Optional name for the sensor component. ReturnsJSON with component metadata. |
| add_weaponA | Add a weapon component to a platform. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the target platform. weapon_type: AFSIM weapon type (e.g. 'wsf_missile', 'wsf_bomb'). weapon_name: Optional name for the weapon component. ReturnsJSON with component metadata. |
| remove_componentB | Remove a component from a platform. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the target platform. component_name: Name of the component to remove. ReturnsJSON with 'removed' boolean. |
| list_componentsA | List all components on a platform. Parametersscenario_id: UUID of the target scenario. platform_name: Name of the target platform. ReturnsJSON array of component summaries. |
| run_simulationA | Run an AFSIM simulation for the specified scenario. If no AFSIM binary is configured (or dry_run is True), the simulation is recorded as completed immediately without executing AFSIM. Parametersscenario_id: UUID of the scenario to simulate. dry_run: If True, skip actual AFSIM execution (useful for testing). ReturnsJSON with run_id, status, and other run metadata. |
| stop_simulationB | Stop a running simulation. Parametersrun_id: UUID of the simulation run to stop. ReturnsJSON with updated run status. |
| get_simulation_statusA | Query the current status of a simulation run. Parametersrun_id: UUID of the simulation run. ReturnsJSON with status, times, PID, output directory, etc. |
| list_simulation_runsB | List all known simulation runs and their statuses. ReturnsJSON array of run summaries. |
| set_afsim_binaryA | Configure the path to the AFSIM simulation binary. Parametersbinary_path: Absolute path to the AFSIM executable. ReturnsJSON confirmation. |
| list_result_filesB | List simulation result files. Parametersrun_id: Filter to a specific run's output directory (optional). directory: Directory to scan (overrides default output dir). formats: Comma-separated list of extensions to include (e.g. '.aer,.csv'). ReturnsJSON array of result file metadata. |
| query_csv_resultsA | Read and query a CSV result file. Parametersfile_path: Path to the CSV file. columns: Comma-separated column names to include (all if empty). max_rows: Maximum rows to return (default 1000). ReturnsJSON with columns, row_count, and rows. |
| query_evt_resultsA | Read an AFSIM .evt event file. Parametersfile_path: Path to the .evt file. max_lines: Maximum lines to return (default 500). ReturnsJSON with line_count and lines array. |
| query_aer_resultsA | Read an AFSIM .aer archive/result file. Parametersfile_path: Path to the .aer file. max_lines: Maximum lines to return (default 500). ReturnsJSON with line_count and lines array. |
| export_results_to_jsonA | Convert a result file (.csv, .evt, .aer) to JSON format. Parametersfile_path: Path to the source result file. output_path: Destination JSON path (defaults to same name with .json extension). ReturnsJSON with the output file path. |
| get_results_summaryA | Summarise simulation results in a directory. Parametersdirectory: Directory to summarise (defaults to simulation output dir). ReturnsJSON with total_files, by_format counts, and total_size_bytes. |
| set_afsim_homeA | Set the AFSIM installation root directory. Parameterspath: Path to AFSIM_HOME (the directory containing bin/, data/, etc.). ReturnsJSON confirmation with detected binaries. |
| detect_afsim_installationA | Auto-detect AFSIM installation from environment and file system. ReturnsJSON with afsim_home, binary paths, and all_found flag. |
| set_tool_binary_pathA | Override the binary path for a specific AFSIM tool. Parameterstool: Tool identifier: 'wizard', 'mission', 'warlock', or 'mystic'. path: Absolute path to the tool binary. ReturnsJSON confirmation. |
| run_wizardA | Launch the AFSIM Wizard (GUI scenario builder). Parametersscenario_file: Optional path to open in Wizard. ReturnsJSON with success flag and PID (if launched). |
| run_missionA | Launch the AFSIM Mission Planner. Parametersscenario_file: Optional path to open in Mission Planner. ReturnsJSON with success flag and PID. |
| run_warlockB | Run the AFSIM Warlock batch simulation engine. Parametersscenario_file: Path to the AFSIM scenario file. output_dir: Directory for output files (default current dir). ReturnsJSON with success flag, returncode, stdout/stderr snippets. |
| run_mysticB | Launch the AFSIM Mystic post-processor. Parametersresults_dir: Directory containing simulation results to analyse. ReturnsJSON with success flag and PID. |
| generate_scenario_from_promptA | Generate an AFSIM scenario from a natural language description. The generator uses keyword matching and heuristics to parse the prompt and build a scenario with platforms, movers, sensors, and weapons. Examples: "Create a scenario with 2 fighters and a ship over 2 hours" "Simulate 3 UAVs with radar sensors patrolling for 30 minutes" "Air defense scenario: 1 SAM site and 4 attack aircraft, 1 hour" Parametersprompt: Natural language description of the desired scenario. ReturnsJSON with scenario_id, name, platform list, warnings, and AFSIM preview. |
| refine_scenario_from_promptA | Apply a natural language refinement to an existing scenario. Supports:
Parametersscenario_id: UUID of the scenario to refine. refinement_prompt: Natural language description of the changes to make. ReturnsJSON with changes applied and updated platform count. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Yookio-Z/AFSIM_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server