DocsDevelopersMCP server
MCP server
One endpoint, 31 tools, everything the app can do. Point your assistant at it and ask for what you want.
The endpoint
https://keen-eagle-41.convex.site/mcpTwo ways in. Just add the URL and sign in with your browser — Claude and ChatGPT both do this, no key to paste. Or send an API key as a bearer token, which is what CLI clients want. Create keys under Settings → API & MCP.
Connect your client
Claude desktop or claude.ai
- Settings → Connectors → Add custom connector.
- Paste the endpoint URL above.
- Sign in with your Trackstage account when prompted.
Sign-in happens in your browser — no API key needed for this route.
Claude Code (CLI)
Run this once — Claude Code will remember it.
claude mcp add trackstage --transport http https://keen-eagle-41.convex.site/mcp --header "Authorization: Bearer sb_live_xxx"Swap sb_live_xxx for a key from Settings → API & MCP.
Say this first
- “Summarise my event.”
- “Show me everything in the accept queue.”
- “Auto-fill the agenda.”
- “Which speakers still owe me slides?”
- “Send a reminder to speakers with open tasks.”
All 31 tools
Generated from the server’s own definitions, so this list cannot drift.
Workspaces & events
list_workspacesLists every Trackstage workspace (organization) you belong to, your role in each (owner/admin/member), and how many events each one holds.
list_eventsLists every event you can access, across all your workspaces, with each event's id, slug, dates, venue and timezone.
create_eventCreates a new event in one of your workspaces.
Requires
namedelete_eventPermanently deletes an event and EVERYTHING belonging to it: every submission, speaker, CFP form, task, uploaded file, email template and outbox row.
Requires
event,confirmName,confirmget_event_overviewDEPRECATED ALIAS of get_event_summary, kept so existing scripts keep working; it returns exactly the same payload.
Requires
eventget_event_summaryTHE status call, and the one that used to be split in two (it absorbed get_event_overview).
Requires
event
CFP forms
list_formsLists the call-for-papers forms on an event with their open/closed status, close date, public submission URL, and how many submissions and drafts each has collected.
Requires
eventget_formReturns a form in full: every question (type, required/enabled, options, conditional showIf rules, which one routes to tracks), the participant configuration, and the submission settings.
Requires
formcreate_formCreates a new call-for-papers form on an event, pre-filled with the standard question set (title, description, format, track, level, language, tags) and speaker fields.
Requires
event,nameupdate_form_settingsOpens or closes a CFP form, sets or clears its close date, and updates submission settings (per-user limit, drafts allowed, reminder emails, success message).
Requires
formget_public_form_linkReturns the shareable public submission URL for a form and whether it is currently accepting submissions.
Requires
formdelete_formPermanently deletes a call-for-papers form.
Requires
form,confirm
Submissions & decisions
list_submissionsLists submissions (abstracts and sessions) for an event, optionally filtered by status, track name, or a free-text search across titles, descriptions and speaker names/emails.
Requires
eventget_submissionReturns one submission in full: description, every form answer, participants with roles and emails, uploaded files with their approval state, and review scores (average plus evaluator comments).
Requires
submissionIdset_submission_statusMoves a submission along the pipeline.
Requires
submissionId,statuscommit_decision_queueCommits every submission staged in the accept or decline queue: flips them to accepted/declined and QUEUES REAL DECISION EMAILS to their speakers (accepted speakers also get their onboarding tasks created).
Requires
event,queue,confirmadd_manual_sessionAdds a programme item that never came through the CFP — a sponsor slot, keynote, break or invited talk.
Requires
event,title
Agenda
get_agendaThe programme itself — WHICH session is in which room at what time.
Requires
eventschedule_sessionPlaces an accepted session in a room at a time.
Requires
submissionId,room,startsAtunschedule_sessionRemoves a session from its agenda slot and returns it to the unscheduled tray.
Requires
submissionIdauto_place_sessionsGreedily fills the agenda with every accepted-but-unscheduled session, skipping any slot that would double-book a room or a speaker.
Requires
event
Speakers & tasks
list_speakersThe confirmed speaker roster: everyone attached to an accepted session, their sessions, their outstanding onboarding tasks with due dates, and what's still missing from their profile (bio, headshot, slides).
Requires
eventget_speaker_portal_linkReturns the private magic link that signs one speaker straight into their portal (no password).
Requires
event,speakerassign_taskAssigns an onboarding task to one or more speakers — it appears in their portal immediately.
Requires
event,speakers,titleremove_taskDeletes one onboarding task, retracting it from that speaker's portal — the inverse of assign_task, for a task assigned by mistake or no longer needed.
Requires
taskIdsend_remindersQueues a reminder email to every speaker with incomplete tasks, using the event's reminder template.
Requires
event
list_templatesLists the event's email templates (accepted, declined, waitlisted, reminder, confirmation) with their subject, a 200-character body preview, and whether each has been customised or is still the built-in default.
Requires
eventget_templateReturns one email template in full — subject and complete body, and whether it is customised for this event or still the built-in default.
Requires
event,keyupdate_templateRewrites an email template's subject and/or body for this event.
Requires
event,keylist_outboxShows what Trackstage has emailed (or is about to email) for this event: recipient, subject, template, delivery status and any error.
Requires
eventsend_test_emailRenders a template with real event data and sends it to you (or an address you name) so you can proof it before it goes to speakers.
Requires
event,key
commit_decision_queue is the only tool that emails speakers a decision, and it refuses to run without confirm: true. Preview the queue with list_submissions first.