Skip to main content
Glama
rstierli

FortiManager MCP Server

by rstierli

create_device_wtp

Register a managed FortiAP in a device's device DB by serial number and WTP profile, so the AP mapping exists before install and profile-only wireless setups survive install_device_settings.

Instructions

Register a managed FortiAP in a device's device DB.

This is the wireless-controller.wtp table: the mapping from a physical AP's serial number to the profile it runs. A wtp-profile that exists in the device DB but is not referenced by any wtp entry is pruned by FortiManager on install, so registering the AP here is required before a profile-only setup survives install_device_settings.

Args: device: Managed device name wtp_id: FortiAP serial number (the wtp-id / table mkey) wtp_profile: FortiAP (WTP) profile name to assign name: Friendly display name admin: Authorization state: "discovered" (awaiting authorization), "enable" (authorized) or "disable"; default "discovered" location: Free-text location string comment: Free-text comment vdom: VDOM to register the AP in (default "root")

Returns: Creation result

Input Schema

NameRequiredDescriptionDefault
nameNo
vdomNoroot
adminNodiscovered
deviceYes
wtp_idYes
commentNo
locationNo
wtp_profileYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.12.0

TDQS

A4.4/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden, and it does disclose a non-obvious system behavior: unreferenced wtp-profiles are pruned by FortiManager at install time, making this registration a prerequisite for settings to persist. It does not cover permissions/ADOM locking, behavior on duplicate wtp_id, or whether the call is idempotent, so it stops short of full transparency for a mutation tool.

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?

The purpose and the pruning rationale are front-loaded before the parameter list, and every line of the Args block carries information. The sole waste is the 'Returns: Creation result' line, which adds nothing given an output schema exists.

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 an eight-parameter mutation with no annotations, the description covers purpose, prerequisite rationale, and every argument, and a return explanation is unnecessary because an output schema exists. Remaining gaps are minor: no mention of failure modes (duplicate serial, nonexistent wtp_profile) or of the related update/delete tools an agent will need next.

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 coverage is 0%, so the description must compensate, and it documents all eight parameters: device, wtp_id (explicitly identified as the serial number and table mkey), wtp_profile, name, admin with its three valid values and the 'discovered' default, location, comment, and vdom with its 'root' default. The enum values for admin are supplied only here, not in the schema.

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 gives a specific verb and resource ('Register a managed FortiAP in a device's device DB') and then names the exact underlying table (wireless-controller.wtp) as the serial-to-profile mapping. That domain framing lets an agent distinguish this from the profile-management siblings such as create_device_wtp_profile or assign_vap_to_wtp_profile without opening the schema.

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?

It states a concrete precondition for use: a wtp-profile not referenced by any wtp entry is pruned on install, so registration is required for a profile-only setup to survive install_device_settings. That is clear 'when to use' context, but it never names alternatives (update_device_wtp, delete_device_wtp, list_device_wtps) or says when not to use it, e.g. when the AP entry already exists.

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

Deploy Server

Other Tools