Skip to main content
Glama

AFSIM MCP Server

MCP (Model Context Protocol) server for the Advanced Framework for Simulation, Integration, and Modeling (AFSIM). Enables LLMs and AI agents to interact with AFSIM through standardized tools.

Features

Category

Tools

Scenario Management

create_scenario, load_scenario, save_scenario, validate_scenario, list_scenarios, delete_scenario, get_scenario_content, list_scenario_files

Entity & Component Management

create_platform, delete_platform, modify_platform, list_platforms, add_mover, add_sensor, add_weapon, remove_component, list_components

Simulation Control

run_simulation, stop_simulation, get_simulation_status, list_simulation_runs, set_afsim_binary

Results Handling

list_result_files, query_csv_results, query_evt_results, query_aer_results, export_results_to_json, get_results_summary

AFSIM Backend

set_afsim_home, detect_afsim_installation, set_tool_binary_path, run_wizard, run_mission, run_warlock, run_mystic

Natural Language

generate_scenario_from_prompt, refine_scenario_from_prompt

Related MCP server: AspenPlus MCP Server

Installation

pip install -e .

Or install dependencies directly:

pip install mcp

Usage

Running the server

# Via installed CLI
afsim-mcp

# Via Python module
python -m afsim_mcp.server

The server uses stdio transport and is compatible with any MCP client (Claude Desktop, VS Code MCP extension, etc.).

Claude Desktop configuration

Add to claude_desktop_config.json:

AFSIM MCP

本项目是一个本地 MCP 服务器,用于把 AFSIM 能力接入支持 MCP 的客户端(如 Cursor、Claude Desktop、VS Code、Trae、OpenCode 等)。

仓库只包含 MCP 服务源码与配置脚本,不附带测试工程、测试数据、示例生成产物或本地运行状态。实际使用时,请把 AFSIM 工程目录通过配置指向你自己的 project_root

如需给大模型或团队成员提供统一项目背景与建模建议,可参考仓库中的 memory.md。 如需评估当前项目真实能力边界,可参考 CAPABILITY_ASSESSMENT.md;如需约束接入大模型的标准工作流,可参考 MODEL_WORKFLOW_PROMPT.md

前置条件

  • Windows

  • Python 3.10+

  • 已安装 AFSIM(本机可运行)

快速开始

在项目目录执行:

python configure_mcp.py

脚本会按提示询问并写入本地配置,同时输出客户端所需的 MCP 配置片段。

配置项说明

  • AFSIM 根目录:AFSIM 安装目录

  • AFSIM 项目目录:你的 AFSIM 工程目录

  • AFSIM demos 目录:官方示例目录

  • AFSIM bin 目录:mission.exe 等可执行文件所在目录

  • 配置文件存放目录:默认 C:\Users\你的用户名\.afsim_mcp

  • 运行时状态目录:默认 project_root\mcp_state;客户端通常只需要传入 AFSIM_MCP_CONFIG_DIR 用于定位配置文件,如需覆盖状态目录可额外设置 AFSIM_MCP_STATE_DIR

如果检测到已有配置,脚本会显示旧值;直接回车表示保留旧值。

客户端配置

脚本会输出两段内容:

  1. 通用连接信息

  2. 你选择的平台对应的 JSON 配置示例

{
  "mcpServers": {
    "afsim": {
      "command": "afsim-mcp"
    }
  }
}

Or if not installed:

{
  "mcpServers": {
    "afsim": {
      "command": "python",
      "args": ["-m", "afsim_mcp.server"],
      "cwd": "/path/to/AFSIM_MCP"
    }
  }
}

Available Tools

37 tools
add_moverA

Add a mover component to a platform.

Parameters

scenario_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.

Returns

JSON with component metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes
mover_typeNowsf_route_mover
mover_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry full behavioral disclosure. It states the core behavior and return type but lacks details on side effects, validation, preconditions, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear first sentence and well-structured parameter list. Every sentence is necessary and informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main action and parameters well, and mentions the return type. It lacks prerequisites (e.g., platform must exist) and error conditions, but is adequate for a straightforward add operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description fully compensates by providing clear, context-rich explanations for each parameter (e.g., 'UUID', 'AFSIM mover type', 'Optional name'), adding value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Add a mover component to a platform') with specific verb and object, and distinguishes from sibling tools like add_sensor and add_weapon by specifying 'mover'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage (when you need to add a mover to a platform) but provides no explicit guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_sensorA

Add a sensor component to a platform.

Parameters

scenario_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.

Returns

JSON with component metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes
sensor_typeNowsf_radar_sensor
sensor_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It states the tool adds a sensor component and returns JSON metadata, but does not mention prerequisites (e.g., platform must exist), potential side effects, or any destructive behavior. The explanation is adequate but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a brief one-sentence summary followed by a clear parameter list. It is front-loaded with the key action. While it could be slightly more compact, it efficiently conveys necessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description does not need to detail return values. However, it omits important contextual information such as prerequisites (scenario and platform must exist) and whether the operation is additive or overwrites existing sensors. The description is moderately complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the parameter explanations in the description add significant value. Each parameter is explained with context: scenario_id is a UUID, platform_name is the target, sensor_type includes example values, and sensor_name is optional. This goes beyond the schema's title/type/default fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Add a sensor component to a platform.' This specific verb+resource (add + sensor) distinguishes it from sibling tools like add_mover and add_weapon. The tool name and description are consistent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly guide when to use this tool versus alternatives. While the tool name implies it's for sensors, there is no mention of when not to use it or which other tools might be more appropriate (e.g., add_mover for movers). Usage context is implied but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_weaponA

