Run your directory from wherever you already work.
This is the official Agent Plugins package for JumpCloud. It connects any compatible AI agent to the JumpCloud MCP server and ships the operational knowledge that makes the connection useful — how access actually flows through groups, what a safe offboarding looks like, and which tools you should never fan out across a list.
One install, in any conformant client:
"Offboard Alice Chen — suspend her, lock her MacBook, pull her out of every group, and tell me which SaaS licenses I can reclaim."
"Which devices are missing critical patches and aren't covered by any patch policy?"
"Who can reach the production AWS app, and how did each of them get it?"
jumpcloud-admin-agent-plugin/
├── .agents/plugins/marketplace.json # Codex marketplace catalog
├── .github/workflows/validate.yml # CI runs ./scripts/validate.sh
├── CONTRIBUTING.md
├── LICENSE # MIT (root)
├── README.md
├── scripts/
│ ├── validate.sh
│ └── validate_skills.py
└── plugins/
└── jumpcloud-admin/ # the installable plugin root
├── LICENSE # MIT (same terms)
├── plugin.json # Agent Plugins 1.0.0 manifest
├── mcp.json # JumpCloud remote MCP (Streamable HTTP)
└── skills/
├── jumpcloud-admin/ # orientation, resource model, tool catalog
├── jumpcloud-directory-search/ # aggregate questions in one call
├── jumpcloud-user-lifecycle/ # onboarding, recovery, offboarding
├── jumpcloud-device-fleet/ # inventory, commands, patch, lock/erase
├── jumpcloud-access-audit/ # entitlements and access reviews
├── jumpcloud-saas-spend/ # shadow IT, licenses, reclaimable cost
└── jumpcloud-audit-events/ # Directory Insights incident timelines
The plugin lives under plugins/ so the repo can also act as a marketplace catalog without
putting non-portable client files inside the plugin root. This mirrors
openai/plugins.
The MCP server exposes 100+ tools across users, devices, groups, SSO applications, SaaS
management, policies, Apple MDM, patch management, alerts, identity providers, Active
Directory, and Directory Insights — plus search_api_execute, which answers aggregate
questions like "how many devices per OS version" in a single call instead of a listing
loop.
The skills are the part you can't get from the tool list. They encode the resource model (access is granted through groups, never on the user record), the safe ordering for irreversible work (suspend before you delete, lock before you erase), and the failure modes that bite in practice — orphaned SaaS accounts that survive offboarding, patch gaps caused by policy coverage holes rather than offline machines, commands whose blast radius nobody checked.
Skills load progressively: an agent sees only the descriptions until a task actually calls for one, so the package costs almost nothing until it's doing work.
This package targets Agent Plugins 1.0.0. Clients that implement that standard are listed on agent-plugins.org/compatible-clients. What we have actually exercised is in Verified below — treat untested clients as compatible in theory, not as guarantees.
The repository doubles as a Codex marketplace, so it installs in two commands:
codex plugin marketplace add TheJumpCloud/jumpcloud-admin-agent-plugin
codex plugin add jumpcloud-admin@jumpcloudVerify with codex plugin list and codex mcp list. Skills appear namespaced as
jumpcloud-admin:jumpcloud-admin, jumpcloud-admin:jumpcloud-user-lifecycle, and so on.
Cursor detects an Agent Plugin by the plugin.json at its root. Install from Customize
in the sidebar, or symlink the plugin for local development:
git clone https://github.com/TheJumpCloud/jumpcloud-admin-agent-plugin.git
ln -s "$PWD/jumpcloud-admin-agent-plugin/plugins/jumpcloud-admin" ~/.cursor/plugins/local/jumpcloud-adminAll seven skills load immediately, unprefixed (jumpcloud-admin,
jumpcloud-directory-search, …). Note that the symlink route loads skills only — the
Cursor CLI reads MCP servers from ~/.cursor/mcp.json or a project .cursor/mcp.json, not
from a locally symlinked plugin. Install through Customize, or add the server yourself:
{ "mcpServers": { "jumpcloud": { "url": "https://mcp.jumpcloud.com/v1" } } }Then cursor-agent mcp login jumpcloud (or authenticate via Customize → MCPs).
git clone https://github.com/TheJumpCloud/jumpcloud-admin-agent-plugin.gitThen point your client at plugins/jumpcloud-admin — that directory is the plugin root.
The spec defines the package format, not the installation UX, so consult your client's
documentation for where plugins live and how they're registered.
| Client | Skills | MCP server from mcp.json |
|---|---|---|
| ChatGPT & Codex | Yes, as jumpcloud-admin:<skill> |
Registered; authenticate with codex mcp login jumpcloud |
| Cursor CLI | Yes, unprefixed | Not from a local symlink — configure in mcp.json or install via Customize |
| GitHub Copilot, Kiro | Spec-compatible; not verified in this repo | Untested |
The MCP server is remote and handles auth itself — there are no secrets in this package and
nothing to configure in mcp.json. On first connection your client walks you through OAuth
against your JumpCloud tenant, and the agent operates with your admin permissions. A role
that can't delete users in the console can't delete them through the agent either.
In Codex, authenticate the registered server with codex mcp login jumpcloud. Agent Plugins
deliberately defines no portable credential field — the spec forbids putting secrets in
headers, and Codex ignores that field on a plugin-supplied mcp.json regardless.
Multi-org API keys: append ?organizationId=<org_id> to the MCP URL when required.
Setup details, supported clients, and API-key authentication are covered in Get Started: JumpCloud MCP Server for Admins.
- A JumpCloud organization with the MCP feature enabled
- An administrator account or API key
- A client supporting Agent Plugins 1.0.0 and MCP Streamable HTTP
This package’s plugins/jumpcloud-admin/mcp.json always points at production:
| Committed in this repo | MCP URL |
|---|---|
| Production | https://mcp.jumpcloud.com/v1 |
For a local MCP server during development, override the URL in your client config
(for example ~/.cursor/mcp.json or a project .cursor/mcp.json) — do not change or
commit a different URL in this repository’s mcp.json. Validation rejects staging and
loopback hosts in the packaged file. Never commit API keys.
Directory tools change real accounts and real hardware. The skills classify every tool as
read, write, or destructive, and instruct the agent to resolve and echo a target by name
before acting on it, to prefer the reversible option (user_suspend over user_delete,
device_lock over device_erase), and to never fan a destructive tool across a list just
because a query returned one.
That's guidance to a model, not an access control. Your JumpCloud admin role is the actual boundary — scope it the way you'd scope any other integration, and review destructive actions before you approve them.
./scripts/validate.shValidates plugin.json and mcp.json against Agent Plugins 1.0.0 rules, every SKILL.md
frontmatter, and required layout (fail-closed). Runs on every push and pull request.
Requires python3 only.
For full Agent Skills validation, use the
skills-ref Python
reference library:
uvx --from git+https://github.com/agentskills/agentskills#subdirectory=skills-ref \
skills-ref validate ./plugins/jumpcloud-admin/skills/jumpcloud-adminAgent Plugins 1.0.0 defines the package format only. It has no registry — installation and discovery are left to clients, and an organization-scoped registry is listed as a future consideration, not a shipped feature. Distribution therefore happens per client:
| Channel | Reach | Mechanism |
|---|---|---|
| This repo as a Codex marketplace | Anyone with the repo URL | .agents/plugins/marketplace.json, installed via codex plugin marketplace add |
| OpenAI public plugin directory | Every ChatGPT and Codex user | Submission and review through the OpenAI Platform |
| Cursor marketplace | Every Cursor user | cursor.com/marketplace/publish, manual security review |
| Cursor team marketplace | One organization | Private marketplace via the Cursor Teams/Enterprise dashboard |
| MCP registry | MCP-aware clients | The server-level server.json published from the MCP server repo, separate from this package |
The marketplace file is what makes codex plugin marketplace add work against a bare Git
URL, so keep it in sync when the plugin name or version changes.
- Get Started: JumpCloud MCP Server for Admins
- Configure the JumpCloud MCP Server for the AI Gateway
- Meet the JumpCloud MCP Server
- Agent Plugins specification
- Agent Skills specification
- Model Context Protocol
MIT. See LICENSE.