AI agents invoke run_simulation to trigger actions in Openstudio. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call — builds kicked off, notifications sent, workflows started.
This tool executes an external simulation engine (EnergyPlus) based on the current model state. Misuse could consume computational resources, produce misleading analysis results used in decision-making, or interfere with legitimate simulation workflows.
From the tool's definition Tool name is 'run_simulation' and the server description explicitly states it 'runs EnergyPlus simulations'. Running simulations is an Execute operation that triggers external computational processes whose effects depend on model configuration arguments.
Documented attack patterns abuse exactly the kind of access run_simulation gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and Openstudio, and nothing reaches the server without passing your rules. This is the rule we recommend for run_simulation:
{
"version": "1",
"default": "deny",
"tools": {
"run_simulation": {
"limits": [
{
"counter": "run_simulation_rate",
"window": "minute",
"max": 10,
"scope": "grant"
}
]
}
}
} run_simulation stays usable, but rate-capped — a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
Free to start. No card required.
run_simulation. It is categorised as a Execute tool in the Openstudio MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Openstudio MCP server in PolicyLayer and add a rule for run_simulation: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Openstudio. Nothing to install.
run_simulation is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the run_simulation rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for run_simulation. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
run_simulation is provided by the Openstudio MCP server (natlabrockies/openstudio-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Start from Openstudio, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.
Free to start. No card required.
146 Openstudio tools catalogued and risk-classified — across an index of 43,000+ MCP servers.