remove_from_allowlist
Remove a package from a firewall's allowlist.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| firewall_id | Yes | Firewall public ID | |
| package_name | Yes | Package name to remove |
Remove a package from a firewall's allowlist.
| Name | Required | Description | Default |
|---|---|---|---|
| firewall_id | Yes | Firewall public ID | |
| package_name | Yes | Package name to remove |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden for behavioral disclosure. Fails to specify if removal is idempotent (safe to call if already removed), what error conditions exist, whether changes are immediate or propagated, or required permissions. 'Remove' implies mutation but lacks safety context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 9 words with no redundancy. Action verb leads, every word earns its place. Appropriate density for a 2-parameter mutation tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for basic invocation but incomplete given zero annotations and no output schema. Missing behavioral details (idempotency, error handling, propagation delays) that would help an agent handle responses and edge cases for this mutation operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both firewall_id and package_name. Description adds minimal semantic value beyond the schema, primarily establishing the allowlist context relationship. Baseline 3 is appropriate since schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb (Remove), resource (package), and scope (firewall's allowlist). Implicitly distinguishes from 'add_to_allowlist' via opposite verb and from 'remove_from_denylist' via target list, though it doesn't explicitly name siblings or explain functional differences between allowlist vs denylist removal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. Does not explain when to remove from allowlist versus adding to denylist (different security postures), nor prerequisites like firewall state or package existence requirements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.