io.usefulapi/kisi
up checked
Unclaimed · Unverified
Agent searches it appeared in, last 30 days: 0. Run this server? Claim the listing: verified label, uptime alerts and analytics.
Publisher-provided title
Kisi MCP by usefulapi
Publisher-provided description
Read Kisi places, doors, users, groups, access rights and access logs (no unlocking).
Summary by lookupd
Lets an agent read Kisi places, doors, users, groups, cards, controllers and access logs, but cannot unlock doors.
Install
Claude Code, remote (streamable-http)
claude mcp add --transport http kisi https://kisi.usefulapi.io/mcp
Codex, remote (streamable-http)
codex mcp add kisi --url https://kisi.usefulapi.io/mcp
Cursor, remote (streamable-http) → .cursor/mcp.json
{
"mcpServers": {
"kisi": {
"url": "https://kisi.usefulapi.io/mcp"
}
}
}Other clients: docs. Or tell your agent: Set up lookupd for me: read https://lookupd.com/agent.md and follow it.
Tools (20 tools)
Publisher-provided text
kisi_get_current_userThe Kisi user the API key belongs to (id, name, email, organization). Good first call. GET /user.kisi_get_organizationThe current Kisi organization (name, domain, settings summary). GET /organization.kisi_list_placesList places (sites/buildings) in the organization with address, time zone and lock/member counts. GET /places.kisi_get_placeOne place by id, including lockdown state. GET /places/{id}.kisi_list_locksList locks/doors with their state: online, unlocked, locked_down, configured, place and floor. Filter to find offline or locked-down doors. GET /locks.kisi_get_lockOne lock/door by id: online/unlocked/locked-down state, place, floor, settings. GET /locks/{id}.kisi_list_groupsList access groups (who-can-open-what bundles of doors). Filter by place or by a lock to see which groups open that door. GET /groups.kisi_get_groupOne access group by id (name, description, place, member/lock counts, restrictions). GET /groups/{id}.kisi_list_group_locksThe locks/doors an access group opens. GET /group_locks?group_id=.kisi_list_usersList users (members) of the organization. Filter by group or place (users with access there), email, or free text over name/email/notes. Sort by last unlock. GEkisi_get_userOne user by id. GET /users/{id}.kisi_list_role_assignmentsWho holds which role where: a user/team/guest's role on the organization, a place or a group (group members = door access). Filter by user, group, place or rolekisi_list_cardsList access cards with status (activated/deactivated/unassigned), assignee and last use. GET /cards.kisi_list_presencesWho was present at a place on a given day (derived from unlocks): actor, first/last unlock, last door. GET /presences.kisi_list_schedulesTime rules: when a group's access is allowed, when doors auto-unlock (unlock timer), first-to-arrive, elevator permit timers. Filter by consequence or by the grkisi_list_controllersKisi controllers (door hardware hubs) with online/offline status. Filter by place, lock or status. GET /controllers.kisi_list_readersKisi readers (card/phone readers at doors) with model and online/offline status. GET /readers.kisi_search_eventsSearch the access log (unlocks, denied attempts, lockdowns, admin changes) and return the first page. This CREATES a temporary saved search in Kisi (an event sekisi_get_event_setRead an event set from kisi_search_events: its status and events. Pass the previous page's cursor for the next page. GET /event_sets/{id}.kisi_list_event_typesAll event type names usable as the type filter of kisi_search_events (e.g. lock.unlock). GET /events/types.
Details
- Version: 1.28.3
- Transports: streamable-http
- Uptime (7 days): 100%
- Median latency: 460 ms
- First indexed:
- Last seen in registry:
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/kisi/
Badge for your README
Shows this live status and links here; updates hourly.
[](https://lookupd.com/servers/io.usefulapi/kisi)
- 62092 servers
- Last crawl: 2026-11-11T17:17:22.074Z
- API base:
https://api.lookupd.com - MCP URL:
https://api.lookupd.com/mcp