fortify-fod

use this skill whenever the user wants to list and filter application security findings, run SAST/SCA/DAST scans, discover applications and releases, and manage security scanning using Fortify on Demand (FoD). Triggers include: any mention of 'FoD', 'Fortify on Demand', 'list vulnerabilities', 'run SAST scan', 'run SCA scan', 'run DAST scan', 'list applications', 'list releases', 'package source code', 'security scan', and similar requests indicating interaction with FoD for application security scanning and vulnerability management.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "fortify-fod" with this command: npx skills add crance/agent-skills-fortify/crance-agent-skills-fortify-fortify-fod

Fortify on Demand (FoD) Skill

Fortify on Demand (FoD) integration via Model Context Protocol (MCP).

When to Use This Skill

  • List applications and releases
  • Run security scans (SAST, SCA, DAST, MAST)
  • List security issues/vulnerabilities with filtering by severity, category, etc.
  • Count issues grouped by severity, category, etc.
  • Manage scan configurations and monitor scan progress
  • Generate and download security reports

Available MCP Tools

Only key MCP tools for FoD are listed here.

ToolDescriptionWhen to Use
fcli_fod_session_listList authentication sessionsCheck authentication status
fcli_fod_app_listList applicationsDiscover available applications
fcli_fod_app_getGet details of a specific applicationRetrieve detailed information about an application
fcli_fod_release_listList releasesDiscover available releases
fcli_fod_release_getGet details of a specific releaseRetrieve detailed information about a release
fcli_fod_release_list_assessment_typesList available scan types for releaseDiscover which scan types are available
fcli_fod_issue_listList issues/vulnerabilitiesRetrieve security findings
fcli_fod_issue_updateUpdate vulnerability statusChange analysis tags, add comments, suppress issues
fcli_fod_action_packagePackage source code for scanningPrepare source code for SAST/SCA scans
fcli_fod_sast_scan_setupConfigure SAST scan settingsSet up static analysis scan parameters
fcli_fod_sast_scan_startStart SAST scanUpload package and initiate static scan
fcli_fod_sast_scan_get_configGet SAST scan configurationRetrieve current SAST scan settings (uses release name)
fcli_fod_sast_scan_getGet SAST scan details by scan IDCheck specific scan status (requires scan ID from start response or scan list)
fcli_fod_sast_scan_wait_forWait for SAST scan completionMonitor scan until finished
fcli_fod_oss_scan_startStart SCA/OSS scanUpload package and initiate open source scan
fcli_fod_oss_scan_getGet SCA scan details by scan IDCheck specific SCA scan status (requires scan ID from start response or scan list)
fcli_fod_oss_scan_list_componentsList detected open source componentsView OSS components found in scan
fcli_fod_dast_scan_setup_websiteConfigure website DAST scanSet up dynamic analysis for web apps
fcli_fod_dast_scan_setup_apiConfigure API DAST scanSet up dynamic analysis for APIs
fcli_fod_dast_scan_get_configGet DAST scan configurationRetrieve current DAST scan settings (uses release name)
fcli_fod_dast_scan_startStart DAST scanInitiate dynamic security scan
fcli_fod_report_createCreate security reportGenerate reports from scan results
fcli_fod_report_downloadDownload report fileRetrieve generated report
fcli_fod_report_wait_forWait for report generationMonitor report creation until complete

Parameter Formats

Common formats and examples for key parameters:

ParameterFormatExample
--fod-sessionSession name (REQUIRED for all tools)"default"
--release"<App>:<Release>" - case-sensitive, colon-separated (for *_list, *_scan_setup, *_scan_start, *_scan_get_config tools)"MyApp:MyRelease"
--qualifiedReleaseNameOrId"<App>:<Release>" - case-sensitive, colon-separated (for release_get, app_get tools)"MyApp:MyRelease"
releaseQualifiedScanOrIdScan ID or qualified scan ID (for *_scan_get tools) - Always use scan ID returned from *_scan_start or from *_scan_list"12345" or "MyApp:MyRelease:12345"
--filters-param"<FilterName>:<Value>" - server-side filtering"severityString:Critical"
--includeControl which issue statuses to include. By default, only visible issues returned. Comma-separated values: visible, fixed, suppressed"visible,fixed" or "suppressed"
--embedComma-separated values to include additional data. Valid values: allData, summary, details, recommendations, history, requestResponse, headers, parameters, traces"details,recommendations,history"
filePath to packaged zip or report output"package.zip", "report.pdf"

Authentication

All operations require authentication. Always verify session before any operation:

fcli_fod_session_list refresh-cache=true
  • If Expired = No → proceed
  • If expired → ask user to run locally: fcli fod session login --url <URL> --client-id <id> --client-secret <secret>
  • When running any FoD tool, if authentication error occurs, prompt user to re-authenticate locally.

