This record as markdown: /tools/yanhuifair-godot-mcp/add-script-function.md
What add_script_function does on Godot
AI agents use add_script_function to create or update resources in Godot, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Godot environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
body | object | — | Function body |
path | string | Yes | Path to .gd script file |
params | object | — | Parameter names (e.g. ["delta: float"]) |
func_name | string | Yes | Function name |
after_func | object | — | Insert after this function |
return_type | object | — | Return type hint |
Parameters from the server's own tool schema.
Why add_script_function is rated Medium
This tool creates/modifies GDScript code by appending functions. While reversible (functions can be removed), this is a Write operation rather than Execute because it modifies source code itself rather than running code. However, the severity is high because injected functions could later be executed with arbitrary effects, and an AI agent could inadvertently create malicious or broken code.
From the tool's definition The tool description states 'Append a function to GDScript,' which modifies code by adding new functions to scripts. This is a reversible code modification operation.
Risk signalsAccepts file system path (path) · Accepts raw HTML/template content (body)
Attacks that exploit this kind of access
The rule that runs add_script_function safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Godot, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For add_script_function, this is the rule to start with:
add_script_function stays usable, but capped: an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Godot, apply this rule, and every add_script_function call is checked against it from then on.
Questions about add_script_function
Append a function to GDScript. It is categorised as a Write tool in the Godot MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
add_script_function accepts 6 parameters: body, path, params, func_name, after_func, return_type. Required: path, func_name. The full parameter table on this page comes from the server's own tool schema.
Register the Godot MCP server in PolicyLayer and add a rule for add_script_function: 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 Godot. Nothing to install.
add_script_function is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the add_script_function 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 add_script_function. 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.
add_script_function is provided by the Godot MCP server (@yanhuifair/godot-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Godot, and thousands of servers like it.
This server
Across the catalogue