Skip to main content
Glama

exclude_network_on_port_profile

Exclude a VLAN network from a switch port profile so it stops being tagged on every port using that profile. Confirmation is required to apply.

Instructions

Atomically exclude (untag) a VLAN network from a switch port profile.

host: console name, ID, or composite ID (MAC:numericId format). site: site name or ID. profile_id: REQUIRED. The port profile id; from list_port_profiles (its _id). network_id: REQUIRED. The networkconf id to exclude; from list_networks (its id). confirm: must be True to execute. This is a live PUT to a SHARED port profile (its exclusion list affects every switch port using it); it refuses with an error dict when confirm is False, before any controller call.

Inverse of allow_network_on_port_profile: fresh-reads the profile, adds network_id to excluded_networkconf_ids, PUTs, and returns {profile, tagged_networks} with names resolved.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
hostYes
siteYes
confirmNo
network_idYes
profile_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Install Server

TDQS

A4.8/5.0
Behavior5/5

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

No annotations are provided, so the description bears the full burden. It discloses atomicity, that this is a live PUT to a shared port profile, the impact on all switch ports using it, the confirmation guard, and the exact return value with names resolved. This is rich behavioral context well beyond a generic mutation.

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?

Every sentence contributes: opening summary, parameter meanings, validation requirement, shared-profile impact, and the inverse relationship with its behavior. The structure front-loads the core action and then details execution and consequences, with no filler.

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?

An output schema exists, so return details are not required in the description, but it still outlines the returned structure. It covers parameter origins, the mandatory confirm flag, side effects on shared resources, and the inverse operation. Nothing an agent needs to call it correctly is missing.

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?

Schema description coverage is 0%, but the description explains every parameter: host/site formats, profile_id source (list_port_profiles _id), network_id source (list_networks id), and confirm requirement. It fully compensates for the schema's lack of descriptions.

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 clearly states the operation: 'Atomically exclude (untag) a VLAN network from a switch port profile.' The verb 'exclude' and the resource 'VLAN network' from 'switch port profile' precisely define the action. It also names the inverse sibling tool, which helps differentiate its purpose.

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

Usage Guidelines4/5

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

The description provides explicit operational details: confirm must be True to execute, and it refuses with an error dict when False. It also references the inverse tool, allow_network_on_port_profile, guiding when they'd be used. However, it does not explicitly state 'when not to use' scenarios beyond the inverse relationship.

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

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/swkstudios/unifi-fabric-mcp-server'

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