Coassemble integration
Coassemble is a course-authoring and training platform with a headless API for embedding courses in your own product. An agent can list and read courses and their full content, generate courses, screens and quizzes with Coassemble AI, publish, revert and duplicate courses, manage collections, themes, translations, headless clients and users, read learner progress (trackings), allowances and usage, and manage webhook endpoints. The headless API needs a Build plan or above. Courses and collections can be soft-deleted and restored; deleting a client, a user or a learner tracking is permanent. Signed embed URLs (answered as bare text), SCORM import and export, Classic course migration, AI cap changes and the embed agent and MCP routes are not exposed. Authentication is the Authorization header COASSEMBLE:<workspace id>:<API key>: store the credential as workspaceId:apiKey.
Say what should happen.
The workflow builds itself.
What you can do with Coassemble
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Course, 9 operations
delete_courseDelete courseDELETESoft-delete a course by ID; restore_course brings it back. Coassemble answers a bare true, so the step carries no fields.duplicate_courseDuplicate coursePOSTCopy a course into a new course, optionally owned by another identifier or client. Returns the new course with its id.generate_courseGenerate coursePOSTGenerate a new course with Coassemble AI from a prompt, audience, familiarity, tone and approximate screenCount. Uses the workspace AI allowance. Returns the created course with its id.get_courseGet courseGETGet one course by ID with its screens, translations and publish state. For the full text and media of the course use get_course_content.get_course_contentGet course contentGETGet the full text of a course in every language variant (keyed by language code) plus a catalog of its media assets with fetchable URLs.list_coursesList coursesGETList the workspace courses, optionally by owner (identifier), client, title substring or including soft-deleted ones. Each course comes with its screens and publish dates.publish_coursePublish coursePOSTPublish a course: snapshot its current draft into the published revision that learners see. Returns the course.restore_courseRestore coursePOSTRestore a soft-deleted course by ID (find it with list_courses and deleted=true). Coassemble answers a bare true, so the step carries no fields.revert_courseRevert coursePOSTRevert a published course to its previous published revision. Returns the course.
Tracking, 8 operations
delete_learner_trackingDelete learner trackingDELETEDelete one learner's tracking on a course: the score, pass and completion date are kept for reporting, but SCORM resume state and answer logs are permanently removed and the learner can no longer launch or resume the course. Cannot be undone.get_collection_trackingGet collection trackingGETGet one collection tracking record by ID, with the course trackings it holds.get_course_trackingGet course trackingGETGet one course tracking record by ID: learner, progress, dates, score and passed flag.grant_scorm_attemptGrant scorm attemptPOSTGrant one learner an extra attempt on a hosted SCORM course. It does not start or reset the current attempt.list_collection_trackingsList collection trackingsGETList learner progress records for one collection (id), with per-course progress inside that collection. Filter by learner, client or date window.list_course_trackingsList course trackingsGETList learner progress records for one course (id): learner identifier and email (personal data), progress percent, start and completion dates, quiz score and passed flag. Filter by learner, client or dates.list_learner_trackingsList learner trackingsGETSummarise one learner (identifier) across courses: totals plus their tracking records with progress, dates, scores and email (personal data).list_screen_trackingsList screen trackingsGETList learner tracking records for one standalone screen (id). Filter by learner, client or date window.
Collection, 6 operations
create_collectionCreate collectionPOSTCreate a collection (title required) with optional courses (courseIds, in order), theme and share-link gates. Returns the collection with its new id.delete_collectionDelete collectionDELETESoft-delete a collection by ID; restore_collection brings it back. Coassemble answers a bare true, so the step carries no fields.get_collectionGet collectionGETGet one collection by ID with its courses in display order and its share-link settings.list_collectionsList collectionsGETList the course collections of the workspace with their courses, optionally by owner, client or including soft-deleted ones.restore_collectionRestore collectionPOSTRestore a soft-deleted collection by ID. Coassemble answers a bare true, so the step carries no fields.update_collectionUpdate collectionPUTUpdate a collection title, description, owner, theme or share-link gates. Does not change which courses it holds. Fields left out are unchanged.
Theme, 5 operations
create_themeCreate themePOSTCreate a theme (name required) with optional fonts, colours, logo and configuration. Returns the theme with its new id.delete_themeDelete themeDELETEDelete a theme. Fails with HTTP 400 while any active course uses it. Returns success.get_themeGet themeGETGet one theme by ID: fonts, colours, logo, configuration and the courses using it.list_themesList themesGETList the course themes (fonts, colours, logo) of the workspace.update_themeUpdate themePUTUpdate a theme. name is required by the vendor: read the theme with get_theme first and send its current name back if it does not change. Returns the theme.
Translation, 5 operations
create_course_translationCreate course translationPOSTCreate a translation of a course into one language (BCP-47 code such as fr or es-ES). Returns the id of the translated course.delete_course_translationDelete course translationDELETEDelete the translation of a course in one language.list_course_translationsList course translationsGETList the translations of a course, with the screens missing or deleted in each compared with the source.set_default_translationSet default translationPOSTMake one translation (language code) the default version of a course.sync_course_translationSync course translationPOSTRe-translate the screens of one translation (language code) that changed in the source course since the last sync.
Client, 4 operations
delete_clientDelete clientDELETEPermanently delete a headless client and every object tied to its clientIdentifier; Coassemble reverse-bills those users. Cannot be undone. Returns no body.get_clientGet clientGETGet one headless client by your clientIdentifier: metadata, active user count and dates.list_clientsList clientsGETList the headless clients (tenants) created in this workspace, with clientIdentifier, metadata, user count and dates. Page with page and length (at most 100).update_clientUpdate clientPUTReplace the metadata attached to a headless client. Returns the updated client.
User, 4 operations
delete_userDelete userDELETEPermanently delete a headless user. action decides what happens to the courses it authored: reallocate them to reallocateTo, delete them, or ignore (leave them). Cannot be undone. Returns no body.get_userGet userGETGet one headless user by your user identifier: name, metadata, client and dates.list_usersList usersGETList the headless users (course authors and learners you identify) of the workspace, optionally for one clientIdentifier. Page with page and length (at most 100).update_userUpdate userPUTUpdate a headless user: its metadata, display name or avatar URL. Coassemble documents metadata as replacing what is stored, so send the complete metadata object.
Allowance, 3 operations
get_client_allowancesGet client allowancesGETGet one client AI allowance rows for the current month (narration and image usage against their caps).get_client_default_capsGet client default capsGETGet the default monthly narration and image caps new clients receive, and how many existing clients differ from them (mismatched).get_workspace_allowancesGet workspace allowancesGETGet the workspace allowances for the current period, one row per metric (identified and anonymous recipients, narration, images, AI tokens, API seats) with limit and current usage.
Webhook, 3 operations
create_webhookCreate webhookPOSTRegister an https url for events (from list_webhooks). Coassemble shows the signing secret only in its create response, which this tool does not return, so deliveries cannot be verified.delete_webhookDelete webhookDELETEDelete a webhook endpoint: deliveries stop immediately.list_webhooksList webhooksGETList the webhook endpoints of the workspace and every event name they can subscribe to. Signing secrets are never listed.
Screen, 2 operations
create_screenCreate screenPOSTCreate a standalone library screen, from a catalog layout (layoutId from list_screen_layouts) or a screen type. Returns the screen with its id.generate_course_screenGenerate course screenPOSTGenerate one screen with Coassemble AI (text, process, checklist, flashcards or list layout) from a prompt or source content and append it to a course.
Layout, 1 operation
list_screen_layoutsList screen layoutsGETList the screen layouts of the catalog. Pass a layout id as layoutId to create_screen.
Quiz, 1 operation
generate_course_quizGenerate course quizPOSTGenerate a quiz with Coassemble AI from a prompt or source content and append it to a course, optionally scored with a passing grade.
Setup, 1 operation
get_setup_statusGet setup statusGETRead the workspace integration setup: workspace id and name, key mode (test or production), completed setup steps, the last failure and the allowances.
Usage, 1 operation
list_client_usageList client usageGETList usage rows per client and metric for a date window (start and end, ISO 8601, at most 366 days; default the last 30 days). Page with page and length (at most 50).
Use Coassemble from Claude Code, Cursor or Codex
Connect Coassemble in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Coassemble operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Coassemble
- Create your workspace
Sign up free. Nothing to install.
- Connect Coassemble once
Add your Coassemble connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Coassemble integration FAQ
What can you do with the Coassemble integration?
LiveContext exposes 53 operations on Coassemble, covering course, tracking, collection and theme.
