MCP server

Your meetings,
inside your assistant.

MeetNotes is a remote MCP server. Connect it to Claude or ChatGPT and ask across your own meeting history: what was decided, who owns what, and the exact words — each answer linked to the passage it came from.

Connect it See the tools

Endpoint

One URL

https://getmeetnotes.com/mcp

Streamable HTTP, stateless. The server negotiates the protocol version with your client. mcp.getmeetnotes.com is reserved as a future alias and is not live yet — use the address above.

It reads only what your MeetNotes account can already see: your own recordings and meetings, plus meetings shared into a workspace you belong to, under the same rules the app applies. Recording still happens in the MeetNotes app; the server never asks your assistant for a microphone. An audio file you attach in the chat can be sent for transcription — see attach and transcribe.

Connect

Sign in once, in your browser

Both assistants use the same OAuth flow: paste the URL, a MeetNotes page opens in your browser, you sign in the way you already do on the web (email code, Google or Apple) and approve the connection. No password or key is typed into the assistant, and you can end the connection from the assistant's own settings.

Claude

Claude Desktop or claude.ai: Settings → Connectors → Add custom connector → paste https://getmeetnotes.com/mcp → Connect, then finish the sign-in in the browser tab that opens.

Claude Code:

claude mcp add --transport http meetnotes https://getmeetnotes.com/mcp

then run /mcp inside Claude Code and choose Authenticate next to meetnotes.

ChatGPT

Settings → Connectors (or Apps) → Create → name it MeetNotes, paste https://getmeetnotes.com/mcp, choose OAuth, save, then approve the connection in the browser. On plans where connectors are managed by an administrator, they enable it first. ChatGPT also uses the standard search and fetch tools this server provides, so it can cite your meetings in ordinary answers, and it can hand an audio file you attach to meetnotes_import_audio.

Any other MCP client, or a server of your own

The server publishes standard metadata, so a client that supports OAuth 2.1 with PKCE and dynamic registration connects without setup:

https://getmeetnotes.com/.well-known/oauth-protected-resource
https://getmeetnotes.com/.well-known/oauth-authorization-server

API key instead of OAuth

Partner accounts can skip the browser entirely and send their partner API key as the bearer token. The connection then acts as the partner's own account with every scope.

Authorization: Bearer mk_live_...
Tools

Eleven tools: eight read,
one export, one import,
one notetaker

ToolWhat it does
meetnotes_get_capabilitiesWhat this connection can do: account, languages, formats, limits, how to add a recording.
meetnotes_list_recordingsYour recordings and meetings with processing state — find an id, or see whether a recording has finished.
searchSearch your finished meetings by words or meaning; returns overview documents and transcript parts.
fetchOne document by id: a meeting overview (minutes plus its transcript parts) or one part with exact words and speaker labels.
meetnotes_get_transcriptThe transcript as stored, paged: speaker, timing in milliseconds, and a link to each passage.
meetnotes_list_actionsAction items with owner, status, resolved due date and the transcript segment they came from.
meetnotes_export_meetingA private PDF, Word, Markdown, text or JSON export with a signed-in download link — never a public share link.
meetnotes_import_audioTranscribe an audio file attached in the chat: returns a job receipt, the meeting appears in your account, and the same file twice never processes twice.
meetnotes_invite_notetakerSend the MeetNotes Notetaker into a Google Meet, Zoom or Teams call from its link, now or at a set time. Returns a job receipt; the minutes follow once the call ends.
meetnotes_get_jobStatus of an export, an import, a notetaker, or a meeting that is still processing. A completed meeting carries its full minutes as Markdown.
meetnotes_aboutFacts about MeetNotes itself — pricing, platforms, the notetaker, comparisons, privacy, languages — generated from this website, with the pages they came from.

Every tool is bounded to your account: an id you were handed earlier is checked again on every call. Transcript pages hold up to 100 segments or 64 KB; transcript parts returned by fetch hold up to 24 KB of text and carry the meeting's revision, so an edited meeting answers REVISION_CHANGED rather than serving different words under an old id.

Links open the app. Every meeting link a tool returns (url, source_url) is a /open/meeting/… address: tapped on a phone it opens that meeting in the MeetNotes app you are already signed into; on a computer it offers the signed-in web page, with the cited passage's anchor carried across. The web page itself is beside it as web_url.

The minutes arrive in the chat. When meetnotes_get_job reports a meeting completed — an import, a notetaker call or a recording made in the app — the result carries minutes_markdown: the full minutes, every section the meeting has, rendered exactly as the app's own Markdown export, so the assistant shows them without a second call. Very long minutes are cut at 64 KB with a note pointing at the export.

Recording is still done in the MeetNotes app — phone or desktop — and every recording appears in meetnotes_list_recordings; meetnotes_get_job says when it is ready. The two other ways in are an attachment and a call link:

Attach and transcribe