Add a weapon component to a platform.

Parameters

scenario_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.

Returns

JSON with component metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes
weapon_typeNowsf_missile
weapon_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It states the tool 'adds' a component but does not detail side effects (e.g., whether the platform is modified permanently, or if any validation occurs). The return type is noted, but more context on impact would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear structure: a header line, a parameter list, and a return note. Every sentence adds information, but the parameter descriptions could be more tightly integrated. Overall, it's efficient and well-organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (4 parameters, 2 required) and the presence of an output schema, the description covers parameters and return but misses usage context and behavioral details. For a straightforward tool, it is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description compensates by explaining each parameter's purpose (e.g., 'scenario_id' as UUID, 'weapon_type' as AFSIM type with example). It also clarifies the optional nature of 'weapon_name' and the return value, adding value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Add', the resource 'weapon component', and the target 'platform'. It distinguishes from sibling tools like 'add_mover' and 'add_sensor' by specifying the weapon type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., 'add_mover', 'add_sensor'). No prerequisites or exclusions are mentioned, leaving the agent without context for appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_platformA

Add a new platform (entity) to a scenario.

Parameters

scenario_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.

Returns

JSON with platform metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
nameYes
platform_typeNowsf_platform
latitudeNo
longitudeNo
altitude_mNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden for behavioral disclosure. It states the tool adds a platform but omits side effects, prerequisites (e.g., scenario existence), or whether it is destructive. The return value is mentioned but not in detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with headings and bullet points, no extraneous information. It is concise yet covers all parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists, the minimal return description is acceptable. However, missing prerequisites (e.g., scenario must exist) and error conditions make it adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description provides meaningful context: explains scenario_id as UUID, name as unique, platform_type examples, latitude/longitude in decimal degrees, and altitude in metres. This goes beyond the schema's titles and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Add a new platform (entity) to a scenario.' with specific verb and resource, and includes a detailed parameter list. It distinguishes itself from sibling tools like delete_platform and modify_platform.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by listing required parameters but does not explicitly state when to use this tool versus alternatives (e.g., add_mover). No when-not-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_scenarioA

Create a new AFSIM scenario in memory.

Parameters

name: 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).

Returns

JSON with scenario_id, name, and metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
descriptionNo
duration_sNo
time_step_sNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the 'in memory' behavior and return fields, providing key behavioral context. However, it does not specify behavior on duplicate names (overwrite/error) or side effects on existing scenarios. Still, it adds significant value beyond a bare description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: a one-line purpose, a structured parameter list, and a return note. Every sentence earns its place, with no fluff. The front-loaded purpose immediately orients the agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool complexity (4 params, no annotations, output schema present), the description covers the core: name, duration, time step, and return. It misses context like reliance on an AFSIM installation and the need to later save the scenario. However, it is adequate for an experienced agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate. It adds 'Unique name', 'Optional human-readable description', and units for numeric parameters (seconds, defaults). This meaningfully goes beyond the schema's titles and types, though it could include constraints like positive duration.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create a new AFSIM scenario in memory,' with a specific verb and resource. It distinguishes from siblings like load_scenario (file-based) and generate_scenario_from_prompt (AI-generated), making the tool's purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for creating a new in-memory scenario but lacks explicit guidance on when to use vs. alternatives. It does not mention prerequisites (e.g., before adding components) or when to use load_scenario or generate_scenario_from_prompt instead. The 'in memory' hint is helpful but insufficient for clear decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_platformA

Remove a platform from a scenario.

Parameters

scenario_id: UUID of the target scenario. platform_name: Name of the platform to remove.

Returns

JSON with 'removed' boolean.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It only states the basic action and return type (JSON with 'removed' boolean). It does not mention that the operation is destructive, irreversible, or whether it cascades to associated components. Side effects or conditions are absent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise: one introductory sentence followed by a clear parameter list. No extraneous information, well-structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and the presence of an output schema (not shown), the description covers purpose, parameters, and return format. However, it could be more complete by mentioning that the platform must exist or that the operation is irreversible. Overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description includes parameter explanations: 'UUID of the target scenario' and 'Name of the platform to remove.' This adds meaningful semantics beyond the schema's type and title.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Remove a platform from a scenario,' which identifies the specific action (remove) and resource (platform from scenario). This distinguishes it from sibling tools like create_platform, modify_platform, and remove_component.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for removing a platform, but lacks explicit guidance on when to use this tool versus alternatives (e.g., delete_scenario for deleting the entire scenario) or prerequisites (e.g., the platform must exist). No exclusion criteria are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_scenarioA

Remove a scenario from memory (does not delete files on disk).

Parameters

scenario_id: UUID of the scenario to remove.

Returns

