Configure the Caliper sensor with the endpoint URL and a bearer token issued by the Learning Record Store or event store
At assessment start, construct a Caliper Envelope wrapping an AssessmentEvent with action Started, the Assessment entity as object, and an Agent as actor
Populate mandatory context: @context set to the Caliper 1.2 JSON-LD context URL, eventTime in ISO 8601 UTC, and id as a UUID URN
POST the envelope to the sensor endpoint with Content-Type application/json and the Authorization bearer token header
At assessment completion, build a second AssessmentEvent with action Completed and include a Result entity with resultValue and totalValue in the generated field
Handle HTTP 200 from the endpoint as acknowledgment; implement retry with exponential back-off for 5xx or network errors
Known gotchas
Caliper eventTime must be UTC and precisely formatted; some LRS implementations reject events with timezone offsets or missing fractional seconds
The actor must be a Person entity with an id that is a stable IRI for the learner; using a session-scoped or ephemeral id breaks cross-session analytics
Caliper envelopes can batch multiple events in the data array; batching reduces HTTP overhead but check the endpoint's maximum payload size
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp