Granola MCP
officialConnect Claude, ChatGPT, and other AI tools to your Granola meeting notes via MCP. Query your notes, search transcripts, and get meeting insights in your favorite AI assistants.
What can you do with Granola MCP?
- Search meeting notes — Ask your assistant to find specific topics, decisions, or discussions from past meetings using
query_granola_meetings. - List meeting folders — Use
list_meeting_foldersto browse accessible folders, including titles, descriptions, and note counts (paid plans only). - Retrieve meeting details — Pull up notes, attendees, dates, and summarized content for specific meetings with
get_meetings. - Extract action items — Ask for remaining action items or decisions per person from a project's meetings via
get_meetings. - Access transcripts — Get raw transcripts with
get_meeting_transcriptto pull exact quotes or clarify discussions (paid plans only). - Verify account connection — Confirm which Granola account and workspace is active using
get_account_info.
Documentation
Granola MCP
Connect Claude, ChatGPT, and other AI tools to your Granola meeting notes via MCP. Query your notes, search transcripts, and get meeting insights in your favorite AI assistants.
Connect your AI tools to your Granola meeting notes with Granola MCP. Once connected you can use this to: search through your meeting notes, find specific topics discussed in past meetings, browse meeting folders, extract action items or decisions from your notes, answer questions based on your meeting history and more.
Granola supports browser-based OAuth and Enterprise-Managed Authorization (EMA) for compatible identity providers and MCP clients.
What MCP can access
Granola MCP connects as an individual user through browser OAuth. With EMA, the organization's identity provider manages access instead. Both methods return notes that the user can access and that belong to the user's active Granola workspace, subject to the access scopes below.
Notes from other Granola workspaces are not included, even if they're visible in the active workspace through sharing.
| Access scope | What can it access |
|---|---|
| Personal notes |
|
| Public notes |
|
Your plan and workspace settings determine which scopes MCP uses:
| Plan | MCP access |
|---|---|
| Basic (Free) | Personal notes from the last 30 days. Some folder, search, and transcript tools are only available on paid plans. |
| Business | Personal notes and public notes. |
| Enterprise | Workspace admins can configure which scopes are available to members. If neither scope is enabled, members cannot use Granola MCP. |
Info
MCP follows the active workspace selected in the Granola app. If you belong to more than one workspace, switch workspaces in Granola before asking your AI tool another question. MCP does not combine notes across multiple workspaces.
Set-up guide
Pre-requisites
- A Granola account with existing meeting notes
- AI tool that supports MCP, such as Claude and ChatGPT
How to connect
1. Open and sign in to Claude2. Go to Settings
3. Go to Connectors, search for Granola
4. Connect, authenticate and make sure you're toggled on when
chatting
1. Open and sign in to ChatGPT
2. Go to Settings
3. Search for 'Granola' and connect
4. You can now @Granola or just ask to reference your meetings in ChatGPT
1. Run `claude` in your terminal
2. Run this command:
```bash theme={null}
claude mcp add granola --transport http https://mcp.granola.ai/mcp
```
3. Open a new terminal tab and run `claude` again
4. Run `/mcp`, select the granola MCP, and select 'Authenticate'
5. Ask Claude to reference your meetings
You can manually connect to the Granola MCP by using the public URL{" "}
[https://mcp.granola.ai/mcp](https://mcp.granola.ai/mcp) as a custom connection.
Your AI tool must support:
* **MCP client protocol** using [Streamable HTTP transport](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http)
* **OAuth 2.0 authentication and metadata discovery** — for a standard connection, your tool must be able to open a browser window for the user to sign in to Granola. After sign-in, the tool receives a bearer token to include in subsequent requests.
Enterprise clients can use [Enterprise-Managed Authorization](#enterprise-managed-authorization) instead of the standard Granola sign-in flow. Each connection still acts on behalf of an individual Granola user; there is no API key or service account access method for MCP.
Info
If you need API key access for scripts, automations, or custom integrations, see our Granola API instead.
Enterprise-Managed Authorization
Enterprise-Managed Authorization (EMA) lets your company control access to Granola MCP through its identity provider (IdP). Users sign in to their MCP client with their company account, and the IdP decides whether they can connect to Granola.
Your IdP controls who can connect. Granola's workspace settings control which notes they can access.
Before you begin
You need:
- A Granola Enterprise workspace with SSO configured
- An IdP and MCP client that support EMA (Granola has tested with Claude & Okta)
- Administrator access to your Granola workspace and IdP, or help from the relevant admins
Each user should already have a Granola account associated with their company identity. If they haven’t used company SSO with Granola before, ask them to sign in to Granola with SSO once before using EMA.
Configure EMA
- In Granola, go to Settings → Workspace → General → Apps & connectors → MCP access for members. Enable the note access your company wants to allow.
- In your IdP, add or select Granola and enable its managed authorization or resource server capability.
- Create a managed resource connection from your MCP client to Granola.
- Enter the values below. Your IdP may use different field names or infer some values automatically.
| Field | Value |
|---|---|
| Resource URL | https://mcp.granola.ai/mcp |
| Issuer URL | https://mcp-auth.granola.ai |
| ID-JAG audience | https://mcp-auth.granola.ai |
| Scope | mcp |
| Client ID at resource | The MCP client's Client ID Metadata Document URL |
- Assign the appropriate users or groups to both Granola and the MCP client, then activate the managed resource connection.
With EMA, assigned users do not complete a separate Granola OAuth consent flow. Their access remains subject to both your IdP policy and the MCP access configured in Granola.
If your company builds its own MCP client
Granola supports confidential clients that authenticate with private_key_jwt through a Client ID Metadata Document (CIMD). This lets your client authenticate with its own key pair instead of a client secret issued by Granola.
Your client must implement the MCP EMA extension, obtain an ID-JAG from the company's IdP, and publish a public HTTPS metadata document that declares private_key_jwt and a jwks_uri. Use Granola's OAuth metadata to discover the supported capabilities and endpoints, and use the exact advertised issuer as the audience of the client assertion.
See the MCP EMA specification for the complete protocol requirements.
Example: Claude and Okta
Granola has tested EMA with Claude and Okta Cross App Access (XAA):
- In Okta, add the Granola integration.
- Open the Resource server tab and enable Cross App Access (XAA).
- Follow Okta's instructions to configure a resource server connector between Claude and Granola.
- Use
https://claude.ai/oauth/mcp-oauth-client-metadataas the Client ID at resource.
Tools and descriptions
| Tool | Description | Example prompts |
|---|---|---|
query_granola_meetings | Chat with Granola | See full chat examples here |
list_meeting_folders | Paid plans only — List folders you can access, including folder ID, title, description, and note count. | What meeting folders do I have access to? |
list_meetings | List meeting notes you can access, including meeting ID, title, date, and attendees. Can be filtered by folder on paid plans. | What meetings did I have with Sam last week? |
get_meetings | Read meeting notes you can access, including meeting ID, title, date, attendees, private notes, and summarized notes. | What are the remaining action items for each person on this project? |
get_meeting_transcript | Paid plans only — Zoom in to your transcripts, includes: meeting ID, raw transcript | Give specific quotes of how the team described the issue |
get_account_info | Returns the email and active workspace for the Granola account currently connected to this MCP session — useful for confirming you connected the right Granola account when you have multiple (e.g. personal + work) | Which Granola account am I signed in with? |
Troubleshooting guide
Rate limits will vary depending on your Granola subscription plan and the MCP tool that you're using. Rate limits currently average around 100 requests per minute across all tools. Rate limits are subject to change.If you're getting a message that your LLM agent can't access your meeting notes or use the Granola MCP tools, try re-authenticating. If Granola is connected in Claude but shows **No tools available**, reconnect the Granola connector in Claude to reset the connection:Info
If you're on the Basic (Free) plan, you can only query notes in the last 30 days.
1. Go to [Claude connector settings](https://claude.ai/customize/connectors) on the web. You must do this on claude.ai even if you use the Claude desktop app.
2. Select **Granola**.
3. Click the three-dot menu in the top-right.
4. Choose **Disconnect**.
5. Without refreshing the page or navigating away, choose **Connect** again
and complete authentication.
If you see this error after completing the OAuth sign-in flow, you may have authenticated with a different email address than the one your Granola account is registered under.Info
If you're on a Claude Team or Enterprise plan, you may need a workspace admin to disconnect and reconnect Granola for you.
To check which email your Granola account uses, open the Granola app and go to **Settings** (<kbd>⌘</kbd> + <kbd>,</kbd> on macOS, <kbd>Ctrl</kbd> + <kbd>,</kbd> on Windows). Your account email is shown under your profile picture in the top left.
When reconnecting MCP, make sure you sign in with that same email address during the OAuth flow.
If your AI tool says it can't find any notes, or returns no results when you know you have meetings, MCP may be connected to the wrong Granola account or the wrong workspace within the right account.
Ask your AI tool: **"Which Granola account am I signed in with?"** It will use the `get_account_info` tool to return the email and active workspace currently connected to MCP. Then:
* **Right email, wrong workspace**: switch workspace in the Granola desktop app (click your workspace name in the top left and pick the right one). MCP follows your active workspace, so the next query will use it.
* **Wrong email entirely**: follow the steps in the **Signed into Claude with the wrong account** accordion below (or the equivalent for your AI tool) to disconnect and reconnect with the correct account.
Here's how to reconnect Claude MCP with a different Granola account:
1. Open an incognito/private browsing window and sign in to claude.ai.
2. Go to **Settings -> Connectors** and disconnect Granola.
3. Still in incognito, reconnect Granola. This will prompt you to sign in again, so use your main Granola account email.
4. Once connected, switch back to your normal browser and it should be working with the right account.
The reason a normal disconnect/reconnect doesn't fix this is that your existing Granola session stays active, so it skips the login step. Incognito forces a fresh login, which lets you pick the right account.
General FAQ
No, you can use different accounts for your AI tool and Granola. You'll authenticate the Granola account you want your AI tool to have access to. To verify which email your Granola account uses, open the Granola app and go to **Settings** (⌘ + , on macOS, Ctrl + , on Windows) — your account email is shown under your profile picture in the top left. First, check which access scopes apply to you:* **Basic (Free):** Personal notes from the last 30 days.
* **Business:** Personal notes and public notes.
* **Enterprise:** Workspace admins configure which scopes are available to members.
Personal notes access does not include every private note in the workspace. The note must be yours, shared directly with you, or in a private folder shared with you. Public notes access includes notes visible to everyone in the workspace, including notes in the Team space.
MCP also only returns notes that belong to the active workspace. If a note was created in another Granola workspace, MCP will not return it from your current workspace, even if you can see it in Granola.
Also confirm that MCP is connected to the right account and active workspace by asking your AI tool: **"Which Granola account am I signed in with?"**
This should happen immediately, and you'll have access to extra tools and upgraded rate limits on your next query.
For a standard browser OAuth connection, no. Granola MCP uses Dynamic Client Registration (DCR), which means credentials are handled automatically. You don't need to generate or enter any client ID or client secret.
If you're using a third-party platform (like Composio) that shows client ID and client secret fields, leave them blank — the platform will register with Granola automatically when you connect.
EMA setup is different. Your identity provider may ask for a **Client ID at resource** when creating the managed connection. Enter the MCP client's Client ID Metadata Document URL. If you're using an existing MCP client such as Claude, use the URL provided by that client; you do not need to create one yourself or enter a client secret.
If you're building your own confidential MCP client, you create and host its Client ID Metadata Document. The document's URL is the client ID, and the client authenticates with its private key rather than a Granola-issued client secret. See [If your company builds its own MCP client](#if-your-company-builds-its-own-mcp-client).
Yes — any tool that implements the [MCP client specification](https://modelcontextprotocol.io/) with Streamable HTTP transport can connect to Granola MCP. Your tool can use browser OAuth, or EMA if it supports the extension and your organization has configured a compatible IdP. See the "Other AI tools" and [Enterprise-Managed Authorization](#enterprise-managed-authorization) sections above.
If you're building a custom integration and need help, reach out to [hey@granola.so](mailto:hey@granola.so).
Enterprise FAQ
Yes. Enterprise admins can configure the note access available to workspace members:1. Go to **Settings → Workspace → General**.
2. Find **MCP access for members** under **Apps & connectors**.
3. Click **Manage**.
4. Enable **Personal notes**, **Public notes**, both, or neither.
Access depends on the workspace's current MCP configuration. If neither scope is enabled, members have no MCP access until an admin enables personal notes, public notes, or both.
The controls are under **Settings → Workspace → General → Apps & connectors → MCP access for members**. All Enterprise workspace members can see the setting, but only admins can change it. If you need another scope enabled, ask your workspace admin.
No. The controls determine what non-admin workspace members can access through MCP. Enterprise admins can access both personal notes and public notes through MCP.