JSON with 'removed' boolean.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses the key behavior of not deleting files on disk, but lacks details on side effects, permissions, or reversibility. With no annotations, the description provides moderate transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short and front-loaded description. The parameter section is somewhat redundant with the schema but not excessively so. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete tool with one parameter and an output schema, the description covers the essential behavior (removes from memory, not disk) and return value. Could mention error handling but overall sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only parameter 'scenario_id' is described as 'UUID of the scenario to remove', adding meaning beyond the schema's type and title. However, no format constraints or examples are given.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action (remove a scenario from memory) and distinguishes from file deletion. Specific verb 'remove' and resource 'scenario' are unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage: use when needing to remove a scenario from memory without deleting files. No explicit when-not-to-use or alternatives among siblings like 'delete_platform' or 'remove_component'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_afsim_installationA

Auto-detect AFSIM installation from environment and file system.

Returns

JSON with afsim_home, binary paths, and all_found flag.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the non-destructive nature of detection and specifies the return format (JSON with afsim_home, binary paths, all_found flag). Since no annotations exist, this provides useful transparency, though it could mention potential failure scenarios.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise with two short sentences. The purpose is front-loaded, and every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and a simple task, the description is fully complete. It explains the detection method and return value, which suffices for an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so baseline is 4. The description adds meaning beyond the empty schema by specifying the return structure, which aids in understanding the output.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Auto-detect AFSIM installation') and the source ('from environment and file system'). It distinguishes itself from sibling tools like set_afsim_binary by focusing on detection rather than setting paths.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is provided on when to use this tool versus alternatives. The description only states what the tool does, without indicating prerequisites or when it should be invoked.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_results_to_jsonA

Convert a result file (.csv, .evt, .aer) to JSON format.

Parameters

file_path: Path to the source result file. output_path: Destination JSON path (defaults to same name with .json extension).

Returns

JSON with the output file path.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the conversion action and return format but fails to mention critical behavioral traits such as whether existing output files are overwritten, required permissions, error handling, or side effects on source files.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise at ~50 words, structured with parameters and returns sections, and front-loaded with the main purpose. Every sentence adds value, no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, supported formats listed) and presence of an output schema, the description is largely complete. It explains the return value and covers main behavior. However, it could mention whether the conversion is lossy or preserves all data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description adds meaning for both parameters: file_path is the source path, output_path defaults to same name with .json extension (though schema default is empty string, creating slight inconsistency). This partially compensates but could be more precise (e.g., clarifying default behavior).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool converts specific result file formats (.csv, .evt, .aer) to JSON format, using a specific verb 'convert' and resource 'result file to JSON'. This distinguishes it from sibling tools like query_csv_results which query data rather than convert formats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly indicates usage when a JSON output file is needed from supported result files. However, it does not explicitly state when to avoid this tool or mention alternatives, such as using query tools for in-memory results. The context is clear but lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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"

Parameters

prompt: Natural language description of the desired scenario.

Returns

JSON with scenario_id, name, platform list, warnings, and AFSIM preview.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses use of keyword matching/heuristics and components built, but lacks details on limitations, side effects, or error handling; no annotations to compensate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise with front-loaded purpose and helpful examples; structured Parameters/Returns section adds clarity but slightly lengthens the description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, mechanism, examples, and return format. Lacks mention of persistence or linkage to other tools, but sufficient for a 1-parameter tool with output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The parameter 'prompt' is described in the Parameters section, adding meaning beyond the bare schema (which had 0% coverage).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it generates an AFSIM scenario from natural language, distinguishing it from siblings like create_scenario or refine_scenario_from_prompt.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Examples imply use for quick scenario creation, but no explicit when-to-use or when-not-to-use guidelines, nor direct comparison with alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_results_summaryA

Summarise simulation results in a directory.

Parameters

directory: Directory to summarise (defaults to simulation output dir).

Returns

JSON with total_files, by_format counts, and total_size_bytes.

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavioral traits. It mentions the return format but does not disclose side effects, permissions, or safety (e.g., read-only). With no annotation support, the description is insufficient for full transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured as a docstring with a clear first line and parameter/return sections. It is efficient but could be slightly more concise, though it remains readable and focused.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic purpose and return structure, but lacks details on edge cases (e.g., empty or non-existent directories). Given the tool's simplicity and the presence of an output schema, it is adequate but not fully comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explains the directory parameter's purpose and default behavior ('defaults to simulation output dir'), adding meaning beyond the schema (which lacks descriptions). This compensates for 0% schema description coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Summarise simulation results in a directory' with a specific verb and resource, distinguishing it from sibling tools like list_result_files (lists files, not summary) and query_* tools (queries specific formats).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for summarizing results but does not explicitly state when to use it versus alternatives like export_results_to_json or query tools. No when-not or alternative recommendations are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_scenario_contentA

Get the AFSIM text representation of a scenario.

Parameters

scenario_id: UUID of the scenario.

Returns

JSON with 'name' and 'content' (AFSIM scenario text).

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of disclosing behavior. It states it returns the text representation, implying a read-only operation. However, it does not mention prerequisites (e.g., scenario must exist) or potential errors. The given info is minimal but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a brief purpose statement, followed by a parameters section and a returns section. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with one parameter and an output schema (known to exist). The description explains the output format (JSON with 'name' and 'content'). It could mention that the scenario must exist, but overall it's sufficient for basic usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no parameter description (0% coverage), but the tool's description clarifies that 'scenario_id' is a UUID. This adds meaning beyond the schema, which only provides the title and type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the AFSIM text representation of a scenario, using the verb 'Get' and specifying the resource. This distinguishes it from sibling tools like create_scenario or delete_scenario.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like list_scenarios (which lists names) or load_scenario (which loads into memory). The description lacks context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_simulation_statusA

