Skip to main content
Glama
rstierli

FortiManager MCP Server

by rstierli

update_ssl_ssh_profile

Update specific SSL/SSH inspection profile settings in FortiManager while leaving all unspecified fields unchanged.

Instructions

Update an SSL/SSH inspection profile.

Only specified fields will be updated.

Args: adom: ADOM name name: Profile name comment: New comment ssl_inspection: Generic SSL inspection level ("disable", "certificate-inspection", or "deep-inspection") https_inspection: HTTPS inspection level ("disable", "certificate-inspection", or "deep-inspection") caname: New CA certificate(s) (datasource names, replaces existing) untrusted_caname: New untrusted CA certificate(s) (replaces existing) server_cert: New server certificate(s) (replaces existing) server_cert_mode: Re-sign or replace the server's certificate mapi_over_https: Enable/disable inspection of MAPI over HTTPS rpc_over_https: Enable/disable inspection of RPC over HTTPS

Returns: dict: Update result with keys: - status: "success" or "error" - message: Status or error message

Input Schema

NameRequiredDescriptionDefault
adomYes
nameYes
canameNo
commentNo
server_certNo
rpc_over_httpsNo
ssl_inspectionNo
mapi_over_httpsNo
https_inspectionNo
server_cert_modeNo
untrusted_canameNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.12.0

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does substantial work: it discloses PATCH-style partial update semantics and explicitly flags which fields replace existing values wholesale (caname, untrusted_caname, server_cert). It omits permission/lock requirements, reversibility, and whether a follow-up commit is needed, which keeps it below a 5 for an unannotated 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 update semantics and partial-update caveat are front-loaded, followed by a scannable per-argument list. The Returns block partially duplicates the existing output schema, which is wasted space, but overall the text is efficient for an 11-parameter tool.

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?

All parameters are explained and the return keys are described (redundantly, since an output schema exists). For a mutation tool the main missing pieces are operational context: required permissions, ADOM lock state, and whether a commit follows.

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

Parameters4/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, and it documents all 11 parameters including the array-replacement behavior for certificate fields. It supplies enumerated values for ssl_inspection and https_inspection but leaves server_cert_mode, mapi_over_https, and rpc_over_https under-specified (no explicit value set beyond "Enable/disable").

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Update an SSL/SSH inspection profile") that is trivially separable from sibling create_/get_/list_/delete_ssl_ssh_profile tools. It doesn't explicitly name those siblings or the scope of the object being modified, but the intent is unambiguous.

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?

"Only specified fields will be updated" implies this is the tool for partial modification of an existing profile, which is useful. However, there is no statement about prerequisites (e.g., the profile must exist, ADOM locking, whether a commit is required afterward) or when to prefer this over delete-and-recreate or create_ssl_ssh_profile.

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