Comprehensive MCP server for Jamf Pro Apple device management with support for computers, mobile devices, policies, scripts, profiles, packages, and
Connect Jamf to Claude, Cursor or any other MCP client and it stops being a tab you switch to. Comprehensive MCP server for Jamf Pro Apple device management with support for computers, mobile devices, policies, scripts, profiles, packages, and reporting. The jamf mcp server is what makes that connection.
A comprehensive MCP (Model Context Protocol) server that enables AI assistants to interact with Jamf Pro for complete Apple device management. Works with Claude Desktop and ChatGPT (via MCP Connectors).
The server ships on npm as npm, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
getFleetOverview — Comprehensive fleet summary — inventory counts, compliance rates, and mobile device status in one callgetDeviceFullProfile — Complete device profile by name, serial, or ID — resolves automatically and fetches details, policy logs, and history in parallelgetSecurityPosture — Fleet security analysis — FileVault encryption rates, compliance status, and OS version currencygetPolicyAnalysis — Policy analysis by ID or name — configuration, scope, compliance, and performancegetComputerHistory — Full computer history — policy logs, MDM commands, audit events, screen sharing, user/location changesgetComputerPolicyLogs — Policy execution logs showing success/failure per devicegetComputerMDMCommandHistory — MDM command history with status and timestampssendComputerMDMCommand — Send MDM commands to macOS — lock, wipe, restart, shutdown, remote desktop (requires confirmation)flushMDMCommands — Clear pending/failed MDM commands to unstick devices (requires confirmation)Webhooks — The Webhooks tool exposed by this serverDevelopment — The Development tool exposed by this serverConfiguration is passed through the environment: JAMF_URL, JAMF_CLIENT_ID, JAMF_CLIENT_SECRET, JAMF_USE_ENHANCED_MODE, JAMF_MAX_CONCURRENCY, JAMF_MAX_RETRIES, JAMF_RETRY_DELAY, JAMF_RETRY_MAX_DELAY. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
Plenty of monitoring and observability servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Jamf's toolset — getFleetOverview, getDeviceFullProfile, getSecurityPosture and 8 more — is a fair guide to whether it matches your workflow. It is maintained by dbankscard; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| getFleetOverview | Comprehensive fleet summary — inventory counts, compliance rates, and mobile device status in one call |
| getDeviceFullProfile | Complete device profile by name, serial, or ID — resolves automatically and fetches details, policy logs, and history in parallel |
| getSecurityPosture | Fleet security analysis — FileVault encryption rates, compliance status, and OS version currency |
| getPolicyAnalysis | Policy analysis by ID or name — configuration, scope, compliance, and performance |
| getComputerHistory | Full computer history — policy logs, MDM commands, audit events, screen sharing, user/location changes |
| getComputerPolicyLogs | Policy execution logs showing success/failure per device |
| getComputerMDMCommandHistory | MDM command history with status and timestamps |
| sendComputerMDMCommand | Send MDM commands to macOS — lock, wipe, restart, shutdown, remote desktop (requires confirmation) |
| flushMDMCommands | Clear pending/failed MDM commands to unstick devices (requires confirmation) |
| Webhooks | The Webhooks tool exposed by this server. |
| Development | The Development tool exposed by this server. |
{
"mcpServers": {
"jamf-code": {
"command": "node",
"args": ["/absolute/path/to/jamf-mcp-server/dist/index-code.js"],
"env": {
"JAMF_URL": "https://your-instance.jamfcloud.com",
"JAMF_CLIENT_ID": "your-api-client-id",
"JAMF_CLIENT_SECRET": "your-api-client-secret"
}
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| JAMF_URL | Endpoint or connection string the server talks to. | Yes |
| JAMF_CLIENT_ID | Configuration value read at startup. | Optional |
| JAMF_CLIENT_SECRET | Credential the server authenticates with. | Yes |
| JAMF_USE_ENHANCED_MODE | Configuration value read at startup. | Optional |
| JAMF_MAX_CONCURRENCY | Configuration value read at startup. | Optional |
| JAMF_MAX_RETRIES | Configuration value read at startup. | Optional |
| JAMF_RETRY_DELAY | Configuration value read at startup. | Optional |
| JAMF_RETRY_MAX_DELAY | Configuration value read at startup. | Optional |
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Dashboards, Prometheus and Loki queries, incidents and alerts — observability by conversation.
Errors with full context — stack traces, issue triage and AI-powered root-cause analysis from Sentry's server.
Enables enhanced web research capabilities for large language models through intelligent search queuing and advanced content extraction.
Automates browser interactions and enables Large Language Models (LLMs) to interact with web pages through Playwright and Chrome DevTools Protocol
Guides tool usage by providing recommendations for MCP tools at each problem-solving stage.