Skip to content

Tools · Attendance

MCP tools for the Attendance module (coworking): the occupancy, I've arrived and I'm leaving, who's here, guests, history, fixing and removing visits, and the front desk kiosk links.

The Attendance module through the assistant: seeing the occupancy, marking arrival and departure (yours, a member's or a guest's), listing who's in the space and the history, fixing or removing visits, and generating and revoking kiosk links. The kiosk itself is a guest screen on the front desk iPad; the assistant manages the links, it doesn't run the kiosk.

Each tool carries a badge: Read-only changes nothing, Changes creates or changes something right away, and Asks to confirm only acts after your yes to a summary. See Money and confirmation.

In short

ToolWhat it doesMinimum roleType
get_attendance_overviewThe occupancy and your open visitAnyone who sees the spaceRead-only
check_inRecords an arrival, yours or a member'sAny (yours); moderator or finance (someone else's)Changes
check_outRecords the departureAny (yours); moderator or finance (someone else's)Changes
list_presentWho's in the space nowModerator or financeRead-only
list_visitsThe visit history, with filtersModerator or finance (today); admin (any day)Read-only
list_my_visitsYour visits and the month's summaryAnyRead-only
update_visitFixes a visit's arrival or departureModerator or finance (today); admin (any day)Changes
delete_visitRemoves a visitAdminAsks to confirm
check_guest_inRecords a guest's arrivalModerator or financeChanges
list_attendance_kiosksThe space's kiosk devicesModerator or financeRead-only
create_attendance_kioskGenerates a kiosk link (shown once)ModeratorChanges
revoke_attendance_kioskRevokes a kiosk linkModeratorAsks to confirm

The space is created with create_space and module: "attendance", with the attendance argument for the settings; update_space changes only what you send and keeps the rest.

The team, here, is the owner, the admin, the moderator and finance; finance reads and marks, but doesn't generate or revoke kiosk links. The roles are the routes' roles: the assistant never does more than the connected person could do on screen.

The space settings

The attendance argument of create_space and update_space accepts:

FieldTypeDescription
self_check_inoff, button or codeWho marks arrival: off, only the team; button, the member, with the I've arrived button (code isn't available yet)
capacitynumber from 1 to 100000, or nullThe capacity, informational. null removes the limit
auto_checkout_timeHH:MMThe automatic check-out, in the community's time zone (default 23:59)
show_who_is_herestaffWho sees the names: only the team
kiosk.guest_fields{company, phone}, each off, optional or requiredWhat the kiosk screen asks for besides the name
kiosk.notify_hosttrue or falseEmails the host when the guest arrives (default: yes)
kiosk.reset_seconds5 to 60How many seconds until the kiosk screen goes back to the start (default: 10)

get_attendance_overview

Read-only

Space occupancy. Just the number of people and the capacity (never names), the open visit of whoever asks and the check-in mode (off, button or code). Minimum role: anyone who sees the space.

ParameterTypeRequiredDescription
spaceid or linkYesThe Attendance space

Ask like this: "How many people are at the Downtown location right now?"

check_in

Changes

Record an arrival. Without profile_id, it's your arrival, and only if the space lets members mark (the team can always mark itself). With profile_id, the team records another member's arrival; a regular member is refused. Someone without access to the space (plan expired, group not included) is refused, even by the team. It's idempotent: with a visit already open, it returns that visit (already_checked_in: true). A guest without an account is check_guest_in. Role: any (yours); moderator or finance (someone else's).

ParameterTypeRequiredDescription
spaceid or linkYes
profile_ididNoTeam only: the member to mark (list_members). Without it, it's you

Returns: visit and already_checked_in.

Ask like this: "Record my arrival at the Downtown location." · "Mark Maria's arrival at the coworking."

check_out

Changes

Record the departure. With no parameters besides the space, it closes your open visit. The team closes a member's (profile_id) or any open visit (visit_id, from list_present). With no open visit, the response is 409. Role: any (yours); moderator or finance (someone else's).

ParameterTypeRequiredDescription
spaceid or linkYes
profile_ididNoTeam only: the member whose visit to close
visit_ididNoThe open visit to close (the team; a member, only their own)

Ask like this: "I'm leaving."