Note: Reference workflows assume authentication has been verified.

Domain-Specific Guidance

Scan Workflows: Always Check Settings First

Before starting any scan, follow this sequence:

  1. Check existing scan configuration using *_scan_get_config command
  2. If not configured → Always ask user for required settings (language, build tool, framework, etc.)
  3. Never infer settings from workspace - build tools, language versions, and frameworks must be user-confirmed
  4. Package source code (SAST/SCA only) using fcli_fod_action_package
  5. Upload and start scan using appropriate *_scan_start command
  6. Monitor progress using *_scan_wait_for or periodic *_scan_get calls

Packaging Requirements

  • SAST scans: Package source code with fcli_fod_action_package
  • SCA/OSS scans: Package source code with fcli_fod_action_package (same as SAST)
  • DAST scans: No packaging needed - scans live running application
  • MAST scans: Upload mobile app binary (APK/IPA file)
  • Note: To enable Open Source Analysis in a SAST scan, use --oss flag in fcli_fod_sast_scan_setup

Filtering: Prefer --filters-param for Server-Side

  • Prefer --filters-param for server-side filtering (fastest, smallest payloads)
  • Optionally use query as a client-side post-filter when you need a simple match on returned fields
  • Common filters: severityString:Critical, severityString:High, category:SQL Injection

Pagination

  • If pagination.hasMore = true → use pagination-offset for next page
  • Continue until pagination.hasMore = false or pagination.totalRecords reached

Error Recovery

ErrorRecovery
"Session expired"Refer to flow in Authentication section
"Release not found"Run release_list to discover correct names (see Finding Releases)
"Scan not configured"Ask user for scan settings and run *_scan_setup
"Package required"Run fcli_fod_action_package to package source code

Decision Tree: Choosing the Right Approach

User IntentAction
"run SAST scan" / "static analysis"Check config → ask settings → package → sast_scan_start (see SAST Workflow)
"run SCA scan" / "open source scan"Package → oss_scan_start (see SCA Workflow)
"run DAST scan" / "dynamic scan"Check config → ask settings → dast_scan_start (see DAST Workflow)
"list/show vulnerabilities"issue_list with --filters-param + --embed details,recommendations
"how many / count / summary"issue_list and aggregate results client-side
"find release / which release"release_listrelease_get (see Finding Releases)
"show recommendations / how to fix"issue_list with --embed recommendations,history → prioritize Aviator (see Remediation)

Best Practices

DO:

  • ✅ Always verify authentication before operations
  • ✅ Check scan configuration before starting SAST scans
  • ✅ Always ask user for SAST scan settings (language, build tool, framework)
  • ✅ Use --oss flag in sast_scan_setup to enable Open Source Analysis in SAST scans
  • ✅ Use --filters-param for server-side filtering
  • ✅ Use --embed to include details, recommendations, and history
  • ✅ Prioritize Fortify Aviator code fix suggestions in remediation
  • ✅ Use MCP tools over FCLI CLI directly
  • ✅ Monitor long-running scans with *_scan_wait_for

DO NOT:

  • ❌ Guess release names - always discover with release_list if uncertain
  • ❌ Infer SAST scan settings from workspace - always ask user
  • ❌ Skip SAST scan configuration validation
  • ❌ Prompt user for credentials - ask user to run fcli fod session login locally
  • ❌ Start scans without confirming settings with user
  • ❌ Package source code for DAST scans (not needed)

References

Example Workflows

WorkflowUse When User Says...
Run SAST Scan"run SAST scan", "static analysis", "scan source code", "check for code vulnerabilities"
Run SCA Scan"run SCA scan", "open source scan", "check dependencies", "OSS vulnerabilities", "software composition analysis"
Run DAST Scan"run DAST scan", "dynamic scan", "test running application", "web application security test"
List and Filter Vulnerabilities"list vulnerabilities", "show security issues", "filter issues by severity", "critical vulnerabilities"
Find Release"find release", "which release", "list releases", "search for application"
Vulnerability Summary"count vulnerabilities", "show summary", "breakdown by severity", "how many issues"
Remediation Workflow"show recommendations", "how to fix", "remediation advice", "Aviator suggestions", "code fixes"

External Resources

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

fortify-ssc

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

fortify-scsast

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

fortify-scdast

No summary provided by upstream source.

Repository SourceNeeds Review
Security

compliance-evidence-assembler

把审计所需证据整理成目录、清单和缺失项,便于后续评审。;use for compliance, evidence, audit workflows;do not use for 伪造证据, 替代正式审计结论.

Archived SourceRecently Updated