In ChatGPT, attach an audio file and say what you want — "transcribe this with MeetNotes". The assistant passes the attachment to meetnotes_import_audio, which answers at once with a job receipt (job_id, status, a link to the meeting) while MeetNotes processes the audio the same way it processes a recording from the app: same transcript, same minutes, same minutes-balance. Ask again in a moment and the assistant checks meetnotes_get_job; once it is completed, the meeting is readable through every other tool and in your MeetNotes app, where it shows the attachment's file name under its title.

  • Accepted: audio files — m4a, mp3, wav, aac, ogg, opus, flac, webm, amr, caf, m4b — up to 300 MB. Video, archives and empty files are refused as UNSUPPORTED_AUDIO.
  • Once only: the same file attached twice returns the same meeting with deduplicated: true — it is never processed or charged twice.
  • Minutes: an import spends your MeetNotes minutes exactly like a recording. On an empty balance the meeting still processes and waits locked until minutes are added; past two hours of locked, unpaid meetings, further imports are refused with INSUFFICIENT_ALLOWANCE.
  • Only the chat's own attachments: the server fetches the file from the assistant's file store and nowhere else. It never fetches an arbitrary web address, never follows a link to a private network, and never records the temporary download link.
  • Language hints: up to five BCP-47 tags (en, hi, pt-BR) may accompany the file; the transcript still reports the language actually spoken.

An expired attachment link answers FILE_REFERENCE_EXPIRED: attach the file again rather than retrying. Whether a given ChatGPT client hands over attachments this way depends on that client; the MeetNotes app's own import remains the fallback for everything else.

Send the notetaker to a call

Paste a Google Meet, Zoom or Microsoft Teams link into the chat and ask for MeetNotes to join — now, or at a time you name. The assistant calls meetnotes_invite_notetaker, which books the same bot the app's own "Invite the notetaker" button does and answers with a job receipt. The bot joins as a visible participant named MeetNotes Notetaker; the host admits it from the waiting room. It records until the call ends, the recording is processed like any other, and the next meetnotes_get_job after that carries the minutes.

  • Same rules as the app: at most two invitations waiting or in a call per account, a join booked at most 7 days ahead, and the same link while an invitation is active returns that invitation with deduplicated: true.
  • Minutes: a recorded call spends your MeetNotes minutes like a recording; an empty balance past the locked backlog is refused with INSUFFICIENT_ALLOWANCE before anything is booked.
  • Leaving or cancelling is done from the MeetNotes app, where the invitation also appears.
  • Language: output_language (a tag or a name, for both the notetaker and an attachment) sets the language the minutes are written in; omitted, your account's preference applies.

Ask about MeetNotes itself

meetnotes_about answers questions about the product — what it costs, which platforms it runs on, how the notetaker works, how it compares with other tools, how it treats privacy, which languages it handles — with text generated from this website at build time and the pages it came from, so an assistant repeats what the site says and nothing it does not. Meetings recorded with a clinical format (doctor consultations, operation notes) are never available through an assistant; they stay in the app. On pricing it states only the free grant: the plugin never displays plans or prices, never sells anything and links to no checkout.

Scopes

ScopeGrants
meetings:readRead capabilities, recordings, meeting documents and transcripts.
actions:readRead action items from accessible meetings.
exports:createCreate private exports of accessible meetings.
transcripts:createSend an attached audio file for transcription (meetnotes_import_audio) or the notetaker into a call (meetnotes_invite_notetaker). Both spend the account's minutes.

Errors

A failure comes back as a small JSON object in the tool result — code, message and retryable — never as an empty answer, so an assistant can tell "nothing found" from "not allowed".

CodeMeaning
RESOURCE_NOT_FOUNDNo such meeting, document or job in this account — including anything that belongs to somebody else.
ASSET_NOT_READYThe meeting is still processing. Check meetnotes_get_job and try again later.
INSUFFICIENT_ALLOWANCEThe meeting is locked until minutes are added in the MeetNotes app.
REVISION_CHANGEDThe meeting was edited after that id or cursor was issued. Fetch it again for current ids.
PERMISSION_DENIEDThe connection was not granted the scope this tool needs.
INVALID_INPUTAn argument was malformed — a cursor this server did not issue, or an attachment from a source that is not accepted.
UNSUPPORTED_AUDIOThe attachment is not an audio file MeetNotes can process (video, archives and empty files included).
FILE_TOO_LARGEThe attachment is over the 300 MB limit.
FILE_REFERENCE_EXPIREDAn export link is past its hour, or an attachment link has expired. Create the export, or attach the file, again.
RATE_LIMITEDMore than 60 tool calls in a minute for one account. Wait and retry.
PROCESSING_FAILEDProcessing of that meeting failed; retry it from the app.
DEPENDENCY_UNAVAILABLEA temporary server-side problem. Retry shortly.
Privacy

What the assistant sees

Meeting text, minutes and links for the meetings your account can open — nothing about other accounts, no voice data, no billing details. Content that has already been returned into a conversation stays in that conversation; disconnecting stops any further access. Export links are signed, tied to your account, and expire after an hour. An attached audio file is fetched once, kept under the same rules as a recording made in the app, and its temporary download link is never stored or logged. A notetaker joins only the one call link you gave it, from our own servers.

Questions: support@getmeetnotes.com.

Ask your meetings anything

Connect MeetNotes to the assistant you already use. Every answer links back to the words that were said.

Download on the App StoreGet it on Google Play