Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add zscaler/zscaler-mcp-server --skill look-up-rule-targetsgit clone --depth 1 https://github.com/zscaler/zscaler-mcp-serverWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/zscaler/zscaler-mcp-server/look-up-rule-targets)<a href="https://agentmods.dev/skills/zscaler/zscaler-mcp-server/look-up-rule-targets"><img src="https://agentmods.dev/badge/skills/zscaler/zscaler-mcp-server/look-up-rule-targets/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/zscaler/zscaler-mcp-server/look-up-rule-targets"><img src="https://agentmods.dev/badge/skills/zscaler/zscaler-mcp-server/look-up-rule-targets.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Rogue Agent · line 191 Skill modifies its own code, configuration, or behavior at runtime. Self-modification enables an agent to escalate privileges, disable safety constraints, or install persistent backdoors.Fix: Prevent the skill from modifying its own code, SKILL.md, or configuration files. Treat skill files as read-only at runtime.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00188 | $0.05438 |
| Opus 5 | $0.00094 | $0.02719 |
| Sonnet 5 | $0.00038 | $0.01088 |
| Haiku 4.5 | $0.00019 | $0.00544 |
Grade A, and why
zia-look-up-rule-targets scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 194 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ZIA: Look Up Rule Targets
Why this skill exists
Every ZIA rule resource (Cloud Firewall, DNS, IPS, URL Filtering, SSL Inspection, Web DLP, File Type Control, Sandbox, Cloud App Control) scopes by the same set of "who/where/when/what-device" target fields:
users,groups,departments— who the rule applies tolocations,location_groups— where the user is connecting fromurl_categories— which URL category the request hitsdevices,device_groups— which managed device the user is onworkload_groups— which workload (cloud-asset) the connection is to/fromlabels— admin-assigned tags for organisation/reportingtime_windows— which time-of-day schedule the rule honours
Every one of those fields takes IDs (or, for url_categories, canonical UPPER_SNAKE strings), not display names. The admin will almost always name them by display name. This skill is the single source of truth for "given a name, find the ID."
Centralising it here means every rule skill (zia-create-firewall-filtering-rule, zia-create-cloud-app-control-rule, etc.) can chain to this one instead of repeating — and re-decaying — the same lookup table.
Hard rules (apply to every lookup)
These rules are non-negotiable and override anything a rule skill might say in passing:
- Read-before-write. For every rule target the admin names, run one lookup with the appropriate
zia_list_*tool before assembling the rule payload. - Empty list is authoritative. If the list call returns no match for an exact-name lookup, the named target does not exist. Stop the rule create. Tell the admin plainly. Do not retry with split keywords, broader filters, larger
page_size, unfiltered listings, or "let me also try without the filter to double-check." One call, one answer. - Never invent IDs. If a lookup returns nothing, never substitute a similar-looking ID, never skip the field that the admin named, never silently drop it from the payload. The rule payload must reflect the admin's intent verbatim or the workflow stops.
- Never narrate the lookup. Don't tell the admin "I'm searching for the user group
Engineering…" — just resolve, build the payload, and report what was applied. If you have to retry quietly (e.g. one retry with a different known-good knob, see thename=vssearch=notes), retry quietly and report only the final outcome. - Don't pre-list targets the admin didn't name. If the admin says "create a rule for users in
Engineering," resolve onlyEngineering. Don't dump the full user-group list as context, don't enumerate departments, don't list time intervals "in case they want one." - One target kind per call. Don't try to bundle a user lookup and a location lookup into one tool call.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 194 lines · 188 tokens per session scan A d7059a50e340
zia-look-up-rule-targets is a skill published in the GitHub repository zscaler/zscaler-mcp-server (50 stars, last pushed 4d ago), licensed MIT. It adds 188 tokens to every session and 5,438 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
jmcomic
Search, browse, inspect album-specific or site-wide comments, list favorite folders, browse, add, and delete favorites, and download manga from JMComic (18comic), obtain the latest Android APK from hect0x7/JMComic-APK, and invoke the upstream jm-view-server jms command for local reading. Use for manga discovery…
ast-grep
Guide for writing ast-grep rules to perform structural code search and analysis. Use when users need to search codebases using Abstract Syntax Tree (AST) patterns, find specific code structures, or perform complex code queries that go beyond simple text search. This skill should be used when users ask to search for…
debug-optimize-lcp
Guides debugging and optimizing Largest Contentful Paint (LCP) using Chrome DevTools MCP tools. Use this skill whenever the user asks about LCP performance, slow page loads, Core Web Vitals optimization, or wants to understand why their page's main content takes too long to appear. Also use when the user mentions…
ue-mcp-epic-routing
Use when deciding between ue-mcp's native category actions and Epic's wrapped ToolsetRegistry tools (the epic actions, incl. the Blueprint graph DSL) for a task in Unreal. Pulls in when authoring Blueprint graph bodies, or any time both a native action and an epic action could do the job and you need to pick.
frontmcp-setup
Use when starting, scaffolding, or organizing a FrontMCP project. Covers creating a new project (CLI scaffold or manual) for Node, Vercel, and other targets; standalone versus Nx-monorepo layout, naming conventions, generators, and dependency rules; composing multiple @App classes, ESM packages, and remote MCP servers…
apitap
ApiTap gives AI agents cheap access to web data through three layers.