Skip to main content
Glama

create_nat_rule

Create SNAT, DNAT, or REFLEXIVE NAT rules on a Tier-1 gateway to translate source or destination IP addresses. Provide gateway ID, rule ID, and network parameters to configure address translation.

Instructions

[WRITE] Create a NAT rule on a Tier-1 gateway's USER NAT section.

Run list_tier1_gateways for tier1_id and list_nat_rules to avoid an id clash — the same rule_id overwrites. The gateway must have an edge cluster (see create_tier1_gateway) or NAT cannot be realized, and TIER1_NAT advertisement must be set via update_tier1_gateway for the translated address to be reachable from outside. Returns the created rule dict, else {"error", "hint"}. Then confirm with list_nat_rules; delete_nat_rule is the inverse.

Args: tier1_id: Gateway ID, as returned by list_tier1_gateways. rule_id: Unique ID for the NAT rule. action: "SNAT", "DNAT" or "REFLEXIVE" (default "DNAT"). source_network: Source CIDR (required for SNAT). destination_network: Destination CIDR (required for DNAT). translated_network: Translated network/IP (required for all three). target: NSX Manager target from config (default if omitted).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNoDNAT
targetNo
rule_idYes
tier1_idYes
source_networkNo
translated_networkNo
destination_networkNo
Behavior5/5

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

Beyond the annotations (readOnlyHint=false), the description warns that the same rule_id overwrites, which is a crucial behavioral trait. It also discloses the need for an edge cluster and TIER1_NAT advertisement for the NAT to be realized, and describes the return value including error hints. No contradiction with annotations is present.

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 brief purpose line, critical usage warnings, and a clear Args list. Despite the length, every sentence adds necessary information and no redundant filler is present.

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?

For a tool with no output schema and complex prerequisites, the description covers all necessary context: how to obtain IDs, the overwrite risk, upstream requirements, return format, and confirmation step. It is complete enough for an agent to select and invoke the tool correctly.

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 schema description coverage at 0%, the description fully compensates by explaining each parameter's purpose, including required conditions (source_network for SNAT, destination_network for DNAT) and defaults (action default 'DNAT', target default omitted). This is far beyond what the bare schema provides.

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 starts with 'Create a NAT rule on a Tier-1 gateway's USER NAT section', clearly stating the verb, resource, and specific location. It distinguishes itself from siblings like list_nat_rules and delete_nat_rule by its create focus and explicit placement.

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

Usage Guidelines5/5

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

It explicitly instructs to run list_tier1_gateways and list_nat_rules to avoid ID clashes, names create_tier1_gateway and update_tier1_gateway as prerequisites, and identifies delete_nat_rule as the inverse. These are concrete, actionable guidelines that also reference sibling tools appropriately.

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

Install Server

Other Tools

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/vmware-skills/VMware-NSX'

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