Lessonspace MCP by usefulapi

io.usefulapi/lessonspace

Read Lessonspace sessions, recordings, transcripts, spaces and users; launch spaces, edit sessions.

Yes, your AI can use this right now.Answered a live MCP handshake in 193 ms with no sign-in needed and exposes 9 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://lessonspace.usefulapi.io/mcp

9 tools, verified live

Pulled straight from the server with tools/list on 2026-10-17.
lessonspace_list_sessionsread-only

List the organisation's sessions (a session is one meeting held in a space): name, uuid, start/end time, space, participants (name, email, role), guests, billable seconds, tags, summary and recording state. Filter by time, duration, participant, space, launch id or tags. Newest first as Lessonspace orders them. Each session's playback_url is an access link to its recording, and participant emails

lessonspace_get_sessionread-only

One session by uuid, with its space, participants, guests, tags, summary and recording state. GET /organisations/sessions/{session}/.

lessonspace_get_session_recordingread-only

The playback URL of a session's recording. status 'ready' = the URL works now; 'preparing' = Lessonspace is still creating it (ask again in a minute); 'no_recording' = recording was disabled, so none exists. The URL is an access link: give it only to someone entitled to watch the recording. GET /organisations/sessions/{session}/playback/.

lessonspace_get_session_transcriptread-only

A signed download URL for a session's transcript. Only works if transcription was switched on for the session (launch with transcribe=true). The URL is an access link: give it only to someone entitled to read the transcript. GET /organisations/sessions/{session}/transcript/.

lessonspace_update_sessioncan modify

WRITE: rename a session and optionally set who may watch its recording (a list of participant, admin, teacher, student; an empty list falls back to the organisation policy). The name is always sent (Lessonspace requires it). PATCH /organisations/sessions/{session}/.

lessonspace_list_spacesread-only

List the organisation's spaces (persistent rooms): id, name, slug, alias, url, tags, lock state, region and recording/transcription settings. The url of a space is a way in; treat it as sensitive. GET /organisations/spaces/.

lessonspace_list_space_sessionsread-only

Sessions held in one space, with the join/leave log (who joined, left or went idle, and when) and the users connected now. Same filters as lessonspace_list_sessions. GET /spaces/{space}/sessions/.

lessonspace_launch_spacecan modify

WRITE: create a space, or reuse the one with the same `id`, and get a join link (client_url) for one participant. The link is a live credential for a real person: share it only with that person and never post it elsewhere. Calling again with the same id reuses the space but issues a new link; it is not safe to repeat blindly. Lessonspace's own `secret` is never returned. POST /spaces/launch/.

lessonspace_list_usersread-only

List the organisation's users: Lessonspace user id, name, email, role (teacher, student, admin), active state and external id. Names and emails are personal data. GET /organisations/users/.

Alternatives in Other

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”