Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AUTH_MODENoAuthentication mode: app (default), delegated, or hybridapp
CLIENT_IDNoYour app client ID
TENANT_IDNoYour Entra ID tenant ID
CLIENT_SECRETNoYour app client secret

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
authenticate_mcp_sessionA

Authenticate the MCP session using the configured .env sign-in flow.

test_connectionA

Test the connection to Microsoft Graph API and return tenant information.

get_auth_statusA

Get current authentication mode and sign-in/cache status.

start_interactive_sign_inB

Start user sign-in flow (device code) and return sign-in instructions.

complete_interactive_sign_inA

Complete user sign-in flow after user enters device code.

complete_interactive_loginB

Compatibility wrapper that completes the interactive sign-in flow for the MCP session.

connect_intune_mcp_serverA

One-step connection flow: trigger sign-in if needed, then verify Graph connectivity.

get_intune_overviewA

Return device counts, compliance distribution and OS breakdown for the tenant.

manage_intune_devicesA

Manage Intune managed devices. All device lifecycle and action operations.

action values: list — List all managed devices (supports filter_query, top) get — Get full device details (requires device_id) search — Search by deviceName/userPrincipalName/serialNumber (search_term, search_by) get_noncompliant— List non-compliant devices get_stale — Devices inactive for N days (days_inactive) get_hardware — Hardware inventory for a device (device_id) get_network — Network info (MAC, subnet) for a device (device_id) get_installed_apps — Apps detected on a device (device_id) get_compliance_states — Compliance policy states for a device (device_id) get_log_requests — Diagnostic log collection requests for a device (device_id) sync — Trigger sync on a device (device_id) bulk_sync — Sync a list of devices (body: {device_ids: [...]}) restart — Restart a device remotely (device_id) lock — Remote lock a device (device_id) rename — Rename a device (device_id, body: {deviceName: "..."}) locate — Trigger GPS location on a device (device_id) reset_passcode — Reset passcode on iOS/Android (device_id) bypass_activation_lock — Bypass iOS Activation Lock (device_id) enable_lost_mode — Enable iOS Lost Mode (device_id, body: {message,phoneNumber,footer}) disable_lost_mode — Disable iOS Lost Mode (device_id) collect_diagnostics— Collect device diagnostics/logs (device_id) defender_scan — Trigger Windows Defender scan (device_id, body: {quickScan: true/false}) defender_update_signatures — Update Defender signatures (device_id) clean_device — Clean Windows device; body: {keepUserData: bool} (device_id, confirm=True) delete — Delete device from Intune (device_id, confirm=True) wipe — Factory reset / wipe device (device_id, confirm=True) retire — Retire device / remove company data (device_id, confirm=True)

manage_device_encryptionA

Manage device encryption keys and reports.

action values: list_bitlocker_keys — List all BitLocker recovery keys for the tenant get_bitlocker_key — Get a specific BitLocker recovery key with value (key_id) get_filevault_key — Get macOS FileVault recovery key (device_id) get_encryption_report — Export device encryption status report

manage_intune_appsA

Manage Intune mobile apps — full CRUD, search, assignments and install status.

action values: list — List all mobile apps (top) get — Get app details + assignments (app_id) search — Search apps by display name (search_term) create — Raw Graph app registration (body); for complete EAM acquisition/ Win32 packaging use plan_lifecycle, not metadata-only creation. update — Update app metadata (app_id, body) delete — Delete an app (app_id, confirm=True) assign — Assign app to groups (app_id, body: {assignments:[...]}) remove_assignment — Remove one assignment (app_id, assignment_id, confirm=True) get_install_status — Get app install summary (app_id) list_discovered — List all apps discovered across managed devices get_mam_registrations — List managed app registrations (MAM enrollment) plan_lifecycle — Stage EAM-first acquisition/Win32 packaging (body). Required: app_name, publisher, version. No groups means CREATE ONLY. Optional: catalog_package_id; source {artifacts:[{filename,url,sha256}], scripts:[{filename,content}],setup_file}; win32 {description, install_command,uninstall_command,detection_path,detection_file, detection_version,architecture,minimum_windows_release,install_context}; evidence_urls. Use group_ids/group_names OR reuse_scope_from_app_id to propose assignments. Research official install instructions first. Never guess switches, versions or hashes. No tenant writes in planning. discover_deployment_scope — Read existing group assignments/filters/settings (app_id). Never invent a target or create groups without user confirmation. get_lifecycle_plan — Review immutable plan (plan_id); operator CLI approves exact digest. queue_lifecycle — Queue operator-approved plan (plan_id, plan_digest, confirm=True). Separate Windows worker performs writes. No inline packaging. get_lifecycle_job — Read durable worker result and partial-resource IDs (job_id).