Query the current status of a simulation run.

Parameters

run_id: UUID of the simulation run.

Returns

JSON with status, times, PID, output directory, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
run_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries burden. It discloses return fields (status, times, PID, output directory) but omits details like whether state changes, required permissions, or error conditions. Adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-load purpose and parameters. Every sentence adds value; no waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one simple parameter and an output schema (not shown but indicated), the description adequately covers purpose and return format. Could mention possible status values or usage caveats, but overall complete for a query tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds that run_id is a 'UUID of the simulation run,' providing format and semantics beyond the schema's 'string' type. Schema coverage is 0%, so description fully compensates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Query the current status of a simulation run.' The verb 'Query' and resource 'status of a simulation run' are specific and distinct from siblings like run_simulation or get_results_summary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., get_results_summary, list_simulation_runs). The description lacks context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_componentsA

List all components on a platform.

Parameters

scenario_id: UUID of the target scenario. platform_name: Name of the target platform.

Returns

JSON array of component summaries.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the return type (JSON array of component summaries) but omits behavioral traits like idempotency, authentication requirements, or potential side effects. The description is adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise with a clear structure: a one-line purpose, a parameter list, and a return value note. Every sentence serves a purpose, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and the presence of an output schema, the description is largely complete. It identifies the parameters and return type. However, it could mention that the operation is read-only and safe to call multiple times, enhancing completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds brief descriptions ('UUID of the target scenario', 'Name of the target platform') which clarify the role of each parameter but offer no format constraints or examples. Minimal added value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists components on a platform, specifying the required parameters scenario_id and platform_name. This distinguishes it from sibling tools like list_platforms or list_scenarios, as it operates on a lower-level entity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (to list components) but does not provide explicit guidance on when not to use or alternative tools. With siblings like remove_component, some exclusion context would help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_platformsA

List all platforms in a scenario.

Parameters

scenario_id: UUID of the target scenario.

Returns

JSON array of platform summaries.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description must disclose behavioral traits. It states the tool lists platforms and returns a JSON array, implying a read-only operation. However, it does not mention any potential limitations or dependencies, which is adequate for a simple list tool but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: one sentence for purpose, followed by a structured parameters section and return value note. No extraneous text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, output schema exists), the description is complete. It covers purpose, input, and output. However, it could mention that it returns all platforms without filtering, which is already implied.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema coverage is 0%, so the description carries the burden. It explains that scenario_id is a 'UUID of the target scenario', adding meaning beyond the schema's title and type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all platforms in a scenario', using a specific verb and resource. This distinguishes it from sibling tools like create_platform or delete_platform.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when one needs a list of platforms in a scenario, but does not explicitly state when to use it over alternatives like list_components or list_scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_result_filesB

List simulation result files.

Parameters

run_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').

Returns

JSON array of result file metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
run_idNo
directoryNo
formatsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It states that the tool lists files and returns metadata, but does not disclose that it is read-only, whether it accesses the file system or a database, or any side effects. The description is minimal and leaves the agent unaware of important behavioral aspects like default directories or recursion behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and uses a clear structure with a brief purpose statement followed by labeled parameter explanations. It avoids unnecessary text, though the Python docstring style (e.g., 'Parameters ----------') is slightly verbose for an MCP description. Overall, every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains parameters and return type, which is helpful given the output schema exists. However, it lacks context about default behavior (e.g., what directory is scanned if none provided), whether listing is recursive, and the relationship to simulation runs. Given the tool's complexity (3 optional parameters) and no annotations, the description should provide more context to fully inform the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description provides clear semantics for all three parameters: run_id 'Filter to a specific run's output directory (optional)', directory 'Directory to scan (overrides default output dir)', and formats 'Comma-separated list of extensions to include (e.g. '.aer,.csv')'. This compensates well for the schema's lack of descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List simulation result files' and specifies that it returns a JSON array of result file metadata. It distinguishes itself from sibling tools like query_aer_results, query_csv_results, and query_evt_results that query specific result types, and from export_results_to_json that exports results. The verb 'list' combined with 'result files' is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. Sibling tools such as query_aer_results, query_csv_results, and query_evt_results also deal with results, but the description does not explain that list_result_files returns file metadata while the query tools return parsed data. The agent is left to infer this distinction on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_scenario_filesA

List scenario files (.afsim and .json) in the scenarios directory.

Returns

JSON array of file paths.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses return type (JSON array of file paths) and the directory searched, but lacks details on error handling, performance characteristics, or whether listing is recursive. No annotations provided to supplement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two brief sentences, front-loaded with the core purpose. No superfluous text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Sufficient for a simple tool with no parameters and an output schema. Could clarify if listing is recursive or only top-level, but overall complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so schema coverage is 100%. Description does not need to add parameter info; baseline 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it lists scenario files with specific extensions (.afsim and .json) in the scenarios directory, and notes the return format. This distinguishes it from sibling tools like list_scenarios or list_result_files.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus other list tools (e.g., list_scenarios). No mentions of prerequisites or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_scenariosA

