Skip to main content
Glama

ip_ban_set

Ban or unban IP addresses or CIDR blocks through AWS WAF, security groups, or NACL configurations. Accepts single or bulk IPs, applying to a named config or a site's WebACL.

Instructions

Ban or unban IP(s)/CIDR(s) via a named WAF/SecurityGroup/NACL config OR via a site's WebACL. Accepts a single ip_address (IP or CIDR), a bulk ip_addresses[] list, or a 'site' (WebACL ARN, ALB ARN, or instance id/name) that resolves the WebACL actually fronting the box. Returns an applied/failed split. Mutates live traffic rules — confirm with the user first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ip_addressNoAn IPv4/IPv6 address or CIDR to ban/unban.
cidrNoAlias for ip_address accepting a CIDR block.
ip_addressesNoBulk list of IPs/CIDRs to ban/unban.
config_nameNoName of the IP-ban config (see ip_ban_list_configs).
siteNoWebACL ARN, ALB ARN, or instance id/name — bans into the WebACL fronting it (alternative to config_name).
regionNoAWS region override for the site path.
actionNo'ban' to block, 'unban' to remove a block.ban
Behavior4/5

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

Without annotations, the description carries the behavioral disclosure burden. It explicitly states mutation of live traffic rules and requires user confirmation. It also mentions the return format ('applied/failed split'). However, it lacks details on idempotency or permissions.

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?

Three sentences efficiently cover purpose, input types, return format, and a critical safety warning. No redundancy; each sentence serves a distinct purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no output schema), the description adequately covers the core functionality, input alternatives, and mutation warning. Missing are parameter precedence rules and the effect of the 'region' parameter, but it remains functional for selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by explaining how 'site' resolves the WebACL, the return split, and the relationship between parameters (e.g., ip_address vs ip_addresses). This goes beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the function: ban/unban IPs via named config or site's WebACL. It uses specific verbs and resources, but does not explicitly differentiate from the sibling tool 'block_ip'.

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

Usage Guidelines3/5

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

The description implies usage (ban/unban IPs via config or site) and includes a user confirmation warning, but no explicit guidance on when to use this tool versus alternatives like 'block_ip' or 'waf_rate_rule_set'.

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/zb-ss/servonaut'

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