manage_app_config_mamA

Manage app configuration policies and MAM (app protection) policies.

action values: list_config_policies — List all managed app config policies (targeted) get_config_policy — Get a specific app config policy (policy_id) create_config_policy — Create an app config policy (body) update_config_policy — Update an app config policy (policy_id, body) delete_config_policy — Delete an app config policy (policy_id, confirm=True) list_protection_policies — List MAM/app protection policies create_protection_policy — Create an app protection policy (platform: ios|android, body) update_protection_policy — Update an app protection policy (policy_id, platform, body) delete_protection_policy — Delete an app protection policy (policy_id, platform, confirm=True)

manage_compliance_policiesA

Manage Intune device compliance policies — CRUD, assignment and status.

action values: list — List all compliance policies get — Get compliance policy details (policy_id) create — Create a new compliance policy (body) update — Update a compliance policy (policy_id, body) delete — Delete a compliance policy (policy_id, confirm=True) assign — Assign policy to groups (policy_id, body: {assignments:[...]}) get_status — Get device deployment status for a policy (policy_id) list_assignments — List assignments for a policy (policy_id)

manage_configuration_profilesA

Manage Intune device configuration profiles — CRUD, assignment and status.

action values: list — List all configuration profiles get — Get profile details (profile_id) create — Create a new profile (body) update — Update a profile (profile_id, body) delete — Delete a profile (profile_id, confirm=True) assign — Assign profile to groups (profile_id, body: {assignments:[...]}) get_status — Get device deployment status (profile_id) list_assignments — List assignments (profile_id)

manage_settings_catalogA

Manage Intune settings catalog configuration policies.

action values: list — List all settings catalog policies get — Get policy details (policy_id) create — Create a settings catalog policy (body) update — Update a settings catalog policy (policy_id, body) delete — Delete a policy (policy_id, confirm=True) assign — Assign policy to groups (policy_id, body: {assignments:[...]})

manage_admx_policiesA

Manage Intune ADMX (Administrative Templates / Group Policy) configurations.

action values: list — List all ADMX configurations get — Get ADMX config details (config_id) create — Create an ADMX configuration (body) delete — Delete an ADMX configuration (config_id, confirm=True)

manage_endpoint_securityB

Manage Intune endpoint security policies (Antivirus, Firewall, EDR, etc.).

action values: list_policies — List all endpoint security policies get_policy — Get policy details (policy_id) create_policy — Create from a template (template_id, body) update_policy — Update an endpoint security policy (policy_id, body) delete_policy — Delete a policy (policy_id, confirm=True) assign_policy — Assign to groups (policy_id, body: {assignments:[...]}) get_policy_status — Device state summary for a policy (policy_id) list_templates — List all security templates

manage_security_baselinesA

View Intune security baseline templates and deployed profiles.

action values: list_templates — List all security baseline templates list_profiles — List deployed security baseline profiles get_status — Get device deployment status for a profile (profile_id)

manage_windows_updateA

Manage Windows Update rings and feature/quality/driver update profiles.

action values: list_update_rings — List all Windows update rings get_update_ring — Get update ring details (policy_id) create_update_ring — Create an update ring (body) update_update_ring — Modify an update ring (policy_id, body) delete_update_ring — Delete an update ring (policy_id, confirm=True) list_feature_updates — List Windows feature update profiles get_feature_update — Get a feature update profile (policy_id) create_feature_update — Create a feature update profile (body) list_quality_updates — List quality/expedite update policies list_driver_updates — List driver update profiles

