Skip to content

Commit 40e0a66

Browse files
evantahlerjottakka
andauthored
[AUTO] Adding MCP Servers docs update (#899)
Co-authored-by: jottakka <203343514+jottakka@users.noreply.github.com>
1 parent adc01f5 commit 40e0a66

7 files changed

Lines changed: 239 additions & 114 deletions

File tree

app/en/resources/integrations/productivity/_meta.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,10 @@ const meta: MetaRecord = {
5353
title: "Google Slides",
5454
href: "/en/resources/integrations/productivity/google-slides",
5555
},
56+
granola: {
57+
title: "Granola",
58+
href: "/en/resources/integrations/productivity/granola",
59+
},
5660
jira: {
5761
title: "Jira",
5862
href: "/en/resources/integrations/productivity/jira",

toolkit-docs-generator/data/toolkits/daytona.json

Lines changed: 2 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3797,7 +3797,7 @@
37973797
"inferrable": true
37983798
},
37993799
{
3800-
"name": "input",
3800+
"name": "input_text",
38013801
"type": "string",
38023802
"required": true,
38033803
"description": "Input text to send (newline appended automatically)",
@@ -3828,33 +3828,6 @@
38283828
"description": "Input sent confirmation"
38293829
},
38303830
"documentationChunks": [],
3831-
"codeExample": {
3832-
"toolName": "Daytona.SendSessionInput",
3833-
"parameters": {
3834-
"session_id": {
3835-
"value": "session-4f9b2a7e-12c3-4d5e-8f6a-9b0c1d2e3f45",
3836-
"type": "string",
3837-
"required": true
3838-
},
3839-
"command_id": {
3840-
"value": "cmd-9a8b7c6d-1234-5678-90ab-cdef12345678",
3841-
"type": "string",
3842-
"required": true
3843-
},
3844-
"input": {
3845-
"value": "y",
3846-
"type": "string",
3847-
"required": true
3848-
},
3849-
"sandbox": {
3850-
"value": "sandbox-01",
3851-
"type": "string",
3852-
"required": false
3853-
}
3854-
},
3855-
"requiresAuth": false,
3856-
"tabLabel": "Call the Tool"
3857-
},
38583831
"metadata": {
38593832
"classification": {
38603833
"serviceDomains": [
@@ -4219,6 +4192,5 @@
42194192
"documentationChunks": [],
42204193
"customImports": [],
42214194
"subPages": [],
4222-
"generatedAt": "2026-02-26T20:45:10.388Z",
4223-
"summary": "Daytona is a sandbox provider; this Arcade toolkit lets LLMs provision and manage isolated sandboxes, run code/commands, manage sessions, snapshots, and integrate with Git and port previews. It streamlines lifecycle, file I/O, automation, and diagnostics for development workflows.\n\n**Capabilities**\n- Full sandbox lifecycle and resource/resizing controls with automation (auto-stop/archive/delete).\n- File system and Git operations, plus search/replace and snapshot management.\n- Execute code/commands and persistent sessions with logs, ports, SSH and web previews.\n- Pagination-aware listing, region selection, and metadata/label management for coordination.\n\n**OAuth**\nProvider: GitHub\nScopes: None\n\n**Secrets**\n- api_key: DAYTONA_API_KEY (used to authenticate Arcade→Daytona requests; store in env or secret manager).\n- Transient SSH access tokens returned by CreateSshAccess are sensitive; avoid logging."
4195+
"generatedAt": "2026-04-02T11:25:02.814Z"
42244196
}
Lines changed: 184 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,184 @@
1+
{
2+
"id": "Granola",
3+
"label": "Granola",
4+
"version": "2.0.0",
5+
"description": "Arcade tools for Granola meeting intelligence (public Enterprise API)",
6+
"metadata": {
7+
"category": "productivity",
8+
"iconUrl": "https://design-system.arcade.dev/icons/granola.svg",
9+
"isBYOC": true,
10+
"isPro": false,
11+
"type": "arcade",
12+
"docsLink": "https://docs.arcade.dev/en/resources/integrations/productivity/granola",
13+
"isComingSoon": false,
14+
"isHidden": false
15+
},
16+
"auth": null,
17+
"tools": [
18+
{
19+
"name": "GetMeeting",
20+
"qualifiedName": "Granola.GetMeeting",
21+
"fullyQualifiedName": "Granola.GetMeeting@2.0.0",
22+
"description": "Get full metadata for one Granola meeting by its note ID.\n\nDoes not return notes or transcript content. Use get_meeting_transcript for the transcript.",
23+
"parameters": [
24+
{
25+
"name": "meeting_id",
26+
"type": "string",
27+
"required": true,
28+
"description": "Granola note ID in format 'not_<14 chars>' (e.g. 'not_XXXXXXXXXXXXXX').",
29+
"enum": null,
30+
"inferrable": true
31+
}
32+
],
33+
"auth": null,
34+
"secrets": [
35+
"GRANOLA_API_KEY"
36+
],
37+
"secretsInfo": [],
38+
"output": {
39+
"type": "json",
40+
"description": "Full meeting metadata including attendees and calendar event."
41+
},
42+
"documentationChunks": [],
43+
"metadata": {
44+
"classification": {
45+
"serviceDomains": [
46+
"documents"
47+
]
48+
},
49+
"behavior": {
50+
"operations": [
51+
"read"
52+
],
53+
"readOnly": true,
54+
"destructive": false,
55+
"idempotent": true,
56+
"openWorld": true
57+
},
58+
"extras": null
59+
}
60+
},
61+
{
62+
"name": "GetMeetingTranscript",
63+
"qualifiedName": "Granola.GetMeetingTranscript",
64+
"fullyQualifiedName": "Granola.GetMeetingTranscript@2.0.0",
65+
"description": "Get the verbatim transcript for a Granola meeting, with speaker labels and timestamps.\n\nReturns all segments by default. Use speaker_filter to narrow to a single speaker.\nNote: transcripts can be large for long meetings.",
66+
"parameters": [
67+
{
68+
"name": "meeting_id",
69+
"type": "string",
70+
"required": true,
71+
"description": "Granola note ID in format 'not_<14 chars>' (e.g. 'not_XXXXXXXXXXXXXX').",
72+
"enum": null,
73+
"inferrable": true
74+
},
75+
{
76+
"name": "speaker_filter",
77+
"type": "string",
78+
"required": false,
79+
"description": "Filter by speaker name (case-insensitive match). Leave empty to return all speakers.",
80+
"enum": null,
81+
"inferrable": true
82+
}
83+
],
84+
"auth": null,
85+
"secrets": [
86+
"GRANOLA_API_KEY"
87+
],
88+
"secretsInfo": [],
89+
"output": {
90+
"type": "json",
91+
"description": "Transcript segments with speaker labels and timestamps."
92+
},
93+
"documentationChunks": [],
94+
"metadata": {
95+
"classification": {
96+
"serviceDomains": [
97+
"documents"
98+
]
99+
},
100+
"behavior": {
101+
"operations": [
102+
"read"
103+
],
104+
"readOnly": true,
105+
"destructive": false,
106+
"idempotent": true,
107+
"openWorld": true
108+
},
109+
"extras": null
110+
}
111+
},
112+
{
113+
"name": "ListMeetings",
114+
"qualifiedName": "Granola.ListMeetings",
115+
"fullyQualifiedName": "Granola.ListMeetings@2.0.0",
116+
"description": "List Granola meetings, optionally filtered by date range, with cursor pagination.\n\nReturns metadata only — no notes or transcript content. Results are newest first.",
117+
"parameters": [
118+
{
119+
"name": "created_after",
120+
"type": "string",
121+
"required": false,
122+
"description": "Only return meetings created on or after this date (YYYY-MM-DD). Leave empty for no lower bound.",
123+
"enum": null,
124+
"inferrable": true
125+
},
126+
{
127+
"name": "created_before",
128+
"type": "string",
129+
"required": false,
130+
"description": "Only return meetings created before this date (YYYY-MM-DD). Leave empty for no upper bound.",
131+
"enum": null,
132+
"inferrable": true
133+
},
134+
{
135+
"name": "page_size",
136+
"type": "integer",
137+
"required": false,
138+
"description": "Number of results per page (1-30). Defaults to 10.",
139+
"enum": null,
140+
"inferrable": true
141+
},
142+
{
143+
"name": "cursor",
144+
"type": "string",
145+
"required": false,
146+
"description": "Opaque pagination cursor returned by a previous list_meetings call. Leave empty for the first page.",
147+
"enum": null,
148+
"inferrable": true
149+
}
150+
],
151+
"auth": null,
152+
"secrets": [
153+
"GRANOLA_API_KEY"
154+
],
155+
"secretsInfo": [],
156+
"output": {
157+
"type": "json",
158+
"description": "List of meetings with metadata and pagination cursor."
159+
},
160+
"documentationChunks": [],
161+
"metadata": {
162+
"classification": {
163+
"serviceDomains": [
164+
"documents"
165+
]
166+
},
167+
"behavior": {
168+
"operations": [
169+
"read"
170+
],
171+
"readOnly": true,
172+
"destructive": false,
173+
"idempotent": true,
174+
"openWorld": true
175+
},
176+
"extras": null
177+
}
178+
}
179+
],
180+
"documentationChunks": [],
181+
"customImports": [],
182+
"subPages": [],
183+
"generatedAt": "2026-04-02T11:25:02.794Z"
184+
}

toolkit-docs-generator/data/toolkits/index.json

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"generatedAt": "2026-03-31T11:26:37.819Z",
2+
"generatedAt": "2026-04-02T11:25:03.125Z",
33
"version": "1.0.0",
44
"toolkits": [
55
{
@@ -389,6 +389,15 @@
389389
"toolCount": 8,
390390
"authType": "oauth2"
391391
},
392+
{
393+
"id": "Granola",
394+
"label": "Granola",
395+
"version": "2.0.0",
396+
"category": "productivity",
397+
"type": "arcade",
398+
"toolCount": 3,
399+
"authType": "none"
400+
},
392401
{
393402
"id": "Hubspot",
394403
"label": "HubSpot",
@@ -563,7 +572,7 @@
563572
{
564573
"id": "MicrosoftOutlookCalendar",
565574
"label": "Microsoft Outlook Calendar",
566-
"version": "0.1.0",
575+
"version": "0.2.0",
567576
"category": "productivity",
568577
"type": "arcade",
569578
"toolCount": 7,
@@ -572,7 +581,7 @@
572581
{
573582
"id": "MicrosoftOutlookMail",
574583
"label": "Microsoft Outlook Mail",
575-
"version": "0.1.0",
584+
"version": "0.2.0",
576585
"category": "productivity",
577586
"type": "arcade",
578587
"toolCount": 13,

toolkit-docs-generator/data/toolkits/microsoftoutlookcalendar.json

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"id": "MicrosoftOutlookCalendar",
33
"label": "Microsoft Outlook Calendar",
4-
"version": "0.1.0",
4+
"version": "0.2.0",
55
"description": "Arcade.dev LLM tools for Outlook Calendar",
66
"metadata": {
77
"category": "productivity",
@@ -28,7 +28,7 @@
2828
{
2929
"name": "CreateEvent",
3030
"qualifiedName": "MicrosoftOutlookCalendar.CreateEvent",
31-
"fullyQualifiedName": "MicrosoftOutlookCalendar.CreateEvent@0.1.0",
31+
"fullyQualifiedName": "MicrosoftOutlookCalendar.CreateEvent@0.2.0",
3232
"description": "Create an event in the authenticated user's default calendar.\n\nIgnores timezone offsets provided in the start_date_time and end_date_time parameters.\nInstead, uses the user's default calendar timezone to filter events.\nIf the user has not set a timezone for their calendar, then the timezone will be UTC.",
3333
"parameters": [
3434
{
@@ -133,7 +133,7 @@
133133
{
134134
"name": "GetEvent",
135135
"qualifiedName": "MicrosoftOutlookCalendar.GetEvent",
136-
"fullyQualifiedName": "MicrosoftOutlookCalendar.GetEvent@0.1.0",
136+
"fullyQualifiedName": "MicrosoftOutlookCalendar.GetEvent@0.2.0",
137137
"description": "Get an event by its ID from the user's calendar.",
138138
"parameters": [
139139
{
@@ -181,7 +181,7 @@
181181
{
182182
"name": "ListCalendars",
183183
"qualifiedName": "MicrosoftOutlookCalendar.ListCalendars",
184-
"fullyQualifiedName": "MicrosoftOutlookCalendar.ListCalendars@0.1.0",
184+
"fullyQualifiedName": "MicrosoftOutlookCalendar.ListCalendars@0.2.0",
185185
"description": "List all calendars the user has access to.\n\nReturns the user's own calendars plus any shared or delegated calendars.\nEach calendar includes its ID, name, owner, and permissions.\n\nUse a calendar_id from the results to target a specific calendar\nin other calendar tools.",
186186
"parameters": [
187187
{
@@ -236,7 +236,7 @@
236236
{
237237
"name": "ListEventAttachments",
238238
"qualifiedName": "MicrosoftOutlookCalendar.ListEventAttachments",
239-
"fullyQualifiedName": "MicrosoftOutlookCalendar.ListEventAttachments@0.1.0",
239+
"fullyQualifiedName": "MicrosoftOutlookCalendar.ListEventAttachments@0.2.0",
240240
"description": "List attachment metadata for a calendar event.\n\nReturns metadata only (name, size, type, etc.). Attachment content is not included.\nUse this tool when the user wants to know what files are attached to a calendar event\nor meeting.\n\nPass a calendar_id to list attachments on events in shared or delegated calendars.",
241241
"parameters": [
242242
{
@@ -276,6 +276,7 @@
276276
"providerId": "microsoft",
277277
"providerType": "oauth2",
278278
"scopes": [
279+
"MailboxSettings.Read",
279280
"Calendars.Read"
280281
]
281282
},
@@ -307,7 +308,7 @@
307308
{
308309
"name": "ListEventsInTimeRange",
309310
"qualifiedName": "MicrosoftOutlookCalendar.ListEventsInTimeRange",
310-
"fullyQualifiedName": "MicrosoftOutlookCalendar.ListEventsInTimeRange@0.1.0",
311+
"fullyQualifiedName": "MicrosoftOutlookCalendar.ListEventsInTimeRange@0.2.0",
311312
"description": "List events in the user's calendar in a specific time range.\n\nIgnores timezone offsets provided in the start_date_time and end_date_time parameters.\nInstead, uses the user's default calendar timezone to filter events.\nIf the user has not set a timezone for their calendar, then the timezone will be UTC.",
312313
"parameters": [
313314
{
@@ -371,7 +372,7 @@
371372
{
372373
"name": "SearchEvents",
373374
"qualifiedName": "MicrosoftOutlookCalendar.SearchEvents",
374-
"fullyQualifiedName": "MicrosoftOutlookCalendar.SearchEvents@0.1.0",
375+
"fullyQualifiedName": "MicrosoftOutlookCalendar.SearchEvents@0.2.0",
375376
"description": "Search calendar events within a time range with optional filters.\n\nReturns events filtered by subject keyword, attendee, organizer,\nimportance, or online-meeting status. Results are in chronological order.\n\nBy default, searches the user's primary calendar. Pass a calendar_id\nto search a shared or delegated calendar.\n\nEvent bodies are truncated to 200 characters for efficient skimming.\nUse the event_id from the results to retrieve full event details.",
376377
"parameters": [
377378
{
@@ -504,7 +505,7 @@
504505
{
505506
"name": "WhoAmI",
506507
"qualifiedName": "MicrosoftOutlookCalendar.WhoAmI",
507-
"fullyQualifiedName": "MicrosoftOutlookCalendar.WhoAmI@0.1.0",
508+
"fullyQualifiedName": "MicrosoftOutlookCalendar.WhoAmI@0.2.0",
508509
"description": "Get information about the current user and their Outlook Calendar environment.",
509510
"parameters": [],
510511
"auth": {
@@ -545,5 +546,5 @@
545546
"documentationChunks": [],
546547
"customImports": [],
547548
"subPages": [],
548-
"generatedAt": "2026-03-31T11:26:37.497Z"
549+
"generatedAt": "2026-04-02T11:25:02.800Z"
549550
}

0 commit comments

Comments
 (0)