FortiAnalyzer MCP Server (rstierli/fortianalyzer-mcp) is an MCP server listed on the M8ven Trust Index. It scores 48 out of 100, grade D. It declares 89 tools. No publisher has claimed this listing.
Enables AI assistants to interact with FortiAnalyzer for log analysis, reporting, security monitoring, and SOC operations via the JSON-RPC API.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
rstierli
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
find_fortianalyzer_toolDiscover FortiAnalyzer tools by operation name/keywords.
execute_advanced_toolExecute a FortiAnalyzer operation dynamically by tool name.
list_fortianalyzer_categoriesList FortiAnalyzer operation categories.
list_device_groupsList all device groups in an ADOM.
list_device_vdomsList VDOMs for a specific device.
add_deviceAdd a new device to FortiAnalyzer.
delete_deviceDelete a device from FortiAnalyzer.
add_devices_bulkAdd multiple devices to FortiAnalyzer in bulk.
delete_devices_bulkDelete multiple devices from FortiAnalyzer in bulk.
get_device_infoGet detailed information about a specific device.
search_devicesSearch for devices with filters.
get_alertsGet alert events from FortiAnalyzer.
get_alert_countGet count of alerts matching criteria.
acknowledge_alertsAcknowledge one or more alerts.
unacknowledge_alertsUnacknowledge one or more alerts.
get_alert_logsGet log entries associated with alerts.
get_alert_detailsGet extra details for alerts.
add_alert_commentAdd a comment to an alert.
get_alert_incident_statsGet alert and incident statistics.
get_alert_handlersGet event alert-handler (detection-rule) definitions.
run_fortiviewStart a FortiView analytics query.
fetch_fortiviewFetch FortiView query results by TID.
get_fortiview_dataGet FortiView data with automatic TID handling.
get_top_sourcesGet top traffic sources (bandwidth consumers).
get_top_destinationsGet top traffic destinations.
get_top_applicationsGet top applications by bandwidth usage.
get_top_threatsGet top security threats detected.
get_top_websitesGet top websites accessed.
get_top_cloud_applicationsGet top cloud/SaaS applications (Shadow IT view).
get_policy_hitsGet policy hit statistics.
get_incidentsGet security incidents from FortiAnalyzer.
get_incidentGet a specific incident by ID.
get_incident_countGet count of incidents matching criteria.
create_incidentCreate a new security incident.
update_incidentUpdate an existing incident.
get_incident_statsGet incident statistics.
get_ioc_license_stateGet IOC license state.
acknowledge_ioc_eventsAcknowledge IOC events.
run_ioc_rescanStart an IOC rescan.
get_ioc_rescan_statusGet IOC rescan status.
get_ioc_rescan_historyGet IOC rescan history.
run_and_wait_ioc_rescanRun IOC rescan and wait for completion.
query_logsQuery logs from FortiAnalyzer log database.
get_log_search_progressReport status of a query_logs pagination handle.
fetch_more_logsFetch another page of a previous query_logs search using its handle.
cancel_log_searchRelease a pagination handle (and the FAZ task if still alive).
get_log_statsGet log statistics for an ADOM.
get_log_fieldsGet available log fields for a log type -- what you can filter on.
search_traffic_logsSearch traffic logs with common filter criteria.
search_security_logsSearch security logs (IPS, AV, etc.) with common filters.
search_event_logsSearch system event logs.
get_logfiles_stateGet log file state information.
get_pcap_fileGet PCAP file associated with a log entry.
search_ips_logsSearch IPS/attack logs with advanced filtering.
get_pcap_by_sessionDownload PCAP file for a specific session ID.
download_pcap_by_urlDownload PCAP file using a pcapurl from search results.
search_and_download_pcapsSearch for IPS events and download all matching PCAPs.
list_available_pcapsList IPS events that have PCAP files available.
list_report_layoutsList available report layouts in FortiAnalyzer.
list_report_templatesList available read-only report templates in FortiAnalyzer.
run_reportRun a report in FortiAnalyzer.
fetch_reportFetch report status and progress by TID.
get_report_dataDownload completed report data.
get_running_reportsGet currently running reports.
get_report_historyGet report history - list of generated reports.
run_and_wait_reportRun a report and wait for completion.
save_reportDownload, extract, and save a completed report to disk.
get_linked_indicatorsGet IOC indicators linked to an alert or an incident.
get_indicator_enrichmentGet IOC reputation/enrichment for an indicator.
get_system_statusGet FortiAnalyzer system status and version information.
get_ha_statusGet FortiAnalyzer High Availability (HA) status.
list_adomsList all Administrative Domains (ADOMs) in FortiAnalyzer.
get_adomGet detailed information about a specific ADOM.
list_devicesList all devices registered in an ADOM.
get_deviceGet detailed information about a specific device.
list_tasksList all tasks in FortiAnalyzer.
get_taskGet detailed status of a specific task.
wait_for_taskWait for a task to complete.
get_api_ratelimitGet the current API rate limiting configuration.
update_api_ratelimitUpdate the API rate limiting configuration.
get_policy_traffic_profileGet sampled traffic summary per firewall policy.
get_policy_port_analysisGet bounded port/protocol enumeration per firewall policy.
get_policy_protocol_summaryGet lightweight protocol breakdown per firewall policy.
get_endpointsGet UEBA endpoint (asset) records from FortiAnalyzer.
get_endpoint_vulnerabilitiesGet CVE/vulnerability records for UEBA endpoints.
get_endusersGet UEBA end-user (identity) records from FortiAnalyzer.
get_endpoint_statsGet ADOM-wide UEBA endpoint (asset) count stats for a window.
get_enduser_statsGet ADOM-wide UEBA end-user (identity) count stats for a window.
faz_skillRun a FortiAnalyzer skill: an opinionated multi-tool orchestration returning a validated, structured result.
DOCKER_CONTAINERFAZ_HOSTFAZ_USERFAZ_PASSFAZ_ADOMFORTIANALYZER_HOSTyour-faz-hostnameFORTIANALYZER_USERNAMEFORTIANALYZER_PASSWORD=your-passwordFORTIANALYZER_VERIFY_SSLSecurity: Keep =true. For a self-signed FAZ,FAZ_VERIFY_SSLDEFAULT_ADOM"": "root",FAZ_ALLOWED_OUTPUT_DIRSTool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
89/89 tools missing one or more hints — find_fortianalyzer_tool (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); execute_advanced_tool (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); list_fortianalyzer_categories (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +86 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Descriptions match behaviour
2 tools describe read intent but their handlers mutate — download_pcap_by_url (line 688: with open(out_file, "wb") as f:); search_and_download_pcaps (line 907: with open(out_file, "wb") as f:)
Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.
Tool inputs are validated
84/89 tool handlers declare input schemas (94%)
Declare an inputSchema with zod/joi/yup on every tool definition.
Tool handlers catch errors
76/89 tool handlers wrap calls in try/catch (85%)
Wrap each tool handler body in try/catch and return a structured error response.
Tests exist
No test files found
Add tests that exercise each declared tool.
Tool description accuracy
download_pcap_by_url: description implies read-only but handler writes/deletes/executes; search_and_download_pcaps: description implies read-only but handler writes/deletes/executes
Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/rstierli/fortianalyzer-mcp)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check