manage_intune_scriptsA

Manage Intune PowerShell scripts, proactive remediations and macOS shell scripts.

script_type: powershell | remediation | macos

action values: list — List scripts (script_type) get — Get script details (script_id, script_type) create — Upload a new script (body, script_type) update — Update a script (script_id, body, script_type) delete — Delete a script (script_id, script_type, confirm=True) assign — Assign a script to groups (script_id, body, script_type) get_status — Device run states for a script (script_id, script_type)

manage_intune_enrollmentA

Manage Intune enrollment restrictions, Apple VPP/DEP tokens, and Android Enterprise.

action values: list_restrictions — List device enrollment configurations/restrictions create_restriction — Create an enrollment restriction (body) update_restriction — Update an enrollment restriction (config_id, body) delete_restriction — Delete a restriction (config_id, confirm=True) assign_restriction — Assign restriction to groups (config_id, body) list_vpp_tokens — List Apple VPP tokens get_vpp_token — Get a VPP token (token_id) sync_vpp_token — Sync a VPP token (token_id) list_dep_tokens — List Apple DEP/ADE onboarding settings sync_dep_token — Sync a DEP/ADE token (token_id) list_android_enterprise — List Android Enterprise account settings get_failures_report — Export enrollment failures report list_dep_profiles — List enrollment profiles for a DEP token (token_id)

manage_autopilotA

Manage Windows Autopilot devices and deployment profiles.

action values: list_devices — List all Autopilot device identities list_profiles — List all Autopilot deployment profiles get_profile — Get profile details (profile_id) create_profile — Create an Autopilot deployment profile (body) update_profile — Update a profile (profile_id, body) delete_profile — Delete a profile (profile_id, confirm=True) assign_profile — Assign profile to device/group (profile_id, body) import_device — Import via hardware hash (body: {serialNumber,...}) delete_device — Delete Autopilot device registration (device_id, confirm=True) get_deployment_status — Autopilot deployment events list_esp_profiles — List Enrollment Status Page profiles

manage_filters_tagsA

Manage Intune assignment filters and scope tags.

action values: list_filters — List all assignment filters get_filter — Get filter details (filter_id) create_filter — Create an assignment filter (body) update_filter — Update a filter (filter_id, body) delete_filter — Delete a filter (filter_id, confirm=True) list_tags — List all scope tags create_tag — Create a scope tag (body) delete_tag — Delete a scope tag (tag_id, confirm=True)

manage_intune_rbacA

Manage Intune RBAC role definitions and role assignments.

action values: list_roles — List all role definitions (built-in + custom) get_role — Get role definition details (role_id) create_role — Create a custom role (body) update_role — Update a custom role (role_id, body) delete_role — Delete a custom role (role_id, confirm=True) list_assignments — List all role assignments create_assignment — Assign role to user/group with scope (body) delete_assignment — Remove a role assignment (assignment_id, confirm=True) list_resource_operations — List all available RBAC resource actions (permission strings)

manage_cloud_pcA

Manage Windows 365 Cloud PCs, provisioning policies and network connections.

action values: list — List all Cloud PCs get — Get Cloud PC details (cloud_pc_id) get_overview — Cloud PC overview/summary restart — Restart a Cloud PC (cloud_pc_id) reprovision — Reprovision a Cloud PC (cloud_pc_id, confirm=True) resize — Resize/upgrade a Cloud PC (cloud_pc_id, body: {targetServicePlanId}) restore — Restore from snapshot (cloud_pc_id, body: {snapshotId}) troubleshoot — Trigger troubleshoot action (cloud_pc_id) list_snapshots — List available snapshots (cloud_pc_id) get_audit_events — Audit event logs list_provisioning_policies — List provisioning policies create_provisioning_policy — Create a provisioning policy (body) assign_provisioning_policy — Assign policy to groups (policy_id, body) list_gallery_images — List gallery images for provisioning list_connections — List Azure network connections

manage_entra_usersA