List all in-memory scenarios.

Returns

JSON array of scenario summaries.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates it returns a JSON array of summaries, implying read-only behavior. However, with no annotations provided, it lacks details like side effects (none) or performance implications, which is acceptable for a simple list tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences with no wasted words, front-loading the action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, output schema exists), the description is complete: it specifies the resource, scope, and return format. No additional context required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the schema coverage is 100% trivially. Per calibration, baseline is 4 for 0-param tools; no additional parameter info needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all in-memory scenarios,' using a specific verb ('List') and resource ('scenarios'), and distinguishes from siblings like list_scenario_files and list_platforms by specifying 'in-memory'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., list_scenario_files, list_platforms), or any prerequisites such as needing a loaded scenario.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_simulation_runsB

List all known simulation runs and their statuses.

Returns

JSON array of run summaries.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description only states the return format. It does not disclose read-only nature, auth requirements, or other behavioral traits. The description carries the full burden and falls short.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and an output schema exists, the description is minimally acceptable but lacks details on what constitutes a 'run summary' and could be more informative for a general audience.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so baseline is 4. The description adds nothing about parameters, but that is acceptable given zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool lists all simulation runs with statuses. It is specific and matches the tool name, but does not differentiate from sibling tools like get_simulation_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings. Lacks context about prerequisites or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

load_scenarioA

Load a scenario from disk.

Parameters

file_path: Path to the scenario file. format: 'afsim' for .afsim files (default), 'json' for JSON files.

Returns

JSON with scenario_id and metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes
formatNoafsim

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It does not disclose side effects (e.g., overwriting current state), error handling, or requirements. The minimal description ('load from disk') adds little behavioral insight beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and efficiently structured with a purpose statement, a parameter list, and a return note. Every sentence adds value; no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 params, no enums, no nested objects, output schema present), the description covers essential information (what it does, parameters, return type). It misses error handling or edge cases, but is complete for basic usage. Sibling tools are diverse enough that this description suffices.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description explains both parameters: file_path (path to file) and format (afsim default, json for JSON). This adds meaningful context beyond the schema's title and type. However, it lacks details like accepted file extensions or validation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool loads a scenario from disk, using specific verb 'load' and resource 'scenario from disk'. It distinguishes itself from sibling tools like create_scenario, save_scenario, and delete_scenario by focusing on loading an existing file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like create_scenario or get_scenario_content. The description lacks any context about prerequisites or situations where loading is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

modify_platformA

Modify an existing platform's position or type.

Parameters

scenario_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).

Returns

JSON with updated platform metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes
latitudeNo
longitudeNo
altitude_mNo
platform_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that optional parameters can be omitted to keep current values, and mentions the return type (JSON with updated metadata). However, it does not discuss side effects, permissions, or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a purpose sentence, a bulleted parameter list, and a returns line. It is concise and each part is necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and the moderate complexity (6 parameters), the description covers purpose, parameters, and return type adequately. It is missing details on error handling or prerequisites (e.g., scenario must exist), but overall it is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must explain parameters. It provides clear explanations for each parameter: scenario_id as UUID, platform_name, lat/lon/alt as new position (omit to keep current), and platform_type as new type (omit to keep current). This adds significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence clearly states the action and resource: 'Modify an existing platform's position or type.' This distinguishes it from sibling tools like create_platform (create new) and delete_platform (delete).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for modifying position or type but does not explicitly state when to use this tool versus alternatives like creating a new platform or deleting one. No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_aer_resultsA

Read an AFSIM .aer archive/result file.

Parameters

file_path: Path to the .aer file. max_lines: Maximum lines to return (default 500).

Returns

JSON with line_count and lines array.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes
max_linesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates a read-only operation ('Read') but provides no additional behavioral context such as side effects, authentication requirements, or error handling. With no annotations, a more explicit statement about safety would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with a clear purpose statement followed by structured parameter and return sections. No unnecessary text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with an output schema, the description covers parameters and return format adequately. Missing details like error handling or prerequisites, but overall complete for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides clear semantics for both parameters: file_path is 'Path to the .aer file' and max_lines is 'Maximum lines to return (default 500)'. Since schema coverage is 0%, this fully compensates and adds necessary meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Read' and the resource 'AFSIM .aer archive/result file', distinguishing it from sibling tools like query_csv_results and query_evt_results which operate on different file formats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool over alternatives or when not to use it. The intended use case (reading .aer files) is implied but not contrasted with similar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_csv_resultsA

Read and query a CSV result file.

Parameters

file_path: Path to the CSV file. columns: Comma-separated column names to include (all if empty). max_rows: Maximum rows to return (default 1000).

Returns

JSON with columns, row_count, and rows.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes
columnsNo
max_rowsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must fully disclose behavior. It describes the parameters and return format (JSON with columns, row_count, rows), adding default max_rows. However, it does not mention read-only nature, error handling, file existence requirements, or performance implications. Adequate but could be more transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise: one sentence for purpose, followed by a clear parameter list, and a return format note. Every sentence earns its place with no redundancy. Front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (reading CSV with optional filtering), the description covers purpose, parameters, and return structure. With an output schema present, the return explanation suffices. However, it does not state assumptions like file_path must exist or behavior on missing columns. Mostly complete but misses minor contextual details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It explains file_path (path to CSV), columns (comma-separated, all if empty), and max_rows (default 1000). This adds meaning beyond the schema's field names and types, but the explanations are minimal. Sufficient for basic understanding, not comprehensive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Read and query' and the resource 'CSV result file', which precisely conveys the tool's function. It differentiates well from sibling query tools like query_aer_results and query_evt_results by specifying the file type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide any guidance on when to use this tool versus alternatives. It lacks explicit context for when it is appropriate, exclusions, or mention of related tools. Users must infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_evt_resultsA

