Install
$ agentstack add skill-secsilab-zscaler-claude-skills-zscaler-zms ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Zscaler Microsegmentation (ZMS)
Overview
ZMS provides identity-based microsegmentation for workloads. It enforces zero trust policy at the workload level by tagging resources, grouping them, and applying policy rules that control east-west traffic. Use this skill for inventorying ZMS state: agents, resources, policy rules, and app zones.
ZMS uses a GraphQL-based API. The zscaler-mcp-server exposes 20 read-only tools under the zms_ prefix. No write operations (create/update/delete) are available through MCP — those must be done via the ZMS admin portal or the Python SDK (ZMSService).
MCP Tools
ZMS MCP tools are read-only. The full list:
Agents
| Tool | Purpose | |------|---------| | zms_list_agents | List all agents | | zms_get_agent_connection_status_statistics | Aggregate connection-status stats | | zms_get_agent_version_statistics | Aggregate version stats |
Agent Groups
| Tool | Purpose | |------|---------| | zms_list_agent_groups | List all agent groups | | zms_get_agent_group_totp_secrets | Retrieve TOTP secrets for an agent group |
Nonces (Provisioning Keys)
| Tool | Purpose | |------|---------| | zms_list_nonces | List provisioning nonces | | zms_get_nonce | Get a single nonce |
Resources
| Tool | Purpose | |------|---------| | zms_list_resources | List all resources | | zms_get_resource_protection_status | Get protection status for a resource | | zms_get_metadata | Get resource metadata |
Resource Groups
| Tool | Purpose | |------|---------| | zms_list_resource_groups | List all resource groups | | zms_get_resource_group_members | List members of a resource group | | zms_get_resource_group_protection_status | Protection status of a resource group |
Policy Rules
| Tool | Purpose | |------|---------| | zms_list_policy_rules | List configured policy rules | | zms_list_default_policy_rules | List built-in default policy rules |
App Zones
| Tool | Purpose | |------|---------| | zms_list_app_zones | List all app zones |
App Catalog
| Tool | Purpose | |------|---------| | zms_list_app_catalog | List app catalog entries |
Tags
| Tool | Purpose | |------|---------| | zms_list_tag_namespaces | List tag namespaces | | zms_list_tag_keys | List tag keys | | zms_list_tag_values | List tag values |
Authentication
OneAPI OAuth2 with client_credentials grant.
- Token endpoint:
https://.zslogin.net/oauth2/v1/token - API type: GraphQL
MCP tools handle authentication automatically via .mcp.json credentials.
Common Patterns
Inventory Active Agents
- List all agents:
zms_list_agents - Check connection health:
zms_get_agent_connection_status_statistics - Check version distribution:
zms_get_agent_version_statistics - Identify which agent group each belongs to via
zms_list_agent_groups
Audit Resource Protection Coverage
- List resources:
zms_list_resources - For each critical resource, check protection:
zms_get_resource_protection_status - List resource groups:
zms_list_resource_groups - Walk group members:
zms_get_resource_group_members - Confirm group-level protection:
zms_get_resource_group_protection_status
Review Policy Rules
- List configured rules:
zms_list_policy_rules - List default (built-in) rules:
zms_list_default_policy_rules - Cross-reference with resource groups to validate intended traffic flows
Explore Tag Hierarchy
ZMS tags are namespaced (namespace → key → value).
- List namespaces:
zms_list_tag_namespaces - List keys in a namespace:
zms_list_tag_keys - List values for a key:
zms_list_tag_values
Provision a New Agent (Write — Admin Portal or SDK)
Provisioning agents requires write operations not exposed via MCP. Workflow:
- Admin portal: Settings → Provisioning → Generate Nonce
- Deploy ZMS agent on the workload using the nonce
- Verify registration via MCP:
zms_list_agents - Assign agent to group via the admin portal or
ZMSServicePython SDK
Known Limitations
- Read-only via MCP — no
create_*,update_*, ordelete_*tools exist - Write operations require the admin portal or the Python SDK (
from zscaler import ZscalerClient; client.zms.policy_rules.create(...)) - Nonces are single-use — generate a new one for each agent deployment
- Default-deny policy — all traffic flows must be explicitly permitted by a policy rule
- GraphQL schema — for SDK or direct API work, use Context7 to look up exact field names and mutation shapes
MCP Server
The 20 read-only ZMS tools are provided by the zscaler-mcp-server. For write operations, use the Python SDK or the ZMS admin portal — the MCP server does not currently expose ZMS mutations.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: secsilab
- Source: secsilab/zscaler-claude-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.