Conversational Intelligence
Granola
API integration
Ship Conversational Intelligence features without building the integration. Full Granola API access via Proxy and 7 MCP-ready tools for AI agents — extend models and mappings to fit your product.
Talk to usUse Cases
Why integrate with Granola
Common scenarios for SaaS companies building Granola integrations for their customers.
Auto-log meetings into your CRM or CS platform
Let your users connect Granola so their client conversations, AI summaries, and action items flow into the right Account or Deal automatically. Eliminates 10-15 minutes of post-call data entry per meeting.
Turn user interviews into structured product insights
Product management and research platforms can ingest notes from a user's designated Granola folder and run their own AI tagging over transcripts to surface pain points, feature requests, and verbatim quotes.
Power sales copilots with meeting history
AI agent and sales enablement platforms can pull a rep's past Granola notes on demand to answer questions like 'what were ACME's concerns last quarter?' with citations from the actual transcript.
Convert action items into tasks in project tools
Task management and PM platforms can subscribe to new Granola notes and parse AI-generated action items into tickets, so nothing decided in a meeting is lost between the call and execution.
Sync meeting knowledge into internal wikis
Knowledge base and documentation platforms can ingest team-shared Granola notes so strategy discussions, customer feedback, and research sessions become searchable across the organization.
What You Can Build
Ship these features with Truto + Granola
Concrete product features your team can ship faster by leveraging Truto’s Granola integration instead of building from scratch.
Real-time note ingestion via webhooks
Register a Granola webhook endpoint scoped to specific folders so your product receives new notes the moment a meeting ends, with no polling required.
Folder-based integration mapping
Let users pick which Granola folder (e.g. 'Sales Calls' or 'User Interviews') should sync into which workspace, project, or object in your product.
Historical meeting backfill
On first connect, list a user's past Granola notes and pull each one's transcript, summary, and attendees to build immediate context in your product.
Attendee-based identity resolution
Use the attendees and calendar event data on each Granola note to auto-match meetings to the right Contact, Account, Deal, or Customer record in your system.
Transcript-driven AI features
Pipe raw Granola transcripts into your own LLM workflows for sentiment scoring, deal risk detection, coaching insights, or custom summarization.
Managed webhook lifecycle
Create, update, and delete Granola webhook endpoints on behalf of your users from within your product, so they never have to configure anything in Granola directly.
SuperAI
Granola AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_granola_notes
List Granola notes with optional date and folder filters. Returns: id, object, title, owner, created_at, updated_at. Max 30 per page (default 10).
get_single_granola_note_by_id
Get a single Granola note by id, optionally including the transcript. Returns: id, object, title, owner, created_at, updated_at, web_url, calendar_event, attendees, folder_membership, summary_text, summary_markdown, transcript. Required: id.
list_all_granola_folders
List folders in Granola with cursor-based pagination. Returns: id, object, name, parent_folder_id. Max 30 per page, default 10.
list_all_granola_webhook_endpoints
List webhook endpoints in Granola that the current API key can manage. Returns: id, object, url, url_redacted, events, folder_ids, scopes, created_by, enabled, created_at.
create_a_granola_webhook_endpoint
Create a webhook endpoint in Granola to receive event deliveries at an HTTPS URL. Returns: id, object, url, url_redacted, events, folder_ids, scopes, created_by, enabled, created_at, signing_secret. The signing_secret is only returned in this response. Required: url, scopes.
update_a_granola_webhook_endpoint_by_id
Update a Granola webhook endpoint by id — change its URL, event subscriptions, scopes, folder filter, or enabled state. Returns: id, object, url, url_redacted, events, folder_ids, scopes, created_by, enabled, created_at. Required: id.
delete_a_granola_webhook_endpoint_by_id
Delete a Granola webhook endpoint by id to stop its deliveries immediately. Returns: id, object, deleted. Required: id.
Why Truto
Why use Truto’s MCP server for Granola
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with Granola in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Granola account
Use Truto’s frontend SDK to connect your customer’s Granola account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Granola
Truto’s Proxy API is a 1-to-1 mapping of the Granola API. You call us, we call Granola, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Granola’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Granola on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How do end users authenticate their Granola account?
Truto handles the Granola auth flow for you. Your users connect their Granola account through a Truto-managed connection, and you call the Granola tools using that connection — no token storage or refresh logic on your side.
Can we receive meeting notes in real time instead of polling?
Yes. Use create_a_granola_webhook_endpoint to subscribe to note events. Webhooks can be scoped to specific folder_ids, so your product only receives events for the folders a user has opted to sync.
What data is available for each meeting?
get_single_granola_note_by_id returns the raw transcript, AI-generated summary (both markdown and plain text), attendees, and the associated calendar event metadata — enough to match the meeting to records in your product and run downstream AI on the content.
Can we backfill a user's meeting history on first connect?
Yes. Call list_all_granola_notes to enumerate the user's notes, then fetch full context per note with get_single_granola_note_by_id. Truto normalizes pagination so you can iterate without handling Granola-specific cursors.
Can users choose which folders sync into our product?
Yes. Use list_all_granola_folders to render a folder picker in your UI, then either filter fetched notes by folder or scope your webhook subscription to those folder_ids.
Does Truto offer a Unified API for conversational intelligence tools?
Not yet for this category — the Granola integration is exposed as native, product-specific tools today. If you need a normalized schema across multiple meeting intelligence providers, reach out and we can prioritize a unified model.
What write operations are supported?
Currently, write access is focused on webhook management (create, update, delete webhook endpoints). Note content itself is read-only via the API, reflecting Granola's own product surface.
From the Blog
Granola integration guides
Deep dives, architecture guides, and practical tutorials for building Granola integrations.
Granola
Get Granola integrated into your app
Our team understands what it takes to make a Granola integration successful. A short, crisp 30 minute call with folks who understand the problem.