Default
Jamf
API integration
Ship Default features without building the integration. Full Jamf API access via Proxy, normalized data through Unified APIs, and 20+ MCP-ready tools for AI agents — all extensible to your exact use case.
Talk to usUse Cases
Why integrate with Jamf
Common scenarios for SaaS companies building Jamf integrations for their customers.
Automate compliance checks across Apple device fleets
Compliance automation platforms can pull computer and mobile device inventory from Jamf to verify OS patch levels, disk encryption status, and installed applications — proving SOC 2 or ISO 27001 readiness without manual spreadsheets.
Sync Apple device inventory into a unified IT asset ledger
ITAM platforms can continuously ingest Macs, iPhones, and iPads from Jamf alongside other MDM sources, giving IT teams a single pane of glass for hardware lifecycle tracking, procurement planning, and depreciation reporting.
Automate user provisioning and offboarding in Jamf
HR and identity platforms can create Jamf users at hire and update or remove them at termination, ensuring the Apple device management layer stays in sync with the employee lifecycle without manual IT intervention.
Enrich helpdesk tickets with real-time device context
Support and ticketing platforms can look up the reporting employee's Jamf user record and linked devices to surface model, OS version, and serial number directly in the ticket — reducing resolution time and back-and-forth with end users.
Audit Jamf admin accounts for zero-trust security
Security and GRC platforms can enumerate Jamf admin accounts and their privilege sets to detect over-provisioned access, orphaned accounts, or policy violations as part of continuous access reviews.
What You Can Build
Ship these features with Truto + Jamf
Concrete product features your team can ship faster by leveraging Truto’s Jamf integration instead of building from scratch.
Real-time Apple fleet compliance dashboard
Pull computer inventory and mobile devices from Jamf via the Unified MDM API to flag unpatched OS versions, missing encryption, or blacklisted applications in a live compliance view.
Automated employee onboarding to Jamf
Create Jamf user records the moment a new hire is confirmed in your platform, so IT can map them to a device during zero-touch enrollment without any manual steps.
Cross-platform device inventory sync
Aggregate Jamf computer and mobile device data alongside other MDM sources using the Unified MDM API to maintain a single, always-current hardware asset register.
Installed app audit and visibility report
List mobile device applications managed in Jamf to detect outdated or unauthorized software across the fleet and surface actionable findings to security teams.
Jamf admin access review workflow
Enumerate all Jamf accounts and their privilege levels to power periodic access certification campaigns, automatically flagging accounts with excessive permissions.
Contextual device sidebar for support tickets
Look up a Jamf user by email and resolve their assigned mobile devices or computers to display serial number, model, and OS version inline within a helpdesk ticket.
SuperAI
Jamf AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_jamf_accounts
List all account users or admin users in Jamf. Returns an array of account objects containing id and name fields for each account.
get_single_jamf_account_by_id
Get details of a specific account user or admin user in Jamf by id. Returns id, name, email, enabled status, access_level, privilege_set, site, and privileges related to JSS objects, settings, actions, and tools.
delete_a_jamf_account_by_id
Delete a specific account user or admin user in Jamf using its id. Returns a 200 OK response when the account is successfully deleted.
update_a_jamf_account_by_id
Update an existing account user or admin user in Jamf using the specified id. Returns updated fields including name, email_address, access_level, privilege_set, and enabled status.
create_a_jamf_account
Create a new account in Jamf using id. Requires id. Returns details such as name, email, full_name, access_level, and privilege_set in the response.
list_all_jamf_users
List all users in Jamf. Returns an array where each item includes size and user details such as id and name.
get_single_jamf_user_by_id
Get a specific user in Jamf by id. Returns fields such as id, name, full_name, email, phone_number, position, ldap_server, extension_attributes, sites, and links with related assets.
delete_a_jamf_user_by_id
Delete a user in Jamf by id. Requires id. Returns a confirmation of successful deletion.
update_a_jamf_user_by_id
Update an existing user in Jamf using id. This operation cannot be used to add computers, mobile devices, peripherals, or VPP assignments. Returns updated user details such as name, full_name, email, and phone_number.
create_a_jamf_user
Create a new user in Jamf by id. Requires id. The response includes created user details such as name, full_name, email, phone_number, and position. Cannot be used to add computers, mobile devices, peripherals, or VPP assignments.
list_all_jamf_mobile_devices
List all mobile-devices in Jamf. Returns id, name, serialNumber, wifiMacAddress, udid, phoneNumber, model, modelIdentifier, username, type, managementId, and softwareUpdateDeviceId for each device.
get_single_jamf_mobile_device_by_id
Get details for a specific mobile device in Jamf by id. Returns key fields including display_name, device_name, serial_number, model, and os_version.
create_a_jamf_mobile_device
Create a new mobile device in Jamf using id. Returns fields such as model_identifier for device type and os_name derived from API level for Android devices. id is required.
update_a_jamf_mobile_device_by_id
Update an existing mobile device in Jamf using id. Returns updated device details including general information, location, purchasing data, and extension attributes. The os_name field in android is derived from the API level and cannot be set.
delete_a_jamf_mobile_device_by_id
Delete a mobile device in Jamf by id. Requires id. Returns a success message on successful deletion.
list_all_jamf_search_mobile_devices
Search mobile devices in Jamf that match the provided match parameter. Requires match. Returns fields such as id, name, serial_number, os_version, model, managed, and location details in the response.
list_all_jamf_mobile_device_applications
List all mobile device applications in Jamf. Returns each application's id, name, display_name, bundle_id, version, and internal_app fields.
get_single_jamf_mobile_device_application_by_id
Get details of a specific mobile-device-application in Jamf using id. Returns key fields such as name, bundle_id, version, category, icon, and deployment_type for the application.
delete_a_jamf_mobile_device_application_by_id
Delete a mobile device application in Jamf by id. Requires id. Returns a confirmation upon successful deletion.
update_a_jamf_mobile_device_application_by_id
Update an existing mobile device application in Jamf using id. Requires id. Returns updated fields including general details, scope, self_service configuration, VPP settings, and app_configuration preferences (must use character entities).
create_a_jamf_mobile_device_application
Create a new mobile device application in Jamf using id. Returns details such as name, bundle_id, display_name, version, and configuration preferences. App configuration preferences must be listed using character entities.
list_all_jamf_computer_inventory
List paginated Computer Inventory records in Jamf. Returns key fields such as id, udid, general.name, general.platform, and hardware.model for each device.
create_a_jamf_computer_inventory
Create a new Computer Inventory record in Jamf. Returns id and href of the created record in the response.
update_a_jamf_computer_inventory_by_id
Update specific fields on a computer in Jamf using id. Returns the updated computer object including fields such as general, purchasing, userAndLocation, hardware, and operatingSystem details.
delete_a_jamf_computer_inventory_by_id
Delete a specific computer record in Jamf using id. Returns a 204 status when the computer is successfully removed or a 404 error if the computer id does not exist.
Why Truto
Why use Truto’s MCP server for Jamf
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
Unified APIs
Unified APIs for Jamf
Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.
Unified User Directory API
Unified MDM API
Apps
Core resource which represents a software application installed on a managed device. Installed software is typically mapped to installed applications, installed programs, packages, or inventory items depending on the underlying product.
Devices
Core resource which represents a managed device in an MDM or RMM system. Devices are typically mapped to endpoints, nodes, or assets depending on the underlying product.
Users
Users represent the people using the underlying MDM or RMM system. They are usually called employees, contractors, admins, etc.
How It Works
From zero to integrated
Go live with Jamf in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Jamf account
Use Truto’s frontend SDK to connect your customer’s Jamf account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Jamf
Truto’s Proxy API is a 1-to-1 mapping of the Jamf API. You call us, we call Jamf, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Jamf’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Jamf on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
What authentication method does the Jamf integration use?
Jamf supports API token-based authentication. Your end users provide their Jamf Pro instance URL and credentials (or an API client with appropriate permissions), and Truto handles token generation and refresh transparently.
Which Unified APIs does the Jamf integration map to?
Jamf maps to two Unified APIs: the Unified MDM API (covering Devices, Apps, and Users resources) and the Unified User Directory API (covering Users and Roles). This lets you read and write Jamf data using a standardized schema shared across other MDM and directory providers.
Can I both read and write data to Jamf through Truto?
Yes. The integration supports full CRUD operations on users, mobile devices, computer inventory, mobile device applications, and admin accounts — so you can list, create, update, and delete records as needed.
How does Truto handle pagination when listing large Jamf datasets?
Truto manages pagination automatically. When you call list endpoints like list_all_jamf_computer_inventory or list_all_jamf_mobile_devices, Truto handles page cursors and aggregation behind the scenes, returning complete result sets without requiring you to manage offsets.
Can I search for specific mobile devices in Jamf?
Yes. The integration exposes a dedicated search endpoint (list_all_jamf_search_mobile_devices) that lets you query mobile devices by specific criteria, which is useful for looking up a device by serial number or user association without fetching the entire inventory.
What kind of device data can I access from Jamf through this integration?
You can access computer inventory (Macs) and mobile devices (iPhones, iPads), including hardware details, OS version, and serial numbers. You can also list and manage mobile device applications, which gives visibility into the software deployed across the fleet.
Jamf
Get Jamf integrated into your app
Our team understands what it takes to make a Jamf integration successful. A short, crisp 30 minute call with folks who understand the problem.
Talk to us