/dev/teachfloor
The control surface for learning data. REST, MCP, webhooks — one token, no glue code.
- Get current memberGET /v0/members/me
- List active coursestf courses list --status active
- Run from Claudemcp · teachfloor
- Subscribe to webhookscourse.completed · payment.failed
- Install the CLIcurl -fsSL https://cli.teachfloor.com | bash
One REST API. All your learning data.
Bearer auth, predictable resource URLs, cursor pagination.
Native extensions inside the dashboard.
Drop custom UI next to courses, members and activities. The runtime handles auth, framing and routing.
Hook into the platform in three lines.
A 6kB script tag exposes Teachfloor as a typed API surface — data, events and actions, all from your custom page.
Run Teachfloor from Claude, ChatGPT, Cursor.
Expose your platform as agent-callable tools. List members, ship courses, run analytics from inside any MCP client.
Your terminal, your platform.
One-binary install. Same shape as the REST API, shell-friendly defaults. Scripts, CI, ad-hoc fixes — no fetch boilerplate.
React to events in real time.
Signed payloads, retries with exponential backoff, replayable from the delivery log. No polling.
- Sign payload
- Exponential backoff
- Delivery log
Common questions.
Do I need an SDK to call the API?
No. curl works. We ship a JavaScript SDK if you want realtime events and inline auth, but anything in the dashboard is one Bearer token away over plain REST.
Where do I get an API key?
Dashboard → Settings → API keys → New key. Keys are scoped per organization and rotatable. We never store the raw key — copy it once at creation.
What's the rate limit?
120 requests / minute per organization on standard plans, no request-burst penalty. Hit the limit and the response includes a Retry-After header so you can back off cleanly.
Does the MCP server work with ChatGPT and Cursor?
Yes — the server speaks the standard Model Context Protocol. Claude Desktop, ChatGPT Custom GPTs, Cursor and any other MCP-aware client connect with the same config.
Where do I see webhook deliveries?
Dashboard → Developers → Webhooks → click any subscription for the delivery log: HTTP status, payload, signed body, retry count and timing. Replay from there.
Is there a sandbox?
Every organization comes with a test mode flag — same endpoints, isolated data, no billing impact.
$ tf init
Generate a key, read the docs, ship the integration.