Manage Entra ID users — full lifecycle including licenses, manager, onboarding and offboarding.

action values: list — List all users (top) get — Get user details (user_id or UPN) search — Search users by displayName (search_term) create — Create a new user (body) update — Update user properties (user_id, body) delete — Delete a user (user_id, confirm=True) enable — Enable user account (user_id) disable — Disable/block user sign-in (user_id) reset_password — Reset user password (user_id, body: {newPassword, forceChangeAtNextSignIn}) revoke_sessions — Revoke all user refresh tokens (user_id) get_devices — List managed devices for a user (user_id) get_licenses — Get license assignments (user_id) assign_license — Assign a license (user_id, body: {addLicenses:[{skuId}], removeLicenses:[]}) remove_license — Remove a license (user_id, body: {addLicenses:[], removeLicenses:[skuId]}) list_available_licenses — List available license SKUs in tenant get_deleted_users — List recently deleted users restore_user — Restore a deleted user (user_id) assign_manager — Set user's manager (user_id, body: {"@odata.id": managerUrl}) remove_manager — Remove user's manager (user_id) get_direct_reports — List user's direct reports (user_id) get_member_groups — List groups the user belongs to (user_id) onboard_user — Full onboard: create + manager + license + group membership (body) offboard_user — Full offboard: disable + revoke sessions + remove groups (user_id, confirm=True) bulk_create — Create multiple users from a list (body: {users: [...]}) bulk_assign_license — Assign license to multiple users (body: {user_ids:[...], skuId:...})

manage_entra_groupsA

Manage Entra ID groups — full CRUD plus membership and ownership operations.

action values: list — List all groups get — Get group details (group_id) search — Search groups by displayName (search_term) create_security — Create a security group ONLY after user confirms (body, confirm=True) create_m365 — Create a Microsoft 365 group ONLY after user confirms (body, confirm=True) create_dynamic — Create a dynamic security group ONLY after user confirms (body, confirm=True) update — Update group properties (group_id, body) delete — Delete a group (group_id, confirm=True) get_members — List group members (group_id) add_member — Add a member (group_id, member_id) remove_member — Remove a member (group_id, member_id) get_owners — List group owners (group_id) add_owner — Add an owner (group_id, member_id) bulk_add_members — Add multiple members (group_id, body: {member_ids:[...]})

manage_entra_devicesA

Manage Entra ID device objects (separate from Intune managed devices).

action values: list — List all Entra ID devices get — Get device details (device_id) search — Search by displayName (search_term) enable — Enable a device in Entra ID (device_id) disable — Disable a device in Entra ID (device_id) delete_entra — Delete device from Entra ID (device_id, confirm=True) delete_intune — Delete device from Intune (intune_device_id, confirm=True) delete_both — Delete from both Intune and Entra (device_id + intune_device_id, confirm=True)

manage_conditional_accessA

Manage Entra ID Conditional Access policies and named locations.

action values: list_policies — List all CA policies get_policy — Get CA policy details (policy_id) create_policy — Create a new CA policy (body) update_policy — Update a CA policy (policy_id, body) delete_policy — Delete a CA policy (policy_id, confirm=True) enable_policy — Enable a CA policy (policy_id) disable_policy — Disable a CA policy (policy_id) list_locations — List named locations create_location — Create a named location (body) update_location — Update a named location (location_id, body) delete_location — Delete a named location (location_id, confirm=True)

manage_identity_protectionA

Manage identity protection, authentication methods, sign-in logs and risky users.

action values: get_auth_methods — List authentication methods for a user (user_id) get_mfa_status — Check MFA registration status for a user (user_id) delete_auth_method — Remove an authentication method (user_id, method_id, confirm=True) get_auth_methods_policy — Get tenant-wide authentication methods policy get_sign_in_logs — Sign-in logs (filter_query for OData filter, top) get_directory_audit_logs — Directory audit logs (filter_query, top) get_risky_users — List risky users get_risk_detections — Get risk detection events dismiss_risky_user — Dismiss risk for a user (body: {userIds: [...]}) confirm_compromised — Confirm users as compromised (body: {userIds: [...]})

