@apteva/integrations 0.2.3 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/apps/activecampaign.json +209 -0
- package/src/apps/activecollab.json +417 -0
- package/src/apps/airtable.json +235 -0
- package/src/apps/alpaca-trading.json +1554 -0
- package/src/apps/amadeus.json +225 -0
- package/src/apps/anthropic-api.json +96 -0
- package/src/apps/apify.json +203 -0
- package/src/apps/apollo.json +748 -0
- package/src/apps/apple-podcasts.json +116 -0
- package/src/apps/archive-api.json +104 -0
- package/src/apps/archive.json +151 -0
- package/src/apps/arduino-cloud.json +301 -0
- package/src/apps/arest.json +492 -0
- package/src/apps/asana.json +184 -0
- package/src/apps/ashby.json +176 -0
- package/src/apps/assemblyai.json +163 -0
- package/src/apps/attio.json +243 -0
- package/src/apps/aws-cloudfront.json +132 -0
- package/src/apps/aws-dynamodb.json +295 -0
- package/src/apps/aws-ec2.json +184 -0
- package/src/apps/aws-lambda.json +361 -0
- package/src/apps/aws-route53.json +110 -0
- package/src/apps/aws-s3.json +303 -0
- package/src/apps/aws-ses.json +556 -0
- package/src/apps/aws-sns.json +217 -0
- package/src/apps/aws-sqs.json +234 -0
- package/src/apps/axiom.json +123 -0
- package/src/apps/beehiiv.json +252 -0
- package/src/apps/binance-trading.json +555 -0
- package/src/apps/bitly.json +175 -0
- package/src/apps/bloobirds.json +246 -0
- package/src/apps/bluesky.json +201 -0
- package/src/apps/blynk.json +316 -0
- package/src/apps/booking-com.json +144 -0
- package/src/apps/box.json +289 -0
- package/src/apps/brevo.json +1423 -0
- package/src/apps/browse-ai.json +148 -0
- package/src/apps/bunny-cdn.json +330 -0
- package/src/apps/bunny-stream.json +387 -0
- package/src/apps/cal-com.json +240 -0
- package/src/apps/calendly.json +578 -0
- package/src/apps/calflow-calendar.json +706 -0
- package/src/apps/callrail.json +190 -0
- package/src/apps/canva.json +197 -0
- package/src/apps/cartesia.json +201 -0
- package/src/apps/castbase.json +753 -0
- package/src/apps/chargebee.json +226 -0
- package/src/apps/cleanster.json +359 -0
- package/src/apps/clicksend.json +278 -0
- package/src/apps/clickup.json +266 -0
- package/src/apps/clipkit.json +517 -0
- package/src/apps/close.json +359 -0
- package/src/apps/cloudflare.json +329 -0
- package/src/apps/cloudinary.json +164 -0
- package/src/apps/coda.json +288 -0
- package/src/apps/cohere.json +158 -0
- package/src/apps/coinbase.json +268 -0
- package/src/apps/composio.json +146 -0
- package/src/apps/confluence.json +270 -0
- package/src/apps/consensus.json +879 -0
- package/src/apps/contabo.json +733 -0
- package/src/apps/convertkit.json +211 -0
- package/src/apps/core-image.json +426 -0
- package/src/apps/core-video.json +1246 -0
- package/src/apps/craftcloud.json +298 -0
- package/src/apps/datadog.json +401 -0
- package/src/apps/dataforseo.json +1273 -0
- package/src/apps/deepseek.json +150 -0
- package/src/apps/dialpad.json +229 -0
- package/src/apps/discord.json +239 -0
- package/src/apps/dnsimple.json +405 -0
- package/src/apps/docusign.json +214 -0
- package/src/apps/docx.json +282 -0
- package/src/apps/dropbox.json +185 -0
- package/src/apps/duffel.json +231 -0
- package/src/apps/dux-soup.json +694 -0
- package/src/apps/dynadot.json +250 -0
- package/src/apps/elevenlabs.json +327 -0
- package/src/apps/eventbrite-events.json +598 -0
- package/src/apps/facebook-ads.json +1399 -0
- package/src/apps/facebook-api.json +282 -0
- package/src/apps/fal-ai.json +400 -0
- package/src/apps/fathom.json +86 -0
- package/src/apps/figma.json +162 -0
- package/src/apps/filestack.json +159 -0
- package/src/apps/firebase.json +271 -0
- package/src/apps/firecrawl.json +278 -0
- package/src/apps/folk.json +564 -0
- package/src/apps/forecast-app.json +377 -0
- package/src/apps/freshdesk.json +283 -0
- package/src/apps/gemini.json +528 -0
- package/src/apps/ghost.json +439 -0
- package/src/apps/gigs-marketplace.json +1442 -0
- package/src/apps/github.json +1479 -47
- package/src/apps/gitlab.json +448 -0
- package/src/apps/gmail.json +839 -28
- package/src/apps/gohighlevel.json +596 -0
- package/src/apps/google-ads.json +270 -0
- package/src/apps/google-calendar.json +996 -36
- package/src/apps/google-docs.json +278 -0
- package/src/apps/google-drive.json +360 -0
- package/src/apps/google-maps.json +473 -0
- package/src/apps/google-sheets.json +330 -0
- package/src/apps/gooten.json +411 -0
- package/src/apps/gravity-forms.json +385 -0
- package/src/apps/gusto.json +171 -0
- package/src/apps/hackernews.json +221 -0
- package/src/apps/harmonic.json +86 -0
- package/src/apps/helpscout.json +664 -0
- package/src/apps/hetzner.json +658 -0
- package/src/apps/heygen.json +184 -0
- package/src/apps/heyreach.json +388 -0
- package/src/apps/hospitable.json +340 -0
- package/src/apps/hostinger.json +374 -0
- package/src/apps/hubspot.json +682 -0
- package/src/apps/huggingface.json +97 -0
- package/src/apps/hunter.json +504 -0
- package/src/apps/ig-trading.json +849 -0
- package/src/apps/imaterialise.json +349 -0
- package/src/apps/instagram-api.json +538 -0
- package/src/apps/intercom.json +648 -0
- package/src/apps/jira.json +226 -0
- package/src/apps/klaviyo.json +199 -0
- package/src/apps/kling-ai.json +206 -0
- package/src/apps/kraken.json +870 -0
- package/src/apps/late.json +1056 -0
- package/src/apps/leadpages.json +243 -0
- package/src/apps/learning-platform.json +2244 -0
- package/src/apps/linear.json +184 -57
- package/src/apps/linkedin.json +179 -0
- package/src/apps/listen-notes.json +136 -0
- package/src/apps/lnk-bio.json +125 -0
- package/src/apps/loom.json +188 -0
- package/src/apps/luma.json +280 -0
- package/src/apps/mailchimp.json +238 -0
- package/src/apps/mailgun.json +310 -0
- package/src/apps/manychat.json +312 -0
- package/src/apps/marin-software.json +843 -0
- package/src/apps/media-downloader.json +157 -0
- package/src/apps/meetup-events.json +361 -0
- package/src/apps/meshy.json +248 -0
- package/src/apps/microsoft-teams.json +162 -0
- package/src/apps/monday.json +213 -0
- package/src/apps/mongodb-atlas.json +467 -0
- package/src/apps/namecheap.json +252 -0
- package/src/apps/nexar.json +289 -0
- package/src/apps/notion.json +530 -50
- package/src/apps/omnikit-analytics.json +374 -0
- package/src/apps/omnikit-api-gateway.json +660 -0
- package/src/apps/omnikit-billing.json +1781 -0
- package/src/apps/omnikit-cms.json +899 -0
- package/src/apps/omnikit-functions.json +329 -0
- package/src/apps/omnikit-intelligence.json +650 -0
- package/src/apps/omnikit-management.json +214 -0
- package/src/apps/omnikit-media.json +646 -0
- package/src/apps/omnikit-messaging.json +1826 -0
- package/src/apps/omnikit-redirects.json +209 -0
- package/src/apps/omnikit-webhooks.json +269 -0
- package/src/apps/omnikit-workflows.json +323 -0
- package/src/apps/openai-api.json +462 -0
- package/src/apps/openmeteo-weather.json +75 -0
- package/src/apps/optinmonster.json +244 -0
- package/src/apps/paidkit.json +1218 -0
- package/src/apps/paypal.json +254 -0
- package/src/apps/pdf.json +366 -0
- package/src/apps/pipedrive.json +255 -0
- package/src/apps/polymarket.json +653 -0
- package/src/apps/porkbun.json +417 -0
- package/src/apps/portfolio.json +501 -0
- package/src/apps/postmark.json +257 -0
- package/src/apps/printful.json +273 -0
- package/src/apps/printify.json +295 -0
- package/src/apps/producthunt.json +346 -0
- package/src/apps/pushover-notifications.json +113 -0
- package/src/apps/qonto.json +366 -0
- package/src/apps/quickbooks.json +234 -0
- package/src/apps/replicate.json +106 -0
- package/src/apps/rss.json +281 -0
- package/src/apps/salesflow.json +538 -0
- package/src/apps/salesforce-crm.json +216 -0
- package/src/apps/sap.json +256 -0
- package/src/apps/scaleway.json +911 -0
- package/src/apps/sculpteo.json +234 -0
- package/src/apps/sendgrid-email.json +233 -0
- package/src/apps/sendgrid.json +160 -35
- package/src/apps/shapeways.json +188 -0
- package/src/apps/shopify.json +1217 -0
- package/src/apps/skai.json +779 -0
- package/src/apps/slack.json +228 -38
- package/src/apps/slant3d.json +231 -0
- package/src/apps/slides.json +760 -0
- package/src/apps/smartly.json +504 -0
- package/src/apps/snov.json +467 -0
- package/src/apps/socialcast.json +553 -63
- package/src/apps/square.json +274 -0
- package/src/apps/storage-management.json +788 -0
- package/src/apps/storylane.json +180 -0
- package/src/apps/strapi.json +338 -0
- package/src/apps/stripe-payments.json +847 -0
- package/src/apps/stripe.json +472 -35
- package/src/apps/supabase.json +169 -0
- package/src/apps/supademo.json +115 -0
- package/src/apps/taskflow.json +714 -0
- package/src/apps/teamwork.json +457 -0
- package/src/apps/telegram.json +444 -0
- package/src/apps/thinger.json +458 -0
- package/src/apps/ticktick.json +169 -0
- package/src/apps/tiktok-api.json +406 -0
- package/src/apps/todoist.json +151 -0
- package/src/apps/together.json +123 -0
- package/src/apps/torrent.json +267 -0
- package/src/apps/trading.json +1012 -0
- package/src/apps/trading212.json +383 -0
- package/src/apps/trello.json +205 -0
- package/src/apps/tripo.json +157 -0
- package/src/apps/twilio.json +1008 -0
- package/src/apps/twitter-ads.json +875 -0
- package/src/apps/twitter-api.json +1151 -0
- package/src/apps/twitterapiio.json +548 -0
- package/src/apps/typeform.json +210 -0
- package/src/apps/vidforge.json +1020 -0
- package/src/apps/vonage.json +394 -0
- package/src/apps/vultr.json +225 -0
- package/src/apps/webflow.json +223 -0
- package/src/apps/wise.json +273 -0
- package/src/apps/wistia.json +283 -0
- package/src/apps/woocommerce.json +288 -0
- package/src/apps/wordpress.json +1675 -0
- package/src/apps/xero.json +257 -0
- package/src/apps/youtube-api.json +861 -0
- package/src/apps/zendesk.json +295 -0
- package/src/apps/zite.json +173 -0
- package/src/apps/zoho-crm.json +386 -0
- package/src/apps/zoo.json +193 -0
- package/src/apps/zoom.json +334 -0
|
@@ -0,0 +1,706 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "calflow-calendar",
|
|
3
|
+
"name": "CalFlow",
|
|
4
|
+
"description": "MCP server for comprehensive calendar and event management with scheduling, reminders, and collaboration features",
|
|
5
|
+
"logo": "https://www.google.com/s2/favicons?domain=calendar.google.com&sz=128",
|
|
6
|
+
"categories": [
|
|
7
|
+
"calendar",
|
|
8
|
+
"scheduling",
|
|
9
|
+
"events",
|
|
10
|
+
"time-management",
|
|
11
|
+
"productivity"
|
|
12
|
+
],
|
|
13
|
+
"base_url": "",
|
|
14
|
+
"auth": {
|
|
15
|
+
"types": [
|
|
16
|
+
"bearer"
|
|
17
|
+
],
|
|
18
|
+
"headers": {
|
|
19
|
+
"Authorization": "Bearer {{token}}"
|
|
20
|
+
},
|
|
21
|
+
"credential_fields": [
|
|
22
|
+
{
|
|
23
|
+
"name": "token",
|
|
24
|
+
"label": "API Key"
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"tools": [
|
|
29
|
+
{
|
|
30
|
+
"name": "create_calendar",
|
|
31
|
+
"description": "Create new calendars with customizable settings and visibility options",
|
|
32
|
+
"method": "POST",
|
|
33
|
+
"path": "/create-calendar",
|
|
34
|
+
"input_schema": {
|
|
35
|
+
"type": "object",
|
|
36
|
+
"properties": {
|
|
37
|
+
"name": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"description": "Calendar name",
|
|
40
|
+
"minLength": 1,
|
|
41
|
+
"maxLength": 255
|
|
42
|
+
},
|
|
43
|
+
"description": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"description": "Calendar description"
|
|
46
|
+
},
|
|
47
|
+
"color": {
|
|
48
|
+
"type": "string",
|
|
49
|
+
"description": "Calendar color (hex code)",
|
|
50
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
51
|
+
"default": "#007bff"
|
|
52
|
+
},
|
|
53
|
+
"timezone": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"description": "Calendar timezone",
|
|
56
|
+
"default": "UTC"
|
|
57
|
+
},
|
|
58
|
+
"visibility": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"enum": [
|
|
61
|
+
"private",
|
|
62
|
+
"public",
|
|
63
|
+
"shared"
|
|
64
|
+
],
|
|
65
|
+
"description": "Calendar visibility",
|
|
66
|
+
"default": "private"
|
|
67
|
+
},
|
|
68
|
+
"is_default": {
|
|
69
|
+
"type": "boolean",
|
|
70
|
+
"description": "Set as default calendar for user",
|
|
71
|
+
"default": false
|
|
72
|
+
},
|
|
73
|
+
"settings": {
|
|
74
|
+
"type": "object",
|
|
75
|
+
"description": "Calendar settings (working hours, notifications, etc.)",
|
|
76
|
+
"properties": {
|
|
77
|
+
"working_hours": {
|
|
78
|
+
"type": "object",
|
|
79
|
+
"properties": {
|
|
80
|
+
"start": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"pattern": "^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$"
|
|
83
|
+
},
|
|
84
|
+
"end": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"pattern": "^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"working_days": {
|
|
91
|
+
"type": "array",
|
|
92
|
+
"items": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"enum": [
|
|
95
|
+
"monday",
|
|
96
|
+
"tuesday",
|
|
97
|
+
"wednesday",
|
|
98
|
+
"thursday",
|
|
99
|
+
"friday",
|
|
100
|
+
"saturday",
|
|
101
|
+
"sunday"
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"default_event_duration": {
|
|
106
|
+
"type": "integer",
|
|
107
|
+
"description": "Default event duration in minutes",
|
|
108
|
+
"default": 60
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
"required": [
|
|
114
|
+
"name"
|
|
115
|
+
]
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"name": "update_calendar",
|
|
120
|
+
"description": "Update existing calendar properties and settings",
|
|
121
|
+
"method": "PUT",
|
|
122
|
+
"path": "/update-calendar",
|
|
123
|
+
"input_schema": {
|
|
124
|
+
"type": "object",
|
|
125
|
+
"properties": {
|
|
126
|
+
"calendar_id": {
|
|
127
|
+
"type": "integer",
|
|
128
|
+
"description": "Calendar ID to update"
|
|
129
|
+
},
|
|
130
|
+
"name": {
|
|
131
|
+
"type": "string",
|
|
132
|
+
"description": "Calendar name",
|
|
133
|
+
"minLength": 1,
|
|
134
|
+
"maxLength": 255
|
|
135
|
+
},
|
|
136
|
+
"description": {
|
|
137
|
+
"type": "string",
|
|
138
|
+
"description": "Calendar description"
|
|
139
|
+
},
|
|
140
|
+
"color": {
|
|
141
|
+
"type": "string",
|
|
142
|
+
"description": "Calendar color (hex code)",
|
|
143
|
+
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
144
|
+
},
|
|
145
|
+
"timezone": {
|
|
146
|
+
"type": "string",
|
|
147
|
+
"description": "Calendar timezone"
|
|
148
|
+
},
|
|
149
|
+
"visibility": {
|
|
150
|
+
"type": "string",
|
|
151
|
+
"enum": [
|
|
152
|
+
"private",
|
|
153
|
+
"public",
|
|
154
|
+
"shared"
|
|
155
|
+
],
|
|
156
|
+
"description": "Calendar visibility"
|
|
157
|
+
},
|
|
158
|
+
"is_default": {
|
|
159
|
+
"type": "boolean",
|
|
160
|
+
"description": "Set as default calendar for user"
|
|
161
|
+
},
|
|
162
|
+
"settings": {
|
|
163
|
+
"type": "object",
|
|
164
|
+
"description": "Calendar settings",
|
|
165
|
+
"properties": {
|
|
166
|
+
"working_hours": {
|
|
167
|
+
"type": "object",
|
|
168
|
+
"properties": {
|
|
169
|
+
"start": {
|
|
170
|
+
"type": "string",
|
|
171
|
+
"pattern": "^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$"
|
|
172
|
+
},
|
|
173
|
+
"end": {
|
|
174
|
+
"type": "string",
|
|
175
|
+
"pattern": "^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$"
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
},
|
|
179
|
+
"working_days": {
|
|
180
|
+
"type": "array",
|
|
181
|
+
"items": {
|
|
182
|
+
"type": "string",
|
|
183
|
+
"enum": [
|
|
184
|
+
"monday",
|
|
185
|
+
"tuesday",
|
|
186
|
+
"wednesday",
|
|
187
|
+
"thursday",
|
|
188
|
+
"friday",
|
|
189
|
+
"saturday",
|
|
190
|
+
"sunday"
|
|
191
|
+
]
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
"default_event_duration": {
|
|
195
|
+
"type": "integer",
|
|
196
|
+
"description": "Default event duration in minutes"
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"required": [
|
|
202
|
+
"calendar_id"
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"name": "delete_calendar",
|
|
208
|
+
"description": "Delete calendars (owner only) with soft or hard delete options",
|
|
209
|
+
"method": "DELETE",
|
|
210
|
+
"path": "/delete-calendar",
|
|
211
|
+
"input_schema": {
|
|
212
|
+
"type": "object",
|
|
213
|
+
"properties": {
|
|
214
|
+
"calendar_id": {
|
|
215
|
+
"type": "integer",
|
|
216
|
+
"description": "Calendar ID to delete"
|
|
217
|
+
},
|
|
218
|
+
"hard_delete": {
|
|
219
|
+
"type": "boolean",
|
|
220
|
+
"description": "Permanently delete calendar (default: false for soft delete)",
|
|
221
|
+
"default": false
|
|
222
|
+
}
|
|
223
|
+
},
|
|
224
|
+
"required": [
|
|
225
|
+
"calendar_id"
|
|
226
|
+
]
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"name": "get_calendar",
|
|
231
|
+
"description": "Retrieve calendar details with permissions and sharing info",
|
|
232
|
+
"method": "GET",
|
|
233
|
+
"path": "/get-calendar",
|
|
234
|
+
"input_schema": {
|
|
235
|
+
"type": "object",
|
|
236
|
+
"properties": {
|
|
237
|
+
"calendar_id": {
|
|
238
|
+
"type": "integer",
|
|
239
|
+
"description": "Calendar ID to retrieve"
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
"required": [
|
|
243
|
+
"calendar_id"
|
|
244
|
+
]
|
|
245
|
+
}
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"name": "list_calendars",
|
|
249
|
+
"description": "List user's calendars (owned + shared) with filtering options",
|
|
250
|
+
"method": "GET",
|
|
251
|
+
"path": "/list-calendars",
|
|
252
|
+
"input_schema": {
|
|
253
|
+
"type": "object",
|
|
254
|
+
"properties": {
|
|
255
|
+
"visibility": {
|
|
256
|
+
"type": "string",
|
|
257
|
+
"enum": [
|
|
258
|
+
"private",
|
|
259
|
+
"public",
|
|
260
|
+
"shared"
|
|
261
|
+
],
|
|
262
|
+
"description": "Filter by visibility"
|
|
263
|
+
},
|
|
264
|
+
"limit": {
|
|
265
|
+
"type": "integer",
|
|
266
|
+
"minimum": 1,
|
|
267
|
+
"maximum": 100,
|
|
268
|
+
"description": "Maximum number of calendars to return",
|
|
269
|
+
"default": 100
|
|
270
|
+
},
|
|
271
|
+
"offset": {
|
|
272
|
+
"type": "integer",
|
|
273
|
+
"minimum": 0,
|
|
274
|
+
"description": "Number of calendars to skip",
|
|
275
|
+
"default": 0
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"name": "create_event",
|
|
282
|
+
"description": "Create new calendar events with attendees, reminders, and recurrence",
|
|
283
|
+
"method": "POST",
|
|
284
|
+
"path": "/create-event",
|
|
285
|
+
"input_schema": {
|
|
286
|
+
"type": "object",
|
|
287
|
+
"properties": {
|
|
288
|
+
"calendar_id": {
|
|
289
|
+
"type": "integer",
|
|
290
|
+
"description": "Calendar ID where event will be created"
|
|
291
|
+
},
|
|
292
|
+
"title": {
|
|
293
|
+
"type": "string",
|
|
294
|
+
"description": "Event title",
|
|
295
|
+
"minLength": 1,
|
|
296
|
+
"maxLength": 500
|
|
297
|
+
},
|
|
298
|
+
"description": {
|
|
299
|
+
"type": "string",
|
|
300
|
+
"description": "Event description"
|
|
301
|
+
},
|
|
302
|
+
"start_time": {
|
|
303
|
+
"type": "string",
|
|
304
|
+
"description": "Event start time (ISO 8601 format)",
|
|
305
|
+
"format": "date-time"
|
|
306
|
+
},
|
|
307
|
+
"end_time": {
|
|
308
|
+
"type": "string",
|
|
309
|
+
"description": "Event end time (ISO 8601 format)",
|
|
310
|
+
"format": "date-time"
|
|
311
|
+
},
|
|
312
|
+
"all_day": {
|
|
313
|
+
"type": "boolean",
|
|
314
|
+
"description": "Is this an all-day event",
|
|
315
|
+
"default": false
|
|
316
|
+
},
|
|
317
|
+
"timezone": {
|
|
318
|
+
"type": "string",
|
|
319
|
+
"description": "Event timezone",
|
|
320
|
+
"default": "UTC"
|
|
321
|
+
},
|
|
322
|
+
"location": {
|
|
323
|
+
"type": "string",
|
|
324
|
+
"description": "Event location",
|
|
325
|
+
"maxLength": 500
|
|
326
|
+
},
|
|
327
|
+
"status": {
|
|
328
|
+
"type": "string",
|
|
329
|
+
"enum": [
|
|
330
|
+
"confirmed",
|
|
331
|
+
"tentative",
|
|
332
|
+
"cancelled"
|
|
333
|
+
],
|
|
334
|
+
"description": "Event status",
|
|
335
|
+
"default": "confirmed"
|
|
336
|
+
},
|
|
337
|
+
"visibility": {
|
|
338
|
+
"type": "string",
|
|
339
|
+
"enum": [
|
|
340
|
+
"default",
|
|
341
|
+
"public",
|
|
342
|
+
"private",
|
|
343
|
+
"confidential"
|
|
344
|
+
],
|
|
345
|
+
"description": "Event visibility",
|
|
346
|
+
"default": "default"
|
|
347
|
+
},
|
|
348
|
+
"attendees": {
|
|
349
|
+
"type": "array",
|
|
350
|
+
"description": "Array of attendee objects",
|
|
351
|
+
"items": {
|
|
352
|
+
"type": "object",
|
|
353
|
+
"properties": {
|
|
354
|
+
"user_id": {
|
|
355
|
+
"type": "integer",
|
|
356
|
+
"description": "User ID of attendee"
|
|
357
|
+
},
|
|
358
|
+
"email": {
|
|
359
|
+
"type": "string",
|
|
360
|
+
"format": "email",
|
|
361
|
+
"description": "Email address of attendee"
|
|
362
|
+
},
|
|
363
|
+
"display_name": {
|
|
364
|
+
"type": "string",
|
|
365
|
+
"description": "Display name of attendee"
|
|
366
|
+
},
|
|
367
|
+
"is_required": {
|
|
368
|
+
"type": "boolean",
|
|
369
|
+
"description": "Is attendance required",
|
|
370
|
+
"default": true
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
},
|
|
375
|
+
"notifications": {
|
|
376
|
+
"type": "array",
|
|
377
|
+
"description": "Array of notification objects",
|
|
378
|
+
"items": {
|
|
379
|
+
"type": "object",
|
|
380
|
+
"properties": {
|
|
381
|
+
"type": {
|
|
382
|
+
"type": "string",
|
|
383
|
+
"enum": [
|
|
384
|
+
"email",
|
|
385
|
+
"popup",
|
|
386
|
+
"sms"
|
|
387
|
+
],
|
|
388
|
+
"description": "Notification type"
|
|
389
|
+
},
|
|
390
|
+
"minutes": {
|
|
391
|
+
"type": "integer",
|
|
392
|
+
"minimum": 0,
|
|
393
|
+
"description": "Minutes before event to notify"
|
|
394
|
+
}
|
|
395
|
+
},
|
|
396
|
+
"required": [
|
|
397
|
+
"type",
|
|
398
|
+
"minutes"
|
|
399
|
+
]
|
|
400
|
+
}
|
|
401
|
+
},
|
|
402
|
+
"recurrence_rule": {
|
|
403
|
+
"type": "string",
|
|
404
|
+
"description": "RFC 5545 RRULE format for recurring events"
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
"required": [
|
|
408
|
+
"calendar_id",
|
|
409
|
+
"title",
|
|
410
|
+
"start_time",
|
|
411
|
+
"end_time"
|
|
412
|
+
]
|
|
413
|
+
}
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
"name": "update_event",
|
|
417
|
+
"description": "Update existing calendar event properties",
|
|
418
|
+
"method": "PUT",
|
|
419
|
+
"path": "/update-event",
|
|
420
|
+
"input_schema": {
|
|
421
|
+
"type": "object",
|
|
422
|
+
"properties": {
|
|
423
|
+
"event_id": {
|
|
424
|
+
"type": "integer",
|
|
425
|
+
"description": "Event ID to update"
|
|
426
|
+
},
|
|
427
|
+
"title": {
|
|
428
|
+
"type": "string",
|
|
429
|
+
"description": "Event title",
|
|
430
|
+
"minLength": 1,
|
|
431
|
+
"maxLength": 500
|
|
432
|
+
},
|
|
433
|
+
"description": {
|
|
434
|
+
"type": "string",
|
|
435
|
+
"description": "Event description"
|
|
436
|
+
},
|
|
437
|
+
"start_time": {
|
|
438
|
+
"type": "string",
|
|
439
|
+
"description": "Event start time (ISO 8601 format)",
|
|
440
|
+
"format": "date-time"
|
|
441
|
+
},
|
|
442
|
+
"end_time": {
|
|
443
|
+
"type": "string",
|
|
444
|
+
"description": "Event end time (ISO 8601 format)",
|
|
445
|
+
"format": "date-time"
|
|
446
|
+
},
|
|
447
|
+
"all_day": {
|
|
448
|
+
"type": "boolean",
|
|
449
|
+
"description": "Is this an all-day event"
|
|
450
|
+
},
|
|
451
|
+
"timezone": {
|
|
452
|
+
"type": "string",
|
|
453
|
+
"description": "Event timezone"
|
|
454
|
+
},
|
|
455
|
+
"location": {
|
|
456
|
+
"type": "string",
|
|
457
|
+
"description": "Event location",
|
|
458
|
+
"maxLength": 500
|
|
459
|
+
},
|
|
460
|
+
"status": {
|
|
461
|
+
"type": "string",
|
|
462
|
+
"enum": [
|
|
463
|
+
"confirmed",
|
|
464
|
+
"tentative",
|
|
465
|
+
"cancelled"
|
|
466
|
+
],
|
|
467
|
+
"description": "Event status"
|
|
468
|
+
},
|
|
469
|
+
"visibility": {
|
|
470
|
+
"type": "string",
|
|
471
|
+
"enum": [
|
|
472
|
+
"default",
|
|
473
|
+
"public",
|
|
474
|
+
"private",
|
|
475
|
+
"confidential"
|
|
476
|
+
],
|
|
477
|
+
"description": "Event visibility"
|
|
478
|
+
},
|
|
479
|
+
"notifications": {
|
|
480
|
+
"type": "array",
|
|
481
|
+
"description": "Array of notification objects",
|
|
482
|
+
"items": {
|
|
483
|
+
"type": "object",
|
|
484
|
+
"properties": {
|
|
485
|
+
"type": {
|
|
486
|
+
"type": "string",
|
|
487
|
+
"enum": [
|
|
488
|
+
"email",
|
|
489
|
+
"popup",
|
|
490
|
+
"sms"
|
|
491
|
+
],
|
|
492
|
+
"description": "Notification type"
|
|
493
|
+
},
|
|
494
|
+
"minutes": {
|
|
495
|
+
"type": "integer",
|
|
496
|
+
"minimum": 0,
|
|
497
|
+
"description": "Minutes before event to notify"
|
|
498
|
+
}
|
|
499
|
+
},
|
|
500
|
+
"required": [
|
|
501
|
+
"type",
|
|
502
|
+
"minutes"
|
|
503
|
+
]
|
|
504
|
+
}
|
|
505
|
+
},
|
|
506
|
+
"recurrence_rule": {
|
|
507
|
+
"type": "string",
|
|
508
|
+
"description": "RFC 5545 RRULE format for recurring events"
|
|
509
|
+
}
|
|
510
|
+
},
|
|
511
|
+
"required": [
|
|
512
|
+
"event_id"
|
|
513
|
+
]
|
|
514
|
+
}
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
"name": "delete_event",
|
|
518
|
+
"description": "Delete calendar events with soft or hard delete options",
|
|
519
|
+
"method": "DELETE",
|
|
520
|
+
"path": "/delete-event",
|
|
521
|
+
"input_schema": {
|
|
522
|
+
"type": "object",
|
|
523
|
+
"properties": {
|
|
524
|
+
"event_id": {
|
|
525
|
+
"type": "integer",
|
|
526
|
+
"description": "Event ID to delete"
|
|
527
|
+
},
|
|
528
|
+
"hard_delete": {
|
|
529
|
+
"type": "boolean",
|
|
530
|
+
"description": "Permanently delete event (default: false for soft delete)",
|
|
531
|
+
"default": false
|
|
532
|
+
}
|
|
533
|
+
},
|
|
534
|
+
"required": [
|
|
535
|
+
"event_id"
|
|
536
|
+
]
|
|
537
|
+
}
|
|
538
|
+
},
|
|
539
|
+
{
|
|
540
|
+
"name": "get_event",
|
|
541
|
+
"description": "Retrieve event details with attendees and permissions",
|
|
542
|
+
"method": "GET",
|
|
543
|
+
"path": "/get-event",
|
|
544
|
+
"input_schema": {
|
|
545
|
+
"type": "object",
|
|
546
|
+
"properties": {
|
|
547
|
+
"event_id": {
|
|
548
|
+
"type": "integer",
|
|
549
|
+
"description": "Event ID to retrieve"
|
|
550
|
+
},
|
|
551
|
+
"include_attendees": {
|
|
552
|
+
"type": "boolean",
|
|
553
|
+
"description": "Include attendee details in response",
|
|
554
|
+
"default": true
|
|
555
|
+
}
|
|
556
|
+
},
|
|
557
|
+
"required": [
|
|
558
|
+
"event_id"
|
|
559
|
+
]
|
|
560
|
+
}
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
"name": "list_events",
|
|
564
|
+
"description": "List calendar events with date range filters and sorting options",
|
|
565
|
+
"method": "GET",
|
|
566
|
+
"path": "/list-events",
|
|
567
|
+
"input_schema": {
|
|
568
|
+
"type": "object",
|
|
569
|
+
"properties": {
|
|
570
|
+
"calendar_id": {
|
|
571
|
+
"type": "integer",
|
|
572
|
+
"description": "Filter events by specific calendar ID"
|
|
573
|
+
},
|
|
574
|
+
"start_date": {
|
|
575
|
+
"type": "string",
|
|
576
|
+
"description": "Start date for date range filter (ISO 8601 format)",
|
|
577
|
+
"format": "date"
|
|
578
|
+
},
|
|
579
|
+
"end_date": {
|
|
580
|
+
"type": "string",
|
|
581
|
+
"description": "End date for date range filter (ISO 8601 format)",
|
|
582
|
+
"format": "date"
|
|
583
|
+
},
|
|
584
|
+
"status": {
|
|
585
|
+
"type": "string",
|
|
586
|
+
"enum": [
|
|
587
|
+
"confirmed",
|
|
588
|
+
"tentative",
|
|
589
|
+
"cancelled"
|
|
590
|
+
],
|
|
591
|
+
"description": "Filter by event status"
|
|
592
|
+
},
|
|
593
|
+
"limit": {
|
|
594
|
+
"type": "integer",
|
|
595
|
+
"minimum": 1,
|
|
596
|
+
"maximum": 100,
|
|
597
|
+
"description": "Maximum number of events to return",
|
|
598
|
+
"default": 100
|
|
599
|
+
},
|
|
600
|
+
"offset": {
|
|
601
|
+
"type": "integer",
|
|
602
|
+
"minimum": 0,
|
|
603
|
+
"description": "Number of events to skip",
|
|
604
|
+
"default": 0
|
|
605
|
+
},
|
|
606
|
+
"sort": {
|
|
607
|
+
"type": "string",
|
|
608
|
+
"description": "Sort field:direction (e.g., start_time:asc, title:desc)",
|
|
609
|
+
"default": "start_time:asc"
|
|
610
|
+
}
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
},
|
|
614
|
+
{
|
|
615
|
+
"name": "find_free_time",
|
|
616
|
+
"description": "Find available time slots across calendars for scheduling meetings",
|
|
617
|
+
"method": "GET",
|
|
618
|
+
"path": "/find-free-time",
|
|
619
|
+
"input_schema": {
|
|
620
|
+
"type": "object",
|
|
621
|
+
"properties": {
|
|
622
|
+
"calendar_ids": {
|
|
623
|
+
"type": "array",
|
|
624
|
+
"items": {
|
|
625
|
+
"type": "integer"
|
|
626
|
+
},
|
|
627
|
+
"description": "Calendar IDs to check for availability"
|
|
628
|
+
},
|
|
629
|
+
"start_date": {
|
|
630
|
+
"type": "string",
|
|
631
|
+
"description": "Start date for availability search (ISO 8601)",
|
|
632
|
+
"format": "date"
|
|
633
|
+
},
|
|
634
|
+
"end_date": {
|
|
635
|
+
"type": "string",
|
|
636
|
+
"description": "End date for availability search (ISO 8601)",
|
|
637
|
+
"format": "date"
|
|
638
|
+
},
|
|
639
|
+
"duration_minutes": {
|
|
640
|
+
"type": "integer",
|
|
641
|
+
"minimum": 15,
|
|
642
|
+
"description": "Required duration in minutes"
|
|
643
|
+
},
|
|
644
|
+
"working_hours_only": {
|
|
645
|
+
"type": "boolean",
|
|
646
|
+
"description": "Only show slots during working hours",
|
|
647
|
+
"default": true
|
|
648
|
+
},
|
|
649
|
+
"buffer_minutes": {
|
|
650
|
+
"type": "integer",
|
|
651
|
+
"minimum": 0,
|
|
652
|
+
"description": "Buffer time between events",
|
|
653
|
+
"default": 0
|
|
654
|
+
}
|
|
655
|
+
},
|
|
656
|
+
"required": [
|
|
657
|
+
"calendar_ids",
|
|
658
|
+
"start_date",
|
|
659
|
+
"end_date",
|
|
660
|
+
"duration_minutes"
|
|
661
|
+
]
|
|
662
|
+
}
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
"name": "get_agenda",
|
|
666
|
+
"description": "Get organized agenda view for specific date ranges",
|
|
667
|
+
"method": "GET",
|
|
668
|
+
"path": "/get-agenda",
|
|
669
|
+
"input_schema": {
|
|
670
|
+
"type": "object",
|
|
671
|
+
"properties": {
|
|
672
|
+
"date": {
|
|
673
|
+
"type": "string",
|
|
674
|
+
"description": "Date for agenda (ISO 8601 format)",
|
|
675
|
+
"format": "date"
|
|
676
|
+
},
|
|
677
|
+
"view": {
|
|
678
|
+
"type": "string",
|
|
679
|
+
"enum": [
|
|
680
|
+
"day",
|
|
681
|
+
"week",
|
|
682
|
+
"month"
|
|
683
|
+
],
|
|
684
|
+
"description": "Agenda view type",
|
|
685
|
+
"default": "day"
|
|
686
|
+
},
|
|
687
|
+
"calendar_ids": {
|
|
688
|
+
"type": "array",
|
|
689
|
+
"items": {
|
|
690
|
+
"type": "integer"
|
|
691
|
+
},
|
|
692
|
+
"description": "Specific calendar IDs to include (optional)"
|
|
693
|
+
},
|
|
694
|
+
"include_all_day": {
|
|
695
|
+
"type": "boolean",
|
|
696
|
+
"description": "Include all-day events",
|
|
697
|
+
"default": true
|
|
698
|
+
}
|
|
699
|
+
},
|
|
700
|
+
"required": [
|
|
701
|
+
"date"
|
|
702
|
+
]
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
]
|
|
706
|
+
}
|