Skip to content
Talk to an Engineer Dashboard

Granola MCP

Connect to Granola MCP to search meeting notes, inspect meeting details, and retrieve transcripts from Granola's official MCP server.

Connect to Granola MCP to search meeting notes, inspect detailed meeting metadata, and retrieve verbatim meeting transcripts from Granola’s official MCP server.

Granola MCP logo

Supports authentication: OAuth 2.1

What you can build with this connector
Use caseTools involved
Ask natural-language questions across meeting notesgranolamcp_query_granola_meetings
List meetings for a date rangegranolamcp_list_meetings
Fetch full details for specific meetingsgranolamcp_get_meetings
Retrieve exact spoken wording from a meetinggranolamcp_get_meeting_transcript

Key concepts:

  • Official MCP server: This connector uses Granola’s hosted MCP endpoint at https://mcp.granola.ai/mcp.
  • OAuth with browser sign-in: Authentication uses Granola’s OAuth flow with PKCE and dynamic client registration.
  • Read-only access: The available tools retrieve meeting notes, summaries, metadata, and transcripts. They do not create or modify meetings.
  • Query first for open-ended questions: Prefer granolamcp_query_granola_meetings when the user asks broad questions about meeting content or decisions.
  1. In your agent connector settings, choose Granola MCP.
  2. Start the connection flow and sign in to your Granola account in the browser.
  3. Approve access to Granola’s official MCP server.
  4. Return to the app once the OAuth flow completes.

Connect a user’s Granola account and query Granola’s official MCP server through Scalekit. Scalekit handles the OAuth flow, token storage, and tool execution automatically.

Granola MCP is primarily used through Scalekit tools. Use scalekit_client.actions.execute_tool() to search meeting notes, list meetings, fetch meeting details, and retrieve transcripts without calling the upstream MCP server directly.

Tool Calling

Use this connector when you want an agent to work with Granola meeting content, including summaries, notes, attendees, and transcripts.

  • Use granolamcp_query_granola_meetings for natural-language questions such as decisions, action items, or follow-ups from past meetings.
  • Use granolamcp_list_meetings to find meetings in a time window before drilling into specific meeting IDs.
  • Use granolamcp_get_meetings when you already know the Granola meeting IDs and need richer metadata or notes.
  • Use granolamcp_get_meeting_transcript when exact wording matters and you need the verbatim transcript instead of summarized notes.
examples/granolamcp_query_meetings.py
import os
from scalekit.client import ScalekitClient
scalekit_client = ScalekitClient(
client_id=os.environ["SCALEKIT_CLIENT_ID"],
client_secret=os.environ["SCALEKIT_CLIENT_SECRET"],
env_url=os.environ["SCALEKIT_ENV_URL"],
)
auth_link = scalekit_client.actions.get_authorization_link(
connection_name="granolamcp",
identifier="user_123",
)
print("Authorize Granola MCP:", auth_link.link)
input("Press Enter after authorizing...")
connected_account = scalekit_client.actions.get_or_create_connected_account(
connection_name="granolamcp",
identifier="user_123",
)
tool_response = scalekit_client.actions.execute_tool(
tool_name="granolamcp_query_granola_meetings",
connected_account_id=connected_account.connected_account.id,
tool_input={
"query": "What decisions and follow-ups came out of last week's customer calls?"
},
)
print("Granola response:", tool_response)

Get the full transcript for a specific Granola meeting by ID. Returns only the verbatim transcript content, not summaries or notes.

NameTypeRequiredDescription
meeting_idstringYesMeeting UUID
schema_versionstringNoOptional schema version to use for tool execution
tool_versionstringNoOptional tool version to use for tool execution

Get detailed meeting information for one or more Granola meetings by ID. Returns private notes, AI-generated summary, attendees, and metadata.

NameTypeRequiredDescription
meeting_idsarray<string>YesArray of meeting UUIDs (max 10)
schema_versionstringNoOptional schema version to use for tool execution
tool_versionstringNoOptional tool version to use for tool execution

List the user’s Granola meeting notes within a time range. Returns meeting titles and metadata.

NameTypeRequiredDescription
custom_endstringNoISO date for custom range end. Required if time_range is custom.
custom_startstringNoISO date for custom range start. Required if time_range is custom.
schema_versionstringNoOptional schema version to use for tool execution
time_rangestringNoTime range to query meetings from. One of this_week, last_week, last_30_days, or custom. Defaults to last_30_days.
tool_versionstringNoOptional tool version to use for tool execution

Query Granola about the user’s meetings using natural language. Returns a tailored response with inline citations that reference source meeting notes.

NameTypeRequiredDescription
document_idsarray<string>NoOptional list of specific meeting IDs to limit context to
querystringYesThe query to run on Granola meeting notes
schema_versionstringNoOptional schema version to use for tool execution
tool_versionstringNoOptional tool version to use for tool execution