Critical Risk →

material

Materials: create, read, parameters, shading, textures, and graph authoring (expression nodes, connections). Actions: - read: Read material structure. Params: assetPath - list_parameters: List overridable parameters. Params: assetPath - set_parameter: Set parameter on MaterialInstance. Params: a...

High parameter count (37 properties)

Part of the Ue MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.

ue-mcp Destructive Risk 4/5

AI agents may call material to permanently remove or destroy resources in Ue. Without a policy, an autonomous agent could delete critical data in a loop with no way to undo the damage. Intercept blocks destructive tools by default and requires explicit human approval before enabling them.

Without a policy, an AI agent could call material in a loop, permanently destroying resources in Ue. There is no undo for destructive operations. Intercept blocks this tool by default and only allows it when a human explicitly approves the action.

Destructive tools permanently remove data. Block by default. Only enable with explicit approval workflows.

ue.yaml
tools:
  material:
    rules:
      - action: deny
        reason: "Blocked by default — enable with approval"

See the full Ue policy for all 20 tools.

Tool Name material
Category Destructive
MCP Server Ue MCP Server
Risk Level Critical

View all 20 tools →

Agents calling destructive-class tools like material have been implicated in these attack patterns. Read the full case and prevention policy for each:

Browse the full MCP Attack Database →

Other tools in the Destructive risk category across the catalogue. The same policy patterns (deny, require_approval) apply to each.

material is one of the critical-risk operations in Ue. For the full severity-focused view — only the critical-risk tools with their recommended policies — see the breakdown for this server, or browse all critical-risk tools across every MCP server.

What does the material tool do? +

Materials: create, read, parameters, shading, textures, and graph authoring (expression nodes, connections). Actions: - read: Read material structure. Params: assetPath - list_parameters: List overridable parameters. Params: assetPath - set_parameter: Set parameter on MaterialInstance. Params: assetPath, parameterName, parameterType, value - set_expression_value: Set value on expression node. Params: materialPath, expressionIndex, value - disconnect_property: Disconnect a material property input. Params: materialPath, property - create_instance: Create material instance. Params: parentPath, name?, packagePath? - create: Create material. Params: name, packagePath? - set_shading_model: Set shading model. Params: assetPath, shadingModel - set_blend_mode: Set blend mode. Params: assetPath, blendMode - set_base_color: Set base color. Params: assetPath, color - connect_texture: Connect texture to property. Params: materialPath, texturePath, property - add_expression: Add expression node. Params: materialPath, expressionType, name?, parameterName? - connect_expressions: Wire two expressions. Params: materialPath, sourceExpression, sourceOutput?, targetExpression, targetInput? - connect_to_property: Wire expression to material output. Params: materialPath, expressionName, outputName?, property - list_expressions: List expression nodes. Params: materialPath - delete_expression: Remove expression. Params: materialPath, expressionName - list_expression_types: List available expression types - recompile: Recompile material. Params: materialPath - duplicate: Duplicate material asset. Params: sourcePath, destinationPath - validate: Validate material graph — find orphans, broken refs. Params: assetPath - get_shader_stats: Shader compile stats, sampler+param counts. Params: assetPath - export_graph: Export material graph as JSON. Params: assetPath - import_graph: Rebuild graph from JSON. Params: assetPath, nodes, propertyConnections? - build_graph: Build graph from spec. Params: assetPath, nodes, propertyConnections? - render_preview: Render preview PNG. Params: assetPath, outputPath, width?, height? - begin_transaction: Begin undo transaction. Params: label? - end_transaction: End undo transaction. It is categorised as a Destructive tool in the Ue MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

How do I enforce a policy on material? +

Add a rule in your Intercept YAML policy under the tools section for material. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the Ue MCP server.

What risk level is material? +

material is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit material? +

Yes. Add a rate_limit block to the material rule in your Intercept 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.

How do I block material completely? +

Set action: deny in the Intercept policy for material. 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.

What MCP server provides material? +

material is provided by the Ue MCP server (ue-mcp). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policies on Ue

Open source. One binary. Zero dependencies.

npx -y @policylayer/intercept
github.com/policylayer/intercept →
// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.