Skip to main content
Glama
yaylaerkan

palo-alto-bgp-ipsec

by yaylaerkan

panorama_apply_bgp_candidate

Destructive

Apply an approved BGP plan to the candidate configuration using the provided plan ID and hash. Stages changes for review without committing or pushing to firewalls.

Instructions

[DESTRUCTIVE] Applies an approved BGP plan to the candidate configuration. Requires plan_id and plan_hash. Candidate configuration only; no commit or push is performed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
plan_idYes
firewallNoTarget firewall name (from firewalls.json). Required when multiple firewalls are configured; optional otherwise.
plan_hashYes
Install Server

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false; the description reinforces this with the [DESTRUCTIVE] marker and adds a non-obvious behavioral constraint: 'Candidate configuration only; no commit or push is performed.' This meaningfully clarifies scope and side effects beyond the annotations.

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 three short sentences, front-loaded with the destructive warning. Each sentence adds distinct value: the action, the required arguments, and the critical scope limitation. There is no filler or repetition.

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?

For a destructive mutation tool with no output schema and three parameters, the description covers the essential facts: what is applied, what identifiers are needed, and the candidate-only scope. It does not document return values or error conditions, but the action is simple enough that these are lower priority. It could mention how to obtain plan_id/plan_hash, but that is implied by the BGP planning workflow.

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

Parameters2/5

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

Schema description coverage is only 33%: only the optional 'firewall' parameter is described. The description merely states that plan_id and plan_hash are required, without explaining what they represent, where they come from, or why the hash is needed. With such low schema coverage, the description fails to compensate for the missing parameter documentation.

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 names a specific verb ('Applies'), a distinct resource ('approved BGP plan'), and the exact target ('candidate configuration'). This clearly differentiates it from siblings like panorama_apply_ipsec_candidate (IPsec, not BGP) and panorama_remove_bgp_candidate (remove, not apply).

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 the intended context—applying an approved BGP plan to the candidate configuration before any commit or push—but does not explicitly state when to prefer this tool over alternatives, nor does it name exclusions or alternative tools. The usage context is inferable but not spelled out.

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/yaylaerkan/palo-alto-bgp-ipsec'

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