Read an AFSIM .evt event file.

Parameters

file_path: Path to the .evt file. max_lines: Maximum lines to return (default 500).

Returns

JSON with line_count and lines array.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes
max_linesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must bear the full burden. It discloses the return format and default max_lines but lacks details on error handling, large file behavior, or safety (read-only).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, front-loaded with purpose, and well-structured with clear Parameters and Returns sections. No extraneous text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description adequately explains return values. It covers the core functionality but omits error scenarios or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description adds meaningful context: 'Path to the .evt file' and 'Maximum lines to return (default 500)'. This goes beyond the schema's bare titles and types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Read' and the resource 'AFSIM .evt event file', distinguishing it from sibling tools like query_aer_results and query_csv_results.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for reading .evt files but provides no explicit guidance on when to use this tool versus alternatives like query_aer_results or query_csv_results.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

refine_scenario_from_promptA

Apply a natural language refinement to an existing scenario.

Supports:

  • Adding platforms: "add 2 more fighters"

  • Changing duration: "extend to 3 hours"

Parameters

scenario_id: UUID of the scenario to refine. refinement_prompt: Natural language description of the changes to make.

Returns

JSON with changes applied and updated platform count.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
refinement_promptYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explains it applies changes and returns updated JSON, but does not disclose whether modifications are persisted immediately, if the scenario must be loaded first, or potential side effects. Without annotations, more detail would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, using bullet points for supported changes and a clear header for parameters. Every sentence is informative and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, parameters, and return value. However, it lacks details on error handling, prerequisites (e.g., scenario existence), or validation of the prompt, leaving minor gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explicitly explains both parameters: scenario_id as the UUID and refinement_prompt as the natural language description. This adds essential meaning beyond the schema which only provides titles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool refines an existing scenario using natural language, with examples of adding platforms and changing duration. This distinguishes it from siblings like generate_scenario_from_prompt which creates new scenarios.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for modifying existing scenarios and provides concrete examples, but does not explicitly state when not to use it or alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_componentB

Remove a component from a platform.

Parameters

scenario_id: UUID of the target scenario. platform_name: Name of the target platform. component_name: Name of the component to remove.

Returns

JSON with 'removed' boolean.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
platform_nameYes
component_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description only mentions the return boolean 'removed'. It does not disclose potential side effects, permissions needed, or what happens if the component doesn't exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, using a clear header and separate sections for parameters and returns. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple removal tool with three required parameters and an output schema, the description covers the basic functionality and return format. It lacks error handling or edge-case details but is reasonably complete for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds brief parameter explanations (e.g., 'UUID of the target scenario') beyond the schema's field titles. However, schema coverage is 0% and the explanations are minimal, not deeply clarifying formats or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Remove a component from a platform', which is a specific verb and resource. It distinguishes from sibling tools like 'add_mover' or 'delete_platform'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as when to remove a component versus modifying or deleting the platform. No context on prerequisites or conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_missionA

Launch the AFSIM Mission Planner.

Parameters

scenario_file: Optional path to open in Mission Planner.

Returns

JSON with success flag and PID.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_fileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description mentions it returns a PID, implying process launch, but does not disclose potential side effects, blocking behavior, or dependencies (e.g., AFSIM installation). With no annotations, more detail is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: three lines covering purpose, parameter, and return value. Every part is essential and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately covers a simple launcher use case but omits important details like when to use this vs other run tools and whether AFSIM must be installed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explains the single parameter 'scenario_file' as an optional path, which the schema lacks (0% coverage). This adds necessary meaning beyond the structured input.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool launches the AFSIM Mission Planner, a specific action and resource. It distinguishes from sibling tools like run_simulation, run_warlock, etc., which focus on running other AFSIM components.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., run_simulation, run_mystic). The description lacks context about prerequisites or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_mysticB

Launch the AFSIM Mystic post-processor.

Parameters

results_dir: Directory containing simulation results to analyse.

Returns

JSON with success flag and PID.

ParametersJSON Schema
NameRequiredDescriptionDefault
results_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description does not disclose behavioral traits beyond launching and returning a PID. Without annotations, it fails to indicate whether the tool is blocking or async, what resources it uses, or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, using a brief paragraph followed by a structured Parameters and Returns section. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic purpose and parameter, but lacks context about prerequisites, behavior (e.g., blocking/non-blocking), and relationship to sibling tools. With no annotations, more detail is needed for full completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to the single parameter by specifying 'results_dir: Directory containing simulation results to analyse.' This tells the user it expects a directory path with simulation results, which is not evident from the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool launches the AFSIM Mystic post-processor, specifying a verb and resource. However, it does not differentiate it from sibling tools like run_warlock or run_wizard, which might also be post-processors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, such as needing simulation results from a prior run, or context for choosing between post-processors.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

