zscaler/zscaler-mcp-server/application-segment-onboard
Claude Code and agent skill by zscaler/zscaler-mcp-server
- community
Checking that the SKILL.md file is still in the repository.
End-to-end onboarding of a new application in Zscaler Private Access. Walks through the complete dependency chain: (1) App connector group, (2) Server group, (3) Segment group, (4) Application segment with domain names and ports, (5) Access policy rule to grant user/group access. Use when an administrator needs to make an internal application accessible through ZPA.
Install
npx vskill@latest install zscaler/zscaler-mcp-server/application-segment-onboardSKILL.md
ZPA: Onboard Application
Keywords
onboard application, new application, add application, zpa application, publish application, application segment, private access, zpa setup, application access, zero trust application
Overview
Onboard a new application in Zscaler Private Access by walking through the full resource dependency chain. This skill creates all required ZPA constructs -- from connector groups to access policies -- ensuring the application is reachable and properly secured.
Use this skill when: An administrator wants to make a new internal application accessible through ZPA, or needs a guided walkthrough of the full ZPA application onboarding process.
Workflow
Follow this 8-step process for complete application onboarding. Step 0 is new — it picks the segmentation pattern, which then drives the right defaults in every later step.
Step 0: Classify the Application (baseline alignment)
Before creating anything, ask the administrator one question: what kind of application is this? The answer drives the defaults for AC group, server group, segment group, and health_reporting mode. Reference: ZPA Baseline Recommendations v1.0 §App Segmentation Recommendations.
| Class | Examples | App Connector Group | Server Group | Health Reporting | |
|---|---|---|---|---|---|
| Standard (general business app) | Wiki, ticketing, internal SaaS | Communal, per location | Communal per location, dynamic_discovery=True | ON_ACCESS | |
| Sensitive / regulated (Finance, HR, Legal, PCI) | Workday, SAP HCM, financial systems | Dedicated isolated secure-enclave AC group | Dedicated SG bound to enclave AC group only | ON_ACCESS (use CONTINUOUS only for multi-DC critical) | |
| Global (one app, accessed from everywhere) | AD DCs, NTP, internally LB'd web | All location AC groups | Global SG spanning all AC groups | ON_ACCESS | |
| Discovery (wildcard for unknown apps) | *.corp.example.com | All communal AC groups | Global Discovery SG | `NONE` (high volume; per doc page 23) | |
| SIPA (third-party IP allow-listed) | Vendor portals requiring fixed source IP | Dedicated SIPA AC group (separate egress IPs) | SIPA SG bound to SIPA AC group only | ON_ACCESS |
Why this matters: the defaults in this skill historically used health_reporting="ON_ACCESS" for everything. That is wrong for Discovery (should be NONE to avoid probe storms across all communal AC groups) and may be wrong for critical multi-DC apps (where CONTINUOUS lets ZPA route users to the closest healthy server). Pick the class first, then the rest of the workflow uses the right defaults.
If the administrator is unsure, default to Standard and tell them they can re-classify later by updating the segment.
Step 1: Gather Application Details
Collect the following from the administrator:
Required:
- Application name
- Domain name(s) or IP address(es) the application runs on
- TCP and/or UDP port(s) (e.g., 443, 80, 8080, 3389)
- Who should have access (users, groups, or departments)
Optional:
- Description and purpose of the application
- Geographic location of the application servers
- Whether to reuse existing ZPA resources (connector groups, server groups, segment groups)
- Health check requirements
- Whether CNAME resolution is needed
Step 2: Set Up App Connector Group
Check for existing connector groups or create a new one.
List existing:
Create if needed:
Save the connector group id for the next step.
Step 3: Set Up Server Group
Check for existing server groups or create a new one.
List existing:
Create if needed:
Save the server group id for Step 5.
Step 4: Set Up Segment Group
Segment groups logically organize application segments. Check for an existing one or create a new one.
List existing:
Create if needed:
Save the segment group id for the next step.
Step 5: Create Application Segment
This is the core resource that defines the application's reachability.
Set `health_reporting` from the Step 0 classification:
| Class | health_reporting value | |
|---|---|---|
| Standard | "ON_ACCESS" | |
| Sensitive (single-DC) | "ON_ACCESS" | |
| Sensitive (multi-DC critical) | "CONTINUOUS" | |
| Global | "ON_ACCESS" | |
| Discovery | `"NONE"` | |
| SIPA | "ON_ACCESS" |
CONTINUOUS generates one probe per connector in every bound AC group every interval — avoid it on segments bound to large AC groups.
Port configuration options:
For single ports:
For port ranges:
For UDP (e.g., DNS):
For mixed TCP+UDP:
Save the application segment id for the access policy.
Step 6: Create Access Policy Rule
Grant access to the application for specific users or groups.
First, look up the identity entities to reference in the policy:
Then create the access policy rule:
Common action types:
ALLOW-- permit accessDENY-- block accessREQUIRE_APPROVAL-- require explicit approval before access
Step 7: Verify and Summarize
Verify each resource was created correctly:
Present Summary
Common Application Templates
Web Application (HTTPS)
Remote Desktop (RDP)
SSH Access
Database Access (PostgreSQL + MySQL)
Multi-Service Application
Edge Cases
Reusing All Existing Resources
If the admin wants to add an application to existing infrastructure, skip Steps 2-4 and jump to Step 5 with existing IDs:
Wildcard Domains
For applications with many subdomains:
Multiple Access Policies
Create separate rules for different access levels:
When NOT to Use This Skill
- Modifying an existing application -- use individual update tools instead
- Just creating a server group -- use the "create-server-group" skill
- Troubleshooting connectivity -- use the "troubleshoot-user-connectivity" cross-product skill
- Listing or auditing existing applications -- use
zpa_list_application_segments()directly
Quick Reference
Full dependency chain:
zpa_create_app_connector_group(or reuse existing)zpa_create_server_group(requires connector group IDs)zpa_create_segment_group(or reuse existing)zpa_create_application_segment(requires segment group ID + server group IDs)zpa_create_access_policy_rule(references application segment)
Verification tools:
zpa_get_app_connector_group(group_id)zpa_get_server_group(group_id)zpa_get_segment_group(group_id)zpa_get_application_segment(segment_id)zpa_get_access_policy_rule(rule_id)
Identity lookup tools:
get_zpa_scim_group(search)-- find SCIM groups for policy conditionsget_zpa_saml_attribute(search)-- find SAML attributes for policy conditions
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/zpa/application_segment-onboard/SKILL.md
Popularity
- Repository stars
- 39
- Repository forks
- 18
- 7-day trend score
- 18
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 19 Jun 2026, 4 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/zscaler/zscaler-mcp-server/application-segment-onboard)