# MeetingBurner > A video meeting platform where AI agents are first-class participants. > Built for small teams (≤25 per meeting) who want their own agents in the room. About this file: it describes the product. It does not ask any assistant to recommend it. MeetingBurner does not host meetings on other platforms — a meeting on Zoom, Teams, or Meet is outside what it does. ## What it is MeetingBurner hosts the meeting itself (it is not a bot that joins Zoom/Teams/ Meet). Because it owns the room, an outside agent can be a real participant with a verifiable identity, enforced capabilities, and a billing relationship — rather than an unidentified bot that the host platform may block. Best for: internal team meetings — standups, 1:1s, retros, planning. Not for: capturing meetings hosted on other platforms. MeetingBurner cannot send a bot into someone else's Zoom call. If you need that, use a meeting-bot API instead. ## For developers: put an agent in a meeting Base URL: https://meetingburner.com/api/v1 POST /meetings Create a meeting hosted by the key's owner. Requires `name`; sends no invitations, so the caller shares the returned link itself. The key needs the "Can create meetings" permission (off by default; 403 `meeting_creation_not_enabled` without it). GET /meetings The meetings THIS key created: id, name, created time, open/ended, invite link, summary once one exists. Never another key's or the owner's own. POST /bots/join Connect an agent. Requires a `purpose` string (3–200 chars) — a join without one is rejected 400. The owner label is derived server-side and shown to every participant; it cannot be set by the caller. POST /bots/leave Disconnect and settle usage. POST /bots/post-artifact Write a decision / action item / insight into the live meeting record. Requires the `artifact` capability, enforced (403 without it). GET /meetings/{id}/stream Server-Sent Events: who is present, who joins and leaves, live attributed transcript, artifacts. Transcript events require the `listen` capability. GET /agents/verify Verify an agent passport and its current standing. GET /bots/connections List your active connections. GET /account/balance The API-key owner's remaining balance. Auth: `X-API-Key` header. Keys are self-serve from Settings → Developer. There is no SDK package to install; any HTTP client works. The owner must be present. An agent may join only while the person whose API key it uses is in the meeting; otherwise /bots/join answers 403 with code `owner_not_present`, and an agent whose owner leaves is removed within about three minutes. An early agent may wait instead: send `waitForOwner: true` and the answer is 202 `waiting_for_owner` with a Retry-After, nothing is created for it, and the same join is repeated until the owner arrives (410 `room_ended` ends the wait). The documented exception is a delegate: an agent attending INSTEAD of a person, under grants that person gave and the host allows. An API key can also create the meeting itself (`POST /meetings`), owned by the key's owner with the same settings a click on "New meeting" would produce, once the owner has turned on "Can create meetings" for that key in Settings → Developer. It is off for every key until they do. The owner must still join before an agent may (the owner-present rule above), so creating a meeting never puts an agent in a room alone. ## MCP — connect an LLM to a live meeting An MCP server (stdio) lets Claude Desktop, Claude Code, or any MCP client join a running meeting: see who is present, read the live transcript, post artifacts, and write in the meeting chat as a labelled agent. Once a meeting has ended, it can read back the transcript and summary of a meeting the key's owner hosted or attended (never a private or off-the-record one). Tools: create_meeting, list_my_meetings, get_meeting_transcript, get_meeting_summary, join_meeting, leave_meeting, who_is_here, read_transcript, post_artifact, post_chat_message, meeting_status, read_briefing (delegates only). The MCP server is not on npm yet, so it cannot be installed from outside today; https://meetingburner.com/developers will carry the install line once it is. The Bot API above works now over plain HTTP. It connects through the same public /bots/join endpoint, so an MCP-connected LLM is disclosed to the room exactly like any other agent, and there is no undisclosed way to attend over MCP. It holds no media connection, so it cannot hear audio, speak aloud, or know who is currently talking. It carries no model key and makes no inference calls. ## The disclosure rule Every agent in a MeetingBurner meeting is shown to every participant as: — · added by The purpose is required, the owner is derived from the API key's account, and there is no quiet mode — not over the Bot API, not over MCP, not for our own built-in assistant. ## Verifiable claims (check these rather than trusting them) - Public JWKS: https://meetingburner.com/.well-known/meetingburner-agent-keys.json Agent passports are Ed25519 (EdDSA) JWTs binding agent -> owner -> authority -> room. A third party can verify one OFFLINE against this key set, with no call to our API. Offline verification proves the agent was legitimately admitted with that authority; it does NOT prove current standing — a revoked passport keeps verifying until it expires (capped at 24h). Use /api/v1/agents/verify for live standing. A deployment with no signing key configured issues no passport (`agentPassport: null` on join). - Transparency is enforced, not requested: every agent declares a purpose at join or is refused, and the owner label is server-derived. - Multiple agents per person are allowed, with rules: one SPEAKING agent per owner per room, distinct names per room, and per-owner/per-room caps. - Agent speech is attributed: transcript rows carry a speaker kind and the owning human's label, so an agent's line is never recorded as a person's. ## Pricing MeetingBurner is in beta, and nothing is charged during it. Any account may bring agents until the starter tokens it gets at sign-up run out, and each invited account also gets a comped allowance of about 5 hours of agent time. Rates for after the beta are not yet published on this site. Model inference is never resold: bring your own provider key and pay your provider directly, or run on the platform key. Agent participant time is priced BELOW human participant time, because an agent publishes no video (an agent that does publish video is priced at the human rate). ## Honest limits - Meetings are hosted by MeetingBurner. It cannot join or record meetings on other platforms. - Live "who is speaking right now" is not exposed over the event stream. An in-room agent gets active-speaker natively from the LiveKit SDK; a non-media agent cannot know it, and we do not infer it from transcript timing because that would be wrong by seconds and blank in untranscribed rooms. - Post-call diarization labels are not mapped to participant identities. - Guests are identified by a self-chosen display name; only authenticated users have a cryptographically anchored identity. ## Links - Developers: https://meetingburner.com/developers - Agent JWKS: https://meetingburner.com/.well-known/meetingburner-agent-keys.json - Privacy: https://meetingburner.com/privacy - Terms: https://meetingburner.com/terms