Parameters

scenario_id: UUID of the scenario to simulate. dry_run: If True, skip actual AFSIM execution (useful for testing).

Returns

JSON with run_id, status, and other run metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
dry_runNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the conditional execution behavior (dry_run or missing binary) and mentions the return format. However, it does not specify whether the tool is synchronous, its side effects, or prerequisites beyond the binary configuration.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a summary line, a conditional note, parameter descriptions, and return type. Every sentence is informative with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no nested objects, output schema exists), the description covers essential aspects: purpose, parameter semantics, return structure, and a behavioral nuance. It lacks only minor details like error cases or prerequisite checks.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description must compensate. It fully explains both parameters: 'scenario_id' as 'UUID of the scenario to simulate' and 'dry_run' as skipping execution for testing. This adds clear meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Run an AFSIM simulation') and target ('for the specified scenario'). It is specific and distinct from sibling tools by mentioning AFSIM and scenario, but it does not explicitly differentiate from similar run tools like run_mission.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context about when the simulation is recorded without execution (no binary or dry_run=True), which guides usage. However, it lacks explicit statements about when to use this tool over alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_warlockB

Run the AFSIM Warlock batch simulation engine.

Parameters

scenario_file: Path to the AFSIM scenario file. output_dir: Directory for output files (default current dir).

Returns

JSON with success flag, returncode, stdout/stderr snippets.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_fileYes
output_dirNo.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions returning JSON with success flag and output snippets, but does not disclose side effects (e.g., file creation), blocking behavior, permissions, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise and structured: a brief header followed by a parameter list and return description. No fluff, though the docstring format is not overly compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, parameters, and return value. However, lacks behavioral context (e.g., whether it's a long-running batch job) and usage guidelines. Adequate but could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description adds clear meaning: 'scenario_file' is a path, 'output_dir' is for output files with a default. This is sufficient for a 2-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Run' and the resource 'AFSIM Warlock batch simulation engine'. It distinguishes from siblings like 'run_simulation' by specifying the Warlock engine, but could be more explicit about what makes Warlock unique.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives such as 'run_simulation' or 'run_mystic'. No preconditions or exclusions mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_wizardA

Launch the AFSIM Wizard (GUI scenario builder).

Parameters

scenario_file: Optional path to open in Wizard.

Returns

JSON with success flag and PID (if launched).

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_fileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It reveals the tool launches a GUI (blocking/interactive) and returns a PID, which is useful. However, it does not mention side effects, system state changes, or dependencies like AFSIM installation, leaving moderate gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise: a one-sentence purpose, then a clean parameter table and return type. Every piece of information is relevant and no filler. This front-loads the core action efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one optional parameter, the description covers the key aspects: what it does, the parameter, and the return structure (success + PID). The existence of an output schema (not shown) partially offsets the need for return details. However, it could mention that the call is blocking or that AFSIM must be installed, making it nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 1 parameter with 0% coverage (no property descriptions). The description adds meaning: 'Optional path to open in Wizard', clarifying the param's role beyond the schema's type and default. This adds value, though it is brief.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'Launch[es] the AFSIM Wizard (GUI scenario builder)', using a specific verb and resource. It distinguishes from siblings like 'run_mission' and 'run_simulation' by emphasizing the GUI builder aspect, indicating a different use case.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives (e.g., 'create_scenario' for programmatic creation, 'run_simulation' for execution). No when-not-to-use or context is given, leaving the agent to infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_scenarioA

Save a scenario to disk.

Parameters

scenario_id: UUID of the scenario to save. file_path: Destination path. Defaults to scenarios/.afsim (or .json). format: 'afsim' (default) or 'json'.

Returns

JSON with the saved file path.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes
file_pathNo
formatNoafsim

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses default file paths and formats but does not mention overwriting behavior, error handling, or any destructive aspects. No annotations provided to compensate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear structure: description line, parameters section, returns note. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, parameters, and return value. Minor gaps on error conditions and overwriting behavior but sufficient for a simple save tool given output schema presence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description fully explains each parameter: scenario_id, file_path (with default path template), and format (with defaults). Adds meaning beyond schema titles and types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Save a scenario to disk,' specifying the action (save) and resource (scenario). It distinguishes from siblings like load_scenario and create_scenario.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool versus alternatives like load_scenario or create_scenario. Usage is implied but lacks exclusions or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_afsim_binaryA

Configure the path to the AFSIM simulation binary.

Parameters

binary_path: Absolute path to the AFSIM executable.

Returns

JSON confirmation.

ParametersJSON Schema
NameRequiredDescriptionDefault
binary_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description does not disclose whether the path is validated, persisted, or if it overwrites previous settings. Minimal behavioral insight beyond 'configure'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear purpose, parameters section, and returns section. No superfluous sentences; well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple setter tool with one parameter and an output schema. Lacks usage context and behavioral details but covers the essentials.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to the single parameter by specifying 'Absolute path to the AFSIM executable', which goes beyond the schema's type string. With 0% schema coverage, this is valuable context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool configures the path to the AFSIM simulation binary, with specific verb 'Configure' and resource 'path to the AFSIM simulation binary'. It distinguishes from siblings like set_afsim_home and set_tool_binary_path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., set_afsim_home, set_tool_binary_path). No prerequisites or context provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_afsim_homeA

Set the AFSIM installation root directory.

Parameters

path: Path to AFSIM_HOME (the directory containing bin/, data/, etc.).

Returns

JSON confirmation with detected binaries.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only mentions setting a directory and returning a JSON confirmation. Lacks details on side effects (e.g., global state change, dependencies for other tools).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise: three lines with clear purpose, parameter summary, and return value. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple setter with one parameter and an output schema, the description covers the essential functionality. Could mention impact on other tools, but adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no description for 'path' (0% coverage), but the description adds meaning by specifying the directory contents (bin/, data/, etc.), providing context beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Set' and the resource 'AFSIM installation root directory', distinguishing it from siblings like set_afsim_binary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like set_afsim_binary or set_tool_binary_path, nor any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_tool_binary_pathA

Override the binary path for a specific AFSIM tool.

Parameters

tool: Tool identifier: 'wizard', 'mission', 'warlock', or 'mystic'. path: Absolute path to the tool binary.

Returns

JSON confirmation.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolYes
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavior. It states the action and return type, but does not mention side effects, persistence, validation, or error handling. This is adequate for a simple configuration tool but leaves gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is succinct, front-loaded with the key action, and uses a clear list format for parameters. Every sentence provides necessary information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no nested objects) and the presence of an output schema, the description is nearly complete. It explains the tool's purpose and parameter semantics, though behavioral details like path validation are missing. Context signals indicate 0% schema coverage, so the description compensates adequately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% (no descriptions in schema), but the description adds meaning by listing valid tool identifiers and specifying that path must be absolute. This clarifies usage beyond the raw schema types. Could be improved by adding constraints or examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Override the binary path for a specific AFSIM tool') and lists the valid tool identifiers. It distinctively separates this tool from siblings like set_afsim_binary and set_afsim_home by focusing on individual tool binaries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly specify when to use this tool versus alternatives, nor does it mention prerequisites or when not to use it. While sibling context provides some differentiation, the description lacks direct guidance for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stop_simulationB

