Skip to main content
Glama
ry-ops

fortigate-mcp-server

by ry-ops

update_fortiguard

Triggers FortiGate to contact FortiGuard and refresh entitlements and signature packages. Default dry run reports planned changes and current signature ages; requires a FortiGuard license.

Instructions

Ask the FortiGate to contact FortiGuard now and refresh its entitlements and signature packages (the GUI's 'Check update now'). Needs a FortiGuard license. With dry_run (the default) it only reports what would happen and the current signature ages.

Input Schema

NameRequiredDescriptionDefault
vdomNoVDOM (default: FORTIGATE_VDOM, usually root)
dry_runNoOnly report (default true)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.1.3

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does disclose a critical behavioral fact: dry_run defaults to true, so by default nothing is changed and only a report is produced. That default-safe disclosure is genuinely valuable. It omits expected duration, whether the refresh can be interrupted, and any rate limits on repeated checks.

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?

Three sentences, each earning its place: the action, the prerequisite, and the dry_run default behavior, with the action front-loaded. No filler or restatement of the tool name.

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?

There is no output schema and no annotations, yet the description covers the mutation's side effects and what the dry-run path returns (a report plus signature ages). It is slightly incomplete for a no-annotation mutation in that it doesn't describe the non-dry-run result or how long the FortiGuard contact takes.

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 coverage is 100%, so the baseline is 3, but the description adds real meaning for dry_run: it explains that the flag reports what would happen plus the current signature ages, going beyond the schema's terse 'Only report (default true)'. The vdom parameter is left to 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?

States a specific verb and resource: contact FortiGuard and refresh entitlements and signature packages, with the GUI equivalent ('Check update now') as an anchor. It is clearly distinguished from the read-only sibling get_fortiguard_status because this one triggers an actual refresh action.

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?

Gives a clear trigger condition (the GUI's 'Check update now') and names a hard prerequisite (FortiGuard license). It does not explicitly say when to prefer this over get_fortiguard_status or get_license_status, so the agent must infer that those are read-only checks and this is the action.

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