{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Servosity/fortinet-mcp","description":"Audit every client FortiGate for firmware, SSL-VPN exposure, admin accounts and license expiry.","title":"Fortinet MCP","repository":{"url":"https://github.com/servosity/msp-skills","source":"github","subfolder":"skills/fortinet"},"version":"0.1.7","icons":[{"src":"https://raw.githubusercontent.com/servosity/msp-skills/main/docs/assets/social/fortinet/fortinet-512x512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"mcpb","identifier":"https://github.com/Servosity/msp-skills/releases/download/fortinet-v0.1.7/fortinet-mcp.mcpb","version":"0.1.7","fileSha256":"5a46e063ce9d0f1dd3a350261c20ccfb6554fa9065184decd0e3899e6be6905b","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your FortiGate's REST API root, e.g. https://203.0.113.10:8443/api/v2.","isRequired":true,"name":"FORTINET_BASE_URL"},{"description":"The FortiGate REST API admin token (System \u003e Administrators \u003e Create New \u003e REST API Admin). Use a read-only admin profile.","isRequired":true,"isSecret":true,"name":"FORTINET_API_TOKEN"},{"description":"Optional. Path to a devices.toml listing every FortiGate the fleet, audit and policies hygiene commands check, each with a token_file. Leave blank to check only the FortiGate above.","name":"FORTINET_DEVICES"},{"description":"Optional. https://\u003cfortimanager\u003e for the read-only fmg commands. Leave blank if you do not use FortiManager.","name":"FORTINET_FMG_URL"},{"description":"Optional. API key of a FortiManager REST API admin (FortiManager 7.2.2 or later) for the fmg commands.","isSecret":true,"name":"FORTINET_FMG_API_KEY"},{"description":"Optional. FortiCloud IAM API user (with FortiGate Cloud portal permission) for the read-only cloud commands.","name":"FORTINET_CLOUD_API_USER"},{"description":"Optional. Password of the FortiCloud IAM API user. Repeated failed logins lock the FortiCloud account for 15-30 minutes.","isSecret":true,"name":"FORTINET_CLOUD_API_PASSWORD"},{"description":"Optional. global (default), us, eu or jp: the region your FortiGates were provisioned in.","name":"FORTINET_CLOUD_REGION"},{"description":"Optional. Required only when FortiCloud Organizations are enabled.","name":"FORTINET_CLOUD_ACCOUNT_ID"},{"description":"Optional. Set to 1 to expose only read-only mirrored tools and refuse any non-GET execute call.","default":"1","name":"FORTINET_MCP_READ_ONLY"},{"description":"Required only when running the MCP server with --transport http (a remote/hosted deployment); callers must send a matching Authorization: Bearer header. Not needed for the default local stdio transport Claude Desktop uses.","isSecret":true,"name":"FORTINET_MCP_HTTP_TOKEN"},{"description":"Optional. Set to 1 to keep no local copy of API responses: reads go to the API and the response cache is off.","name":"FORTINET_NO_LOCAL_DATA"},{"description":"Optional. Overrides the User-Agent the CLI sends to your FortiGates. Leave blank to use the built-in one.","name":"FORTINET_USER_AGENT"},{"description":"Only used when the MCP server is bound to a tenant-gated client profile. This connector registers no tenant-gated source, so leave it blank.","isSecret":true,"name":"PRINTING_PRESS_CLIENT_PROFILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-11-10T18:30:56.349879Z","publishedAt":"2026-11-10T18:30:56.349879Z","updatedAt":"2026-11-10T18:30:56.349879Z","isLatest":true}}}],"metadata":{"count":1}}