Stop a running simulation.

Parameters

run_id: UUID of the simulation run to stop.

Returns

JSON with updated run status.

ParametersJSON Schema
NameRequiredDescriptionDefault
run_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It does not disclose behavior for edge cases (e.g., stopping an already stopped simulation) or any side effects. The return type is mentioned briefly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise and front-loaded, with no wasted words. Every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (1 required parameter, no nested objects), the description covers the main function and return type. However, it omits potential errors or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explains run_id as 'UUID of the simulation run to stop', adding meaning beyond the schema's type-only definition. This clarifies the parameter's role.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Stop a running simulation' with a specific verb and resource, clearly distinguishing from related tools like run_simulation. However, it could be more detailed about the scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as pausing or canceling simulations. The description only states what it does, not context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_scenarioB

Validate a scenario and return errors/warnings.

Parameters

scenario_id: UUID of the scenario to validate.

Returns

JSON with 'valid', 'errors', and 'warnings' lists.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must disclose behavior. It states it returns errors/warnings but does not mention if it modifies state, requires an existing scenario, or has side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short and well-structured with Parameters and Returns sections. Slightly verbose for the low complexity, but no excess.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers basic purpose and return format, but lacks context about prerequisites, side effects, or when validation is needed. With output schema, return detail is partially redundant.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description specifies scenario_id as 'UUID of the scenario to validate', which adds meaning beyond the schema's type string. Coverage is 0%, so this is essential.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb 'Validate' with specific resource 'scenario', and the purpose is distinct from sibling tools like create_scenario or run_simulation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use validation, what prerequisites exist (e.g., scenario must be saved), or how it relates to other tools like run_simulation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.8/5.0
Disambiguation5/5

Each tool targets a distinct action or resource: scenario, platform, component, simulation, results, or configuration. Even closely related tools like run_simulation, run_warlock, run_mission are clearly differentiated by their specific AFSIM binary and purpose. No two tools overlap in functionality.

Naming Consistency5/5

All tools follow a verb_noun naming pattern (e.g., create_scenario, list_platforms, run_simulation). Verbs are descriptive and consistent (create, delete, list, get, set, run, query, etc.). Even longer names like export_results_to_json maintain the pattern with additional qualifiers.

Tool Count3/5

With 37 tools, the server is above the typical range but still appropriate for the complex AFSIM domain. Each tool serves a specific need across scenario creation, platform management, simulation execution, and result analysis. The count is high but not excessive given the breadth of functionality.

Completeness5/5

The tool set covers the full lifecycle: scenario CRUD, platform and component management, simulation execution (multiple binaries), result querying/export, and configuration. There are no critical gaps; all major operations for managing AFSIM simulations are represented.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables Large Language Models or other MCP clients to interact with Ansys/AGI STK (Systems Tool Kit), allowing users to control STK Desktop simulations programmatically or via natural language.
    42
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Aspen Plus process simulations through a standardized MCP interface, supporting simulation control, data access, and flowsheet manipulation.
    32
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to interact with Scout Live platform capabilities through standardized MCP primitives, including tools for app management, deployment, and logging.
    6
    12
    MIT

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/Yookio-Z/AFSIM_MCP'

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