From unifi-access
You can manage the full UniFi Access system via the `unifi-access` MCP tools — doors, users, door groups, PIN/NFC credentials, activity logs, and access schedules.
npx claudepluginhub pzharyuk/ai-claude-plugins --plugin unifi-accessThis skill uses the workspace's default tool permissions.
You can manage the full UniFi Access system via the `unifi-access` MCP tools — doors, users, door groups, PIN/NFC credentials, activity logs, and access schedules.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
You can manage the full UniFi Access system via the unifi-access MCP tools — doors, users, door groups, PIN/NFC credentials, activity logs, and access schedules.
access_list_devices — All UniFi Access hardware (hubs, readers, door controllers)access_list_doors — All configured doors with lock status and access modeaccess_get_door — Details and current status of a specific dooraccess_unlock_door — Unlock a door (momentary or timed)access_lock_door — Lock a dooraccess_set_door_mode — Set door access mode: custom, always_unlock, lockdownaccess_list_users — All access users with name, status, and groupsaccess_get_user — Details for one useraccess_create_user — Create a new access useraccess_update_user — Update user info (name, email, employee number)access_delete_user — Remove a user and all their credentialsaccess_list_door_groups — All door groups with doors and schedulesaccess_get_door_group — Details of a specific groupaccess_create_door_group — Create a new access level with specific doorsaccess_assign_user_to_group — Grant a user access to a group's doorsaccess_remove_user_from_group — Revoke a user's access to a groupaccess_list_credentials — List a user's credentials (PIN, NFC, mobile pass)access_create_pin — Assign a PIN code to a useraccess_delete_credential — Remove a credential from a useraccess_get_activity_logs — Door access history (who, what door, when); filter by door or useraccess_list_schedules — Access schedules (time restrictions for door groups)access_list_doors → find door_id
→ access_unlock_door (door_id: "...")
access_create_user (first_name: "Jane", last_name: "Smith", email: "jane@company.com")
→ save returned user_id
→ access_list_door_groups → find appropriate group_id
→ access_assign_user_to_group (user_id: "...", group_id: "...")
→ access_create_pin (user_id: "...", pin: "1234")
access_list_users → find user_id by name
→ access_delete_user (user_id: "...")
access_get_activity_logs (start: <start of day in ms>, limit: 200)
access_list_users → find user_id
→ access_get_activity_logs (user_id: "...", start: <7 days ago>)
access_list_doors → find door_id
→ access_set_door_mode (door_id: "...", mode: "lockdown")
access_create_door_group (name: "Contractors", doors: ["door_id_1", "door_id_2"])
→ access_create_user (first_name: "John", last_name: "Contractor", expiry_time: <unix_timestamp>)
→ access_assign_user_to_group (user_id: "...", group_id: "...")
| Mode | Description |
|---|---|
custom | Normal access control — credentials required |
always_unlock | Door stays unlocked, anyone can enter |
lockdown | Door stays locked, no entry |
Date.now() for current time.expiry_time and onboard_time on users are Unix timestamps in seconds (not ms).start/end for other ranges.access_list_schedules to apply time restrictions when assigning door groups.