list_present

Read-only

Who's here. The open visits, of members and guests, newest to oldest, with the name and the arrival time, plus the count and the capacity. Members see only the number, in get_attendance_overview. Minimum role: moderator (or finance).

ParameterTypeRequiredDescription
spaceid or linkYes
page, limitnumbersNoPagination (up to 100 per page)

Ask like this: "Who's in the house right now?"

list_visits

Read-only

The history. The space's visits, newest to oldest: who, arrival, departure, the kind (member or guest), and whether it's open or was closed automatically. The admin and the owner read any period; the moderator and finance see only today (the API narrows the range). Minimum role: moderator (or finance).

ParameterTypeRequiredDescription
spaceid or linkYes
profile_ididNoOnly this member
kindmember or guestNoMembers or guests
opentrue or falseNotrue: only who's still here
from, todateNoYYYY-MM-DD or ISO 8601, read in the community's time zone
page, limitnumbersNoPagination

Ask like this: "How many guests came last week?"

list_my_visits

Read-only

Your visits. Your history, newest to oldest, with the month's summary (visits, days and minutes) in the community's time zone. Minimum role: any.

ParameterTypeRequiredDescription
spaceid or linkNoOnly this Attendance space
page, limitnumbersNoPagination

Ask like this: "How many days did I go to the coworking this month?"

update_visit

Changes

Fix a visit. Changes the arrival (check_in_at) and/or the departure (check_out_at). The departure can't be before the arrival or in the future; sending a departure on an open visit closes it. The admin and the owner fix any day; the moderator and finance, only today's visit and with times within today (yesterday returns 403). The fix goes into the activity log with who made it. Minimum role: moderator (or finance).

ParameterTypeRequiredDescription
visit_ididYesFrom list_visits or list_present
check_in_atdate and timeNoISO 8601
check_out_atdate and timeNoISO 8601

Ask like this: "Pedro forgot to check out: he left at 6 p.m. Close his visit."

delete_visit

Asks to confirm

Remove a visit. The visit leaves the lists and the counts (an open one stops counting toward the occupancy) and the removal goes into the activity log. It doesn't delete the member. Minimum role: admin.

ParameterTypeRequiredDescription
visit_ididYesFrom list_visits

Returns: on the first call, the summary and the confirmation code.

check_guest_in

Changes

Register a guest. The team records the arrival of someone without an account, with the member receiving them (the host, who must have access to the space). Company and phone are asked for or refused according to the kiosk settings. It's idempotent by name and host: with the visit open, it returns already_checked_in: true. If the space notifies hosts, they get an email. The guest counts toward the occupancy. Minimum role: moderator (or finance).

ParameterTypeRequiredDescription
spaceid or linkYes
guest_nametextYesThe guest's name (up to 100 characters)
host_profile_ididYesThe member receiving them (list_members)
guest_companytextNoThe company
guest_phonetextNoThe phone

Ask like this: "Register the guest Pedro Alves, from Acme, who's here to see Ana."

list_attendance_kiosks

Read-only

The kiosks. The space's devices, active and revoked: name, who created it, when, the last use and the state. Never the link, which only shows when it's created. Minimum role: moderator (or finance).

ParameterTypeRequiredDescription
spaceid or linkYes

create_attendance_kiosk

Changes

Generate a kiosk link. One per iPad or location. Returns kiosk, the url and a warning: the URL shows only once and is secret, like a password. Whoever has it registers guests. The assistant asks the person to open it on the device and not share it; if it's lost, revoke it and generate another. Minimum role: moderator (owner, admin or moderator; not finance).

ParameterTypeRequiredDescription
spaceid or linkYes
nametextYesThe device name, up to 80 characters (for example, "Reception tablet")

Ask like this: "Generate the kiosk link for the front desk iPad at the Downtown location."

revoke_attendance_kiosk

Asks to confirm

Revoke a kiosk. The link stops working right away and doesn't come back (generate another). Visits already recorded stay. Minimum role: moderator (owner, admin or moderator).

ParameterTypeRequiredDescription
spaceid or linkYes
kiosk_ididYesFrom list_attendance_kiosks

Returns: on the first call, the summary (the device's name and last use) and the confirmation code.