manage_app_registrationsA

Manage Entra ID app registrations and enterprise apps (service principals).

action values: list_registrations — List all app registrations get_registration — Get app registration details (app_id) search_registrations — Search registrations by name (search_term) delete_registration — Delete an app registration (app_id, confirm=True) get_expiring_credentials — App regs with credentials expiring soon (days_until_expiry) list_enterprise_apps — List all enterprise apps (service principals) get_enterprise_app — Get enterprise app details (sp_id) search_enterprise_apps — Search enterprise apps by name (search_term) get_app_permissions — Permissions granted to an enterprise app (sp_id) enable_enterprise_app — Enable an enterprise app (sp_id) disable_enterprise_app — Disable an enterprise app (sp_id)

manage_tenant_adminC

Tenant administration — org info, service health, directory roles, subscriptions, terms of use.

action values: get_org_info — Get organization/tenant information get_domains — List tenant domains get_service_health — M365 service health status overview get_service_issues — Current/recent service issues get_message_center — Message center posts/advisories get_planned_maintenance — Planned maintenance events list_directory_roles — List active directory roles get_role_members — List members of a directory role (role_id) get_global_admins — List Global Administrator members assign_directory_role — Assign directory role to user/group (role_id, body) remove_directory_role_member — Remove member from role (role_id, member_id, confirm=True) get_subscriptions — List subscribed license SKUs get_security_defaults — Check security defaults status list_terms_of_use — List Terms of Use agreements create_terms_of_use — Create a Terms of Use agreement (body) get_cross_tenant_policy — Get cross-tenant access (B2B) policy

manage_intune_reportsC

Intune reports, endpoint analytics and export jobs.

action values: compliance_report — Device compliance summary config_profile_status — Deployment status for a config profile (policy_id) compliance_policy_status — Deployment status for a compliance policy (policy_id) app_install_status — App install summary (app_id) license_usage — License usage summary hardware_inventory — Hardware inventory export job malware_report — Windows protection / malware state malware_on_device — Detected malware on a device (device_id) device_protection_overview — Device protection status overview endpoint_analytics_score — Endpoint Analytics baseline scores startup_performance — Device startup performance data app_reliability — Application reliability/crash scores work_from_anywhere — Work From Anywhere readiness report app_inventory — App inventory across all devices certificate_report — Device certificate status report co_management_report — Co-management eligibility/status encryption_report — Device encryption status export enrollment_failures — Enrollment failures report

discover_graph_operationsA

List all supported Graph operations grouped by tool/domain. Optionally filter by category name (e.g., 'devices', 'users', 'policies').

Returns each tool with its name, description and all available action values.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 34 tools

Disambiguation3/5

Most domain tools (devices, apps, policies, users, groups) are cleanly separated by resource, and action lists disambiguate well. However the auth cluster has genuine overlap: complete_interactive_login is an explicit 'compatibility wrapper' for complete_interactive_sign_in, and authenticate_mcp_session/connect_intune_mcp_server/test_connection blur together. Status/report operations also duplicate each other (e.g. config_profile_status in manage_intune_reports vs get_status in manage_configuration_profiles, and delete_intune spanning both device tools).

Naming Consistency4/5

All names use consistent snake_case with a predominantly verb_noun pattern (manage_*, get_*, list_*, create_*), and the manage_<domain> convention is applied predictably across the large domain tools. Minor deviations exist (test_connection, discover_graph_operations) but nothing chaotic.

Tool Count3/5

34 tools is heavy by the usual 3-15 guideline, though the domain (full Intune MDM plus Entra ID) is genuinely vast and each manage_* tool consolidates many actions via parameters. The seven-tool authentication cluster in particular feels bloated and could be consolidated, pushing the count above what the task strictly requires.

Completeness4/5

Coverage is very broad—CRUD, assignment, and status for nearly every Intune and Entra resource, plus lifecycle, reporting, and RBAC surfaces. Some gaps remain: security baselines are read-only (no create/assign), ADMX lacks update, and feature-update/quality/driver update profiles are partially list-only, but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessNo issues