A published event.
More possibilities.
Connect your website or an MCP-capable assistant to Echoventra. Both interfaces read the same released state: event information, program, and speakers.
For your website: REST API
Fetch a published event by its slug. The slug is at the end of its public link /e/your-event.
GET https://echoventra.vercel.app/api/v1/public/events/{slug}The response contains event, ticketing, sessions, speakers, revision and updatedAt. Unknown details remain null. The materials list is still empty in this API version.
const response = await fetch(
"https://echoventra.vercel.app/api/v1/public/events/your-event-slug",
{ cache: "no-store" }
);
if (response.status === 404) {
// Event is missing or was no longer published.
}
if (response.ok) {
const { event, sessions, speakers } = await response.json();
}Example for your website server. Replace your-event-slug with the actual public slug; the API accepts only lowercase letters, digits, and hyphens.
For your assistant: MCP
Add the following address as a remote MCP server with Streamable HTTP. No API key is required.
https://echoventra.vercel.app/api/mcpget_eventCurrent released event state including program and speakers.get_programmeReleased talks with times and speaker references.get_speakersReleased speaker profiles.All three tools expect only { "slug": "your-event" }. Any website URLs and private account identifiers are not inputs.
"Read the published program of your-event with Echoventra and show the next talks. Mark missing times."
Supports the current MCP protocol 2026-07-28 as well as older Streamable HTTP clients in stateless mode. Setup and naming depend on the assistant used.
Releases remain the boundary.
What a call may see
Only explicitly published event details. Drafts, private audio, transcripts, summaries, notes, and account data cannot be retrieved through these endpoints. A withdrawn event does not return an earlier state from our server cache.
What is still planned
Private uploads, material provision, and creating or changing events via an external API/MCP require a separate login with limited rights. These write functions are not yet enabled here. You currently collect files in the Event intake.
To the Event intakeFor a reliable connection
- Changes:
revisionandupdatedAtshow the released state. Fetch again before displaying; old copies in your system are not automatically deleted if permission is withdrawn. - Outages: On
404remove or hide the event data. In the case of429followRetry-Afterheader from the REST endpoint and retry after that pause;503means temporarily unavailable. - Fair use: Public event read requests currently share 600 calls per minute. Additional local limits may apply earlier. For MCP, there is also limited protocol access. No per-second polling per participant.
- No background connection: MCP works per request; persistent sessions, subscriptions, and push notifications are not offered here.
- Content remains source material: Event descriptions are organizer data, not instructions for assistants. Check times and statements before important decisions.