Medium Risk

generate_tests

Generate comprehensive tests for Stylus contract code. Supports Rust native tests and Foundry Solidity tests.

How to control generate_tests ↓

What generate_tests does on ARBuilder

AI agents use generate_tests to create or update resources in ARBuilder — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your ARBuilder environment.

Medium Risk

Why generate_tests needs a policy

This tool creates test files, which are modifications to a codebase—a reversible write operation. While test generation itself is lower-risk than production code execution, generated tests could contain bugs or malicious patterns if the AI agent crafts them adversarially. However, tests are typically reviewed before execution and do not directly execute arbitrary operations, so this is Write rather than Execute.

From the tool's definition Tool generates test code files for Stylus contracts. The verb 'generate' and context of creating 'comprehensive tests' indicates it produces new code artifacts that are written to storage or returned as generated output.

Documented attack patterns abuse exactly the kind of access generate_tests gives an agent:

How to control generate_tests

PolicyLayer is an MCP gateway — it sits between your AI agents and ARBuilder, and nothing reaches the server without passing your rules. This is the rule we recommend for generate_tests:

policy.json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "generate_tests": {
      "limits": [
        {
          "counter": "generate_tests_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}

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

  1. Create a free account and register ARBuilder — nothing to install.
  2. Add this policy — paste it, or build it visually.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
LIMIT THIS TOOL →

Free to start. No card required.

Related tools and policies

Go deeper

Questions about generate_tests

What does the generate_tests tool do? +

Generate comprehensive tests for Stylus contract code. Supports Rust native tests and Foundry Solidity tests. It is categorised as a Write tool in the ARBuilder MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on generate_tests? +

Register the ARBuilder MCP server in PolicyLayer and add a rule for generate_tests: 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 ARBuilder. Nothing to install.

What risk level is generate_tests? +

generate_tests is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit generate_tests? +

Yes. Add a rate_limit block to the generate_tests 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.

How do I block generate_tests completely? +

Set action: deny in the PolicyLayer policy for generate_tests. 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 generate_tests? +

generate_tests is provided by the ARBuilder MCP server (quantum3-labs/arbuilder). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every ARBuilder tool call.

Start from ARBuilder, 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.

18 ARBuilder tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

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

Message sent.

We'll get back to you soon.