Skip to main content
Glama

add_whitelist_ip

Authorize an IP address to use NodeMaven proxy ports without a password. Specify port count and optional country, region, city, ISP, protocol, or name to configure access.

Instructions

Allow an IP address to use the proxy without a password. Changes the account.

ports_count is how many proxy ports the address gets. country, region, city
and isp take the codes from list_locations. An address removed in the last
hour can be refused as already whitelisted for a while.

Input Schema

NameRequiredDescriptionDefault
ipYes
ispNo
cityNo
nameNo
regionNo
countryNo
protocolNoHTTP
ports_countYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.2

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly=false, destructive=false, openWorld=true), and the description adds real context on top: it is an account-mutating action ('Changes the account') and it discloses the non-obvious rejection edge case where a recently removed address may be refused as already whitelisted. Missing disclosure of what limits apply to ports_count and whether adding is idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core effect in one sentence, then parameter clarifications, then the edge case. Tight enough, though the final sentence is slightly garbled ('can be refused as already whitelisted for a while') and could be clearer.

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

Completeness3/5

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

The output schema means return values need not be explained, and the mutation semantics plus the rejection edge case are covered. Still, for an 8-parameter mutation tool with zero schema descriptions, the unaddressed 'name' and 'protocol' parameters leave the definition short of complete.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate: it explains ports_count's meaning and that country/region/city/isp are codes obtained via list_locations, which is genuinely useful. But 'name' and 'protocol' (the only enum parameter) are never explained, leaving a meaningful share of the 8 parameters undocumented.

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?

States a specific verb and resource — allow an IP to use the proxy without a password — which immediately distinguishes it from list_whitelist_ips and remove_whitelist_ip. The scope ('without a password') clarifies the real effect rather than just restating the name.

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?

Implied usage is clear from the purpose, and the note about codes coming from list_locations routes the agent to a prerequisite sibling. However, there is no explicit statement of when to use this versus remove_whitelist_ip or list_whitelist_ips, and no stated prerequisites (e.g. account/plan limits) beyond the location-code hint.

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