{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Servosity/sonicwall-mcp","description":"Cyber-insurance posture for a whole SonicWall fleet: firmware, advisories, MFA, SSL-VPN exposure","title":"SonicWall MCP","repository":{"url":"https://github.com/servosity/msp-skills","source":"github","subfolder":"skills/sonicwall"},"version":"0.1.0","icons":[{"src":"https://raw.githubusercontent.com/servosity/msp-skills/main/docs/assets/social/sonicwall/sonicwall-512x512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"mcpb","identifier":"https://github.com/Servosity/msp-skills/releases/download/sonicwall-v0.1.0/sonicwall-mcp.mcpb","version":"0.1.0","fileSha256":"a2308ecac681e65e50e24ce9dc274e4ce3fe3e8e65be2f3b367cb19c98565074","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your MySonicWall API key, sent as X-API-KEY. nsm-login (CLI or the nsm_login tool) mints the NSM session token from it, and licence and blind-spots checks read MySonicWall with it. Use an account whose NSM role is read-only.","isRequired":true,"isSecret":true,"name":"SONICWALL_MSW_API_KEY"},{"description":"Optional override; leave blank. Run `sonicwall-cli nsm-login` (or the nsm_login tool) instead, which saves the token. A pasted token expires after 8 hours (15 minutes idle) and keeps overriding the saved one.","isSecret":true,"name":"SONICWALL_NSM_TOKEN"},{"description":"NSM SaaS region in https://nsm-{region}.sonicwall.com: uswest (default) or eucentral for EU portals.","default":"uswest","name":"SONICWALL_REGION"},{"description":"Optional; leave blank. Sends every NSM and MySonicWall call to this base URL instead, for tests and mock servers.","name":"SONICWALL_BASE_URL"},{"description":"Optional. Set to 1 to hide tools that change NSM, MySonicWall or firewall state and refuse non-GET execute calls. Tools still write local state: the response cache, posture snapshots and learning entries.","name":"SONICWALL_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. Leave blank for Claude Desktop.","isSecret":true,"name":"SONICWALL_MCP_HTTP_TOKEN"},{"description":"Optional. Overrides the User-Agent the CLI sends to NSM and MySonicWall. Leave blank to use the built-in one.","name":"SONICWALL_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-10-16T08:33:44.964101Z","publishedAt":"2026-10-16T08:33:44.964101Z","updatedAt":"2026-10-16T08:33:44.964101Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Servosity/sonicwall-mcp","description":"Cyber-insurance posture for a whole SonicWall fleet: firmware, advisories, MFA, SSL-VPN exposure","title":"SonicWall MCP","repository":{"url":"https://github.com/servosity/msp-skills","source":"github","subfolder":"skills/sonicwall"},"version":"0.1.1","icons":[{"src":"https://raw.githubusercontent.com/servosity/msp-skills/main/docs/assets/social/sonicwall/sonicwall-512x512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"mcpb","identifier":"https://github.com/Servosity/msp-skills/releases/download/sonicwall-v0.1.1/sonicwall-mcp.mcpb","version":"0.1.1","fileSha256":"2c915e4fbc741ab9a76b8f470070b6ff330fb20b3ae5446e882169a254f964d3","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your MySonicWall API key, sent as X-API-KEY. nsm-login (CLI or the nsm_login tool) mints the NSM session token from it, and licence and blind-spots checks read MySonicWall with it. Use an account whose NSM role is read-only.","isRequired":true,"isSecret":true,"name":"SONICWALL_MSW_API_KEY"},{"description":"Optional override; leave blank. Run `sonicwall-cli nsm-login` (or the nsm_login tool) instead, which saves the token. A pasted token expires after 8 hours (15 minutes idle) and keeps overriding the saved one.","isSecret":true,"name":"SONICWALL_NSM_TOKEN"},{"description":"NSM SaaS region in https://nsm-{region}.sonicwall.com: uswest (default) or eucentral for EU portals.","default":"uswest","name":"SONICWALL_REGION"},{"description":"Optional; leave blank. Sends every NSM and MySonicWall call to this base URL instead, for tests and mock servers.","name":"SONICWALL_BASE_URL"},{"description":"Optional. Set to 1 to hide tools that change NSM, MySonicWall or firewall state and refuse non-GET execute calls. Tools still write local state: the response cache, posture snapshots and learning entries.","name":"SONICWALL_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. Leave blank for Claude Desktop.","isSecret":true,"name":"SONICWALL_MCP_HTTP_TOKEN"},{"description":"Optional. Overrides the User-Agent the CLI sends to NSM and MySonicWall. Leave blank to use the built-in one.","name":"SONICWALL_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-10-22T02:18:17.44157Z","publishedAt":"2026-10-22T02:18:17.44157Z","updatedAt":"2026-10-22T02:18:17.44157Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Servosity/sonicwall-mcp","description":"Cyber-insurance posture for a whole SonicWall fleet: firmware, advisories, MFA, SSL-VPN exposure","title":"SonicWall MCP","repository":{"url":"https://github.com/servosity/msp-skills","source":"github","subfolder":"skills/sonicwall"},"version":"0.1.2","icons":[{"src":"https://raw.githubusercontent.com/servosity/msp-skills/main/docs/assets/social/sonicwall/sonicwall-512x512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"mcpb","identifier":"https://github.com/Servosity/msp-skills/releases/download/sonicwall-v0.1.2/sonicwall-mcp.mcpb","version":"0.1.2","fileSha256":"fabf03fe93bcecdbd7343207daec97b005fda8349a6e9b312cfe3bd7050f36d0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your MySonicWall API key, sent as X-API-KEY. nsm-login (CLI or the nsm_login tool) mints the NSM session token from it, and licence and blind-spots checks read MySonicWall with it. Use an account whose NSM role is read-only.","isRequired":true,"isSecret":true,"name":"SONICWALL_MSW_API_KEY"},{"description":"Optional override; leave blank. Run `sonicwall-cli nsm-login` (or the nsm_login tool) instead, which saves the token. A pasted token expires after 8 hours (15 minutes idle) and keeps overriding the saved one.","isSecret":true,"name":"SONICWALL_NSM_TOKEN"},{"description":"NSM SaaS region in https://nsm-{region}.sonicwall.com: uswest (default) or eucentral for EU portals.","default":"uswest","name":"SONICWALL_REGION"},{"description":"Optional; leave blank. Sends every NSM and MySonicWall call to this base URL instead, for tests and mock servers.","name":"SONICWALL_BASE_URL"},{"description":"Optional. Set to 1 to hide tools that change NSM, MySonicWall or firewall state and refuse non-GET execute calls. Tools still write local state: the response cache, posture snapshots and learning entries.","default":"1","name":"SONICWALL_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. Leave blank for Claude Desktop.","isSecret":true,"name":"SONICWALL_MCP_HTTP_TOKEN"},{"description":"Optional. Overrides the User-Agent the CLI sends to NSM and MySonicWall. Leave blank to use the built-in one.","name":"SONICWALL_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-10-23T05:41:18.323842Z","publishedAt":"2026-10-23T05:41:18.323842Z","updatedAt":"2026-10-23T05:41:18.323842Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Servosity/sonicwall-mcp","description":"Cyber-insurance posture for a whole SonicWall fleet: firmware, advisories, MFA, SSL-VPN exposure","title":"SonicWall MCP","repository":{"url":"https://github.com/servosity/msp-skills","source":"github","subfolder":"skills/sonicwall"},"version":"0.1.3","icons":[{"src":"https://raw.githubusercontent.com/servosity/msp-skills/main/docs/assets/social/sonicwall/sonicwall-512x512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"mcpb","identifier":"https://github.com/Servosity/msp-skills/releases/download/sonicwall-v0.1.3/sonicwall-mcp.mcpb","version":"0.1.3","fileSha256":"1a589ed3fc7e66ed49794b0357fcde224507ed31deb81931aff67d771ea47f9e","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your MySonicWall API key, sent as X-API-KEY. nsm-login (CLI or the nsm_login tool) mints the NSM session token from it, and licence and blind-spots checks read MySonicWall with it. Use an account whose NSM role is read-only.","isRequired":true,"isSecret":true,"name":"SONICWALL_MSW_API_KEY"},{"description":"Optional override; leave blank. Run `sonicwall-cli nsm-login` (or the nsm_login tool) instead, which saves the token. A pasted token expires after 8 hours (15 minutes idle) and keeps overriding the saved one.","isSecret":true,"name":"SONICWALL_NSM_TOKEN"},{"description":"NSM SaaS region in https://nsm-{region}.sonicwall.com: uswest (default) or eucentral for EU portals.","default":"uswest","name":"SONICWALL_REGION"},{"description":"Optional; leave blank. Sends every NSM and MySonicWall call to this base URL instead, for tests and mock servers.","name":"SONICWALL_BASE_URL"},{"description":"Optional. Set to 1 to hide tools that change NSM, MySonicWall or firewall state and refuse non-GET execute calls. Tools still write local state: the response cache, posture snapshots and learning entries.","default":"1","name":"SONICWALL_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. Leave blank for Claude Desktop.","isSecret":true,"name":"SONICWALL_MCP_HTTP_TOKEN"},{"description":"Optional. Overrides the User-Agent the CLI sends to NSM and MySonicWall. Leave blank to use the built-in one.","name":"SONICWALL_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-10-23T15:46:22.879845Z","publishedAt":"2026-10-23T15:46:22.879845Z","updatedAt":"2026-10-23T15:46:22.879845Z","isLatest":true}}}],"metadata":{"count":4}}
