integrate-sdk 0.8.74-dev.0 → 0.8.76-dev.0
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/dist/adapters/auto-routes.js +44 -1
- package/dist/adapters/base-handler.d.ts +5 -0
- package/dist/adapters/base-handler.d.ts.map +1 -1
- package/dist/adapters/index.js +44 -1
- package/dist/adapters/nextjs.js +44 -1
- package/dist/adapters/node.js +44 -1
- package/dist/adapters/svelte-kit.js +44 -1
- package/dist/adapters/tanstack-start.js +44 -1
- package/dist/index.js +44 -1
- package/dist/oauth.js +44 -1
- package/dist/server.js +44 -1
- package/dist/src/adapters/base-handler.d.ts +5 -0
- package/dist/src/adapters/base-handler.d.ts.map +1 -1
- package/dist/src/integrations/airtable.d.ts +2 -0
- package/dist/src/integrations/airtable.d.ts.map +1 -1
- package/dist/src/integrations/calcom.d.ts +2 -0
- package/dist/src/integrations/calcom.d.ts.map +1 -1
- package/dist/src/integrations/figma.d.ts +2 -0
- package/dist/src/integrations/figma.d.ts.map +1 -1
- package/dist/src/integrations/gcal.d.ts +2 -0
- package/dist/src/integrations/gcal.d.ts.map +1 -1
- package/dist/src/integrations/generic.d.ts +2 -0
- package/dist/src/integrations/generic.d.ts.map +1 -1
- package/dist/src/integrations/github.d.ts +2 -0
- package/dist/src/integrations/github.d.ts.map +1 -1
- package/dist/src/integrations/gmail.d.ts +2 -0
- package/dist/src/integrations/gmail.d.ts.map +1 -1
- package/dist/src/integrations/gworkspace.d.ts +2 -0
- package/dist/src/integrations/gworkspace.d.ts.map +1 -1
- package/dist/src/integrations/hubspot.d.ts +2 -0
- package/dist/src/integrations/hubspot.d.ts.map +1 -1
- package/dist/src/integrations/intercom.d.ts +2 -0
- package/dist/src/integrations/intercom.d.ts.map +1 -1
- package/dist/src/integrations/linear.d.ts +2 -0
- package/dist/src/integrations/linear.d.ts.map +1 -1
- package/dist/src/integrations/notion.d.ts +2 -0
- package/dist/src/integrations/notion.d.ts.map +1 -1
- package/dist/src/integrations/onedrive.d.ts +2 -0
- package/dist/src/integrations/onedrive.d.ts.map +1 -1
- package/dist/src/integrations/outlook.d.ts +2 -0
- package/dist/src/integrations/outlook.d.ts.map +1 -1
- package/dist/src/integrations/polar.d.ts +2 -0
- package/dist/src/integrations/polar.d.ts.map +1 -1
- package/dist/src/integrations/ramp.d.ts +2 -0
- package/dist/src/integrations/ramp.d.ts.map +1 -1
- package/dist/src/integrations/slack.d.ts +2 -0
- package/dist/src/integrations/slack.d.ts.map +1 -1
- package/dist/src/integrations/stripe.d.ts +2 -0
- package/dist/src/integrations/stripe.d.ts.map +1 -1
- package/dist/src/integrations/todoist.d.ts +2 -0
- package/dist/src/integrations/todoist.d.ts.map +1 -1
- package/dist/src/integrations/types.d.ts +2 -0
- package/dist/src/integrations/types.d.ts.map +1 -1
- package/dist/src/integrations/vercel-client.d.ts +165 -0
- package/dist/src/integrations/vercel-client.d.ts.map +1 -1
- package/dist/src/integrations/vercel.d.ts +3 -1
- package/dist/src/integrations/vercel.d.ts.map +1 -1
- package/dist/src/integrations/whatsapp.d.ts +2 -0
- package/dist/src/integrations/whatsapp.d.ts.map +1 -1
- package/dist/src/integrations/youtube.d.ts +2 -0
- package/dist/src/integrations/youtube.d.ts.map +1 -1
- package/dist/src/integrations/zendesk.d.ts +2 -0
- package/dist/src/integrations/zendesk.d.ts.map +1 -1
- package/dist/src/server.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3020,6 +3020,7 @@ function githubIntegration(config = {}) {
|
|
|
3020
3020
|
clientId: config.clientId ?? getEnv("GITHUB_CLIENT_ID"),
|
|
3021
3021
|
clientSecret: config.clientSecret ?? getEnv("GITHUB_CLIENT_SECRET"),
|
|
3022
3022
|
scopes: config.scopes || ["repo", "user"],
|
|
3023
|
+
optionalScopes: config.optionalScopes,
|
|
3023
3024
|
redirectUri: config.redirectUri,
|
|
3024
3025
|
config: {
|
|
3025
3026
|
apiBaseUrl: config.apiBaseUrl || "https://api.github.com",
|
|
@@ -3107,6 +3108,7 @@ function gmailIntegration(config = {}) {
|
|
|
3107
3108
|
"https://www.googleapis.com/auth/gmail.modify",
|
|
3108
3109
|
"https://www.googleapis.com/auth/gmail.labels"
|
|
3109
3110
|
],
|
|
3111
|
+
optionalScopes: config.optionalScopes,
|
|
3110
3112
|
redirectUri: config.redirectUri,
|
|
3111
3113
|
config
|
|
3112
3114
|
};
|
|
@@ -3143,6 +3145,7 @@ function notionIntegration(config = {}) {
|
|
|
3143
3145
|
clientId: config.clientId ?? getEnv("NOTION_CLIENT_ID"),
|
|
3144
3146
|
clientSecret: config.clientSecret ?? getEnv("NOTION_CLIENT_SECRET"),
|
|
3145
3147
|
scopes: [],
|
|
3148
|
+
optionalScopes: config.optionalScopes,
|
|
3146
3149
|
redirectUri: config.redirectUri,
|
|
3147
3150
|
config: {
|
|
3148
3151
|
owner: config.owner || "user",
|
|
@@ -3208,6 +3211,7 @@ function slackIntegration(config = {}) {
|
|
|
3208
3211
|
clientId: config.clientId ?? getEnv("SLACK_CLIENT_ID"),
|
|
3209
3212
|
clientSecret: config.clientSecret ?? getEnv("SLACK_CLIENT_SECRET"),
|
|
3210
3213
|
scopes: config.scopes || ["chat:write", "channels:read", "users:read", "search:read", "files:write"],
|
|
3214
|
+
optionalScopes: config.optionalScopes,
|
|
3211
3215
|
redirectUri: config.redirectUri,
|
|
3212
3216
|
config: {
|
|
3213
3217
|
...config
|
|
@@ -3251,6 +3255,7 @@ function linearIntegration(config = {}) {
|
|
|
3251
3255
|
clientId: config.clientId ?? getEnv("LINEAR_CLIENT_ID"),
|
|
3252
3256
|
clientSecret: config.clientSecret ?? getEnv("LINEAR_CLIENT_SECRET"),
|
|
3253
3257
|
scopes: config.scopes || ["read", "write", "issues:create", "comments:create"],
|
|
3258
|
+
optionalScopes: config.optionalScopes,
|
|
3254
3259
|
redirectUri: config.redirectUri,
|
|
3255
3260
|
config: {
|
|
3256
3261
|
...config
|
|
@@ -3318,6 +3323,7 @@ function vercelIntegration(config = {}) {
|
|
|
3318
3323
|
clientId: config.clientId ?? getEnv("VERCEL_CLIENT_ID"),
|
|
3319
3324
|
clientSecret: config.clientSecret ?? getEnv("VERCEL_CLIENT_SECRET"),
|
|
3320
3325
|
scopes: config.scopes || [],
|
|
3326
|
+
optionalScopes: config.optionalScopes,
|
|
3321
3327
|
redirectUri: config.redirectUri,
|
|
3322
3328
|
config: {
|
|
3323
3329
|
...config
|
|
@@ -3344,13 +3350,25 @@ var init_vercel = __esm(() => {
|
|
|
3344
3350
|
VERCEL_TOOLS = [
|
|
3345
3351
|
"vercel_list_projects",
|
|
3346
3352
|
"vercel_get_project",
|
|
3353
|
+
"vercel_create_project",
|
|
3354
|
+
"vercel_update_project",
|
|
3355
|
+
"vercel_delete_project",
|
|
3347
3356
|
"vercel_list_deployments",
|
|
3348
3357
|
"vercel_get_deployment",
|
|
3349
3358
|
"vercel_create_deployment",
|
|
3350
3359
|
"vercel_cancel_deployment",
|
|
3360
|
+
"vercel_delete_deployment",
|
|
3361
|
+
"vercel_promote_deployment",
|
|
3362
|
+
"vercel_get_deployment_logs",
|
|
3351
3363
|
"vercel_list_domains",
|
|
3364
|
+
"vercel_add_domain",
|
|
3365
|
+
"vercel_remove_domain",
|
|
3366
|
+
"vercel_get_domain_config",
|
|
3352
3367
|
"vercel_list_env_vars",
|
|
3353
|
-
"
|
|
3368
|
+
"vercel_create_env_var",
|
|
3369
|
+
"vercel_delete_env_var",
|
|
3370
|
+
"vercel_list_dns_records",
|
|
3371
|
+
"vercel_create_dns_record"
|
|
3354
3372
|
];
|
|
3355
3373
|
});
|
|
3356
3374
|
|
|
@@ -3361,6 +3379,7 @@ function zendeskIntegration(config = {}) {
|
|
|
3361
3379
|
clientId: config.clientId ?? getEnv("ZENDESK_CLIENT_ID"),
|
|
3362
3380
|
clientSecret: config.clientSecret ?? getEnv("ZENDESK_CLIENT_SECRET"),
|
|
3363
3381
|
scopes: config.scopes || ["read", "write"],
|
|
3382
|
+
optionalScopes: config.optionalScopes,
|
|
3364
3383
|
redirectUri: config.redirectUri,
|
|
3365
3384
|
config: {
|
|
3366
3385
|
subdomain: config.subdomain ?? getEnv("ZENDESK_SUBDOMAIN"),
|
|
@@ -3405,6 +3424,7 @@ function stripeIntegration(config = {}) {
|
|
|
3405
3424
|
clientId: config.clientId ?? getEnv("STRIPE_CLIENT_ID"),
|
|
3406
3425
|
clientSecret: config.clientSecret ?? getEnv("STRIPE_CLIENT_SECRET"),
|
|
3407
3426
|
scopes: config.scopes || ["read_write"],
|
|
3427
|
+
optionalScopes: config.optionalScopes,
|
|
3408
3428
|
redirectUri: config.redirectUri,
|
|
3409
3429
|
config: {
|
|
3410
3430
|
...config
|
|
@@ -3448,6 +3468,7 @@ function gcalIntegration(config = {}) {
|
|
|
3448
3468
|
clientId: config.clientId ?? getEnv("GCAL_CLIENT_ID"),
|
|
3449
3469
|
clientSecret: config.clientSecret ?? getEnv("GCAL_CLIENT_SECRET"),
|
|
3450
3470
|
scopes: config.scopes || ["https://www.googleapis.com/auth/calendar"],
|
|
3471
|
+
optionalScopes: config.optionalScopes,
|
|
3451
3472
|
redirectUri: config.redirectUri,
|
|
3452
3473
|
config: {
|
|
3453
3474
|
...config
|
|
@@ -3491,6 +3512,7 @@ function outlookIntegration(config = {}) {
|
|
|
3491
3512
|
clientId: config.clientId ?? getEnv("OUTLOOK_CLIENT_ID"),
|
|
3492
3513
|
clientSecret: config.clientSecret ?? getEnv("OUTLOOK_CLIENT_SECRET"),
|
|
3493
3514
|
scopes: config.scopes || ["Mail.Read", "Mail.Send", "Calendars.ReadWrite", "Contacts.Read"],
|
|
3515
|
+
optionalScopes: config.optionalScopes,
|
|
3494
3516
|
redirectUri: config.redirectUri,
|
|
3495
3517
|
config: {
|
|
3496
3518
|
...config
|
|
@@ -3542,6 +3564,7 @@ function airtableIntegration(config = {}) {
|
|
|
3542
3564
|
"schema.bases:write",
|
|
3543
3565
|
"webhook:manage"
|
|
3544
3566
|
],
|
|
3567
|
+
optionalScopes: config.optionalScopes,
|
|
3545
3568
|
redirectUri: config.redirectUri,
|
|
3546
3569
|
config: {
|
|
3547
3570
|
...config
|
|
@@ -3600,6 +3623,7 @@ function todoistIntegration(config = {}) {
|
|
|
3600
3623
|
clientId: config.clientId ?? getEnv("TODOIST_CLIENT_ID"),
|
|
3601
3624
|
clientSecret: config.clientSecret ?? getEnv("TODOIST_CLIENT_SECRET"),
|
|
3602
3625
|
scopes: config.scopes || ["data:read_write"],
|
|
3626
|
+
optionalScopes: config.optionalScopes,
|
|
3603
3627
|
redirectUri: config.redirectUri,
|
|
3604
3628
|
config: {
|
|
3605
3629
|
...config
|
|
@@ -3643,6 +3667,7 @@ function whatsappIntegration(config = {}) {
|
|
|
3643
3667
|
clientId: config.clientId ?? getEnv("WHATSAPP_CLIENT_ID"),
|
|
3644
3668
|
clientSecret: config.clientSecret ?? getEnv("WHATSAPP_CLIENT_SECRET"),
|
|
3645
3669
|
scopes: config.scopes || ["business_management", "whatsapp_business_messaging", "whatsapp_business_management"],
|
|
3670
|
+
optionalScopes: config.optionalScopes,
|
|
3646
3671
|
redirectUri: config.redirectUri,
|
|
3647
3672
|
config: {
|
|
3648
3673
|
businessAccountId: config.businessAccountId,
|
|
@@ -3686,6 +3711,7 @@ function calcomIntegration(config = {}) {
|
|
|
3686
3711
|
clientId: config.clientId ?? getEnv("CALCOM_CLIENT_ID"),
|
|
3687
3712
|
clientSecret: config.clientSecret ?? getEnv("CALCOM_CLIENT_SECRET"),
|
|
3688
3713
|
scopes: config.scopes || ["READ_BOOKING", "WRITE_BOOKING", "READ_PROFILE", "WRITE_PROFILE"],
|
|
3714
|
+
optionalScopes: config.optionalScopes,
|
|
3689
3715
|
redirectUri: config.redirectUri,
|
|
3690
3716
|
config: {
|
|
3691
3717
|
apiBaseUrl: config.apiBaseUrl || "https://api.cal.com/v1",
|
|
@@ -3774,6 +3800,7 @@ function rampIntegration(config = {}) {
|
|
|
3774
3800
|
clientId: config.clientId ?? getEnv("RAMP_CLIENT_ID"),
|
|
3775
3801
|
clientSecret: config.clientSecret ?? getEnv("RAMP_CLIENT_SECRET"),
|
|
3776
3802
|
scopes: config.scopes || ["transactions:read", "cards:read", "users:read"],
|
|
3803
|
+
optionalScopes: config.optionalScopes,
|
|
3777
3804
|
redirectUri: config.redirectUri,
|
|
3778
3805
|
config: {
|
|
3779
3806
|
apiBaseUrl: config.apiBaseUrl || "https://api.ramp.com/v1",
|
|
@@ -3818,6 +3845,7 @@ function onedriveIntegration(config = {}) {
|
|
|
3818
3845
|
clientId: config.clientId ?? getEnv("ONEDRIVE_CLIENT_ID"),
|
|
3819
3846
|
clientSecret: config.clientSecret ?? getEnv("ONEDRIVE_CLIENT_SECRET"),
|
|
3820
3847
|
scopes: config.scopes || ["Files.Read", "Files.ReadWrite", "offline_access"],
|
|
3848
|
+
optionalScopes: config.optionalScopes,
|
|
3821
3849
|
redirectUri: config.redirectUri,
|
|
3822
3850
|
config: {
|
|
3823
3851
|
...config
|
|
@@ -3869,6 +3897,7 @@ function gworkspaceIntegration(config = {}) {
|
|
|
3869
3897
|
"https://www.googleapis.com/auth/presentations",
|
|
3870
3898
|
"https://www.googleapis.com/auth/drive.readonly"
|
|
3871
3899
|
],
|
|
3900
|
+
optionalScopes: config.optionalScopes,
|
|
3872
3901
|
redirectUri: config.redirectUri,
|
|
3873
3902
|
config: {
|
|
3874
3903
|
...config
|
|
@@ -3934,6 +3963,7 @@ function polarIntegration(config = {}) {
|
|
|
3934
3963
|
"metrics:read",
|
|
3935
3964
|
"organizations:read"
|
|
3936
3965
|
],
|
|
3966
|
+
optionalScopes: config.optionalScopes,
|
|
3937
3967
|
redirectUri: config.redirectUri,
|
|
3938
3968
|
config: {
|
|
3939
3969
|
apiBaseUrl: config.apiBaseUrl || "https://api.polar.sh"
|
|
@@ -4003,6 +4033,7 @@ function figmaIntegration(config = {}) {
|
|
|
4003
4033
|
clientId: config.clientId ?? getEnv("FIGMA_CLIENT_ID"),
|
|
4004
4034
|
clientSecret: config.clientSecret ?? getEnv("FIGMA_CLIENT_SECRET"),
|
|
4005
4035
|
scopes: config.scopes || ["files:read", "file_comments:write"],
|
|
4036
|
+
optionalScopes: config.optionalScopes,
|
|
4006
4037
|
redirectUri: config.redirectUri,
|
|
4007
4038
|
config: {
|
|
4008
4039
|
...config
|
|
@@ -4046,6 +4077,7 @@ function intercomIntegration(config = {}) {
|
|
|
4046
4077
|
clientId: config.clientId ?? getEnv("INTERCOM_CLIENT_ID"),
|
|
4047
4078
|
clientSecret: config.clientSecret ?? getEnv("INTERCOM_CLIENT_SECRET"),
|
|
4048
4079
|
scopes: config.scopes || [],
|
|
4080
|
+
optionalScopes: config.optionalScopes,
|
|
4049
4081
|
redirectUri: config.redirectUri,
|
|
4050
4082
|
config: {
|
|
4051
4083
|
...config
|
|
@@ -4099,6 +4131,7 @@ function hubspotIntegration(config = {}) {
|
|
|
4099
4131
|
"crm.objects.tickets.write",
|
|
4100
4132
|
"crm.objects.owners.read"
|
|
4101
4133
|
],
|
|
4134
|
+
optionalScopes: config.optionalScopes,
|
|
4102
4135
|
redirectUri: config.redirectUri,
|
|
4103
4136
|
config: {
|
|
4104
4137
|
...config
|
|
@@ -4161,6 +4194,7 @@ function youtubeIntegration(config = {}) {
|
|
|
4161
4194
|
clientId: config.clientId ?? getEnv("YOUTUBE_CLIENT_ID"),
|
|
4162
4195
|
clientSecret: config.clientSecret ?? getEnv("YOUTUBE_CLIENT_SECRET"),
|
|
4163
4196
|
scopes: config.scopes || ["https://www.googleapis.com/auth/youtube.readonly"],
|
|
4197
|
+
optionalScopes: config.optionalScopes,
|
|
4164
4198
|
redirectUri: config.redirectUri,
|
|
4165
4199
|
config: {
|
|
4166
4200
|
...config
|
|
@@ -4238,6 +4272,7 @@ function genericOAuthIntegration(config) {
|
|
|
4238
4272
|
clientId: config.clientId ?? getEnv(`${providerUpper}_CLIENT_ID`),
|
|
4239
4273
|
clientSecret: config.clientSecret ?? getEnv(`${providerUpper}_CLIENT_SECRET`),
|
|
4240
4274
|
scopes: config.scopes,
|
|
4275
|
+
optionalScopes: config.optionalScopes,
|
|
4241
4276
|
redirectUri: config.redirectUri,
|
|
4242
4277
|
config
|
|
4243
4278
|
};
|
|
@@ -10940,6 +10975,7 @@ function createMCPServer(config) {
|
|
|
10940
10975
|
tools: integration.tools,
|
|
10941
10976
|
hasOAuth: !!integration.oauth,
|
|
10942
10977
|
scopes: integration.oauth?.scopes,
|
|
10978
|
+
optionalScopes: integration.oauth?.optionalScopes,
|
|
10943
10979
|
provider: integration.oauth?.provider
|
|
10944
10980
|
}));
|
|
10945
10981
|
return Response.json({ integrations });
|
|
@@ -11903,6 +11939,7 @@ class OAuthHandler {
|
|
|
11903
11939
|
tools: integration.tools,
|
|
11904
11940
|
hasOAuth: !!integration.oauth,
|
|
11905
11941
|
scopes: integration.oauth?.scopes,
|
|
11942
|
+
optionalScopes: integration.oauth?.optionalScopes,
|
|
11906
11943
|
provider: integration.oauth?.provider
|
|
11907
11944
|
}))
|
|
11908
11945
|
};
|
|
@@ -11945,6 +11982,10 @@ class OAuthHandler {
|
|
|
11945
11982
|
if (scopes.length > 0) {
|
|
11946
11983
|
url.searchParams.set("scope", scopes.join(","));
|
|
11947
11984
|
}
|
|
11985
|
+
const optionalScopes = authorizeRequest.optionalScopes || providerConfig.optionalScopes || [];
|
|
11986
|
+
if (optionalScopes.length > 0) {
|
|
11987
|
+
url.searchParams.set("optional_scope", optionalScopes.join(","));
|
|
11988
|
+
}
|
|
11948
11989
|
url.searchParams.set("state", authorizeRequest.state);
|
|
11949
11990
|
url.searchParams.set("code_challenge", authorizeRequest.codeChallenge);
|
|
11950
11991
|
url.searchParams.set("code_challenge_method", authorizeRequest.codeChallengeMethod);
|
|
@@ -11956,10 +11997,12 @@ class OAuthHandler {
|
|
|
11956
11997
|
"clientId",
|
|
11957
11998
|
"clientSecret",
|
|
11958
11999
|
"scopes",
|
|
12000
|
+
"optionalScopes",
|
|
11959
12001
|
"redirectUri",
|
|
11960
12002
|
"client_id",
|
|
11961
12003
|
"client_secret",
|
|
11962
12004
|
"scope",
|
|
12005
|
+
"optional_scope",
|
|
11963
12006
|
"redirect_uri",
|
|
11964
12007
|
"provider"
|
|
11965
12008
|
]);
|
package/dist/oauth.js
CHANGED
|
@@ -2842,6 +2842,7 @@ function githubIntegration(config = {}) {
|
|
|
2842
2842
|
clientId: config.clientId ?? getEnv("GITHUB_CLIENT_ID"),
|
|
2843
2843
|
clientSecret: config.clientSecret ?? getEnv("GITHUB_CLIENT_SECRET"),
|
|
2844
2844
|
scopes: config.scopes || ["repo", "user"],
|
|
2845
|
+
optionalScopes: config.optionalScopes,
|
|
2845
2846
|
redirectUri: config.redirectUri,
|
|
2846
2847
|
config: {
|
|
2847
2848
|
apiBaseUrl: config.apiBaseUrl || "https://api.github.com",
|
|
@@ -2929,6 +2930,7 @@ function gmailIntegration(config = {}) {
|
|
|
2929
2930
|
"https://www.googleapis.com/auth/gmail.modify",
|
|
2930
2931
|
"https://www.googleapis.com/auth/gmail.labels"
|
|
2931
2932
|
],
|
|
2933
|
+
optionalScopes: config.optionalScopes,
|
|
2932
2934
|
redirectUri: config.redirectUri,
|
|
2933
2935
|
config
|
|
2934
2936
|
};
|
|
@@ -2965,6 +2967,7 @@ function notionIntegration(config = {}) {
|
|
|
2965
2967
|
clientId: config.clientId ?? getEnv("NOTION_CLIENT_ID"),
|
|
2966
2968
|
clientSecret: config.clientSecret ?? getEnv("NOTION_CLIENT_SECRET"),
|
|
2967
2969
|
scopes: [],
|
|
2970
|
+
optionalScopes: config.optionalScopes,
|
|
2968
2971
|
redirectUri: config.redirectUri,
|
|
2969
2972
|
config: {
|
|
2970
2973
|
owner: config.owner || "user",
|
|
@@ -3030,6 +3033,7 @@ function slackIntegration(config = {}) {
|
|
|
3030
3033
|
clientId: config.clientId ?? getEnv("SLACK_CLIENT_ID"),
|
|
3031
3034
|
clientSecret: config.clientSecret ?? getEnv("SLACK_CLIENT_SECRET"),
|
|
3032
3035
|
scopes: config.scopes || ["chat:write", "channels:read", "users:read", "search:read", "files:write"],
|
|
3036
|
+
optionalScopes: config.optionalScopes,
|
|
3033
3037
|
redirectUri: config.redirectUri,
|
|
3034
3038
|
config: {
|
|
3035
3039
|
...config
|
|
@@ -3073,6 +3077,7 @@ function linearIntegration(config = {}) {
|
|
|
3073
3077
|
clientId: config.clientId ?? getEnv("LINEAR_CLIENT_ID"),
|
|
3074
3078
|
clientSecret: config.clientSecret ?? getEnv("LINEAR_CLIENT_SECRET"),
|
|
3075
3079
|
scopes: config.scopes || ["read", "write", "issues:create", "comments:create"],
|
|
3080
|
+
optionalScopes: config.optionalScopes,
|
|
3076
3081
|
redirectUri: config.redirectUri,
|
|
3077
3082
|
config: {
|
|
3078
3083
|
...config
|
|
@@ -3140,6 +3145,7 @@ function vercelIntegration(config = {}) {
|
|
|
3140
3145
|
clientId: config.clientId ?? getEnv("VERCEL_CLIENT_ID"),
|
|
3141
3146
|
clientSecret: config.clientSecret ?? getEnv("VERCEL_CLIENT_SECRET"),
|
|
3142
3147
|
scopes: config.scopes || [],
|
|
3148
|
+
optionalScopes: config.optionalScopes,
|
|
3143
3149
|
redirectUri: config.redirectUri,
|
|
3144
3150
|
config: {
|
|
3145
3151
|
...config
|
|
@@ -3166,13 +3172,25 @@ var init_vercel = __esm(() => {
|
|
|
3166
3172
|
VERCEL_TOOLS = [
|
|
3167
3173
|
"vercel_list_projects",
|
|
3168
3174
|
"vercel_get_project",
|
|
3175
|
+
"vercel_create_project",
|
|
3176
|
+
"vercel_update_project",
|
|
3177
|
+
"vercel_delete_project",
|
|
3169
3178
|
"vercel_list_deployments",
|
|
3170
3179
|
"vercel_get_deployment",
|
|
3171
3180
|
"vercel_create_deployment",
|
|
3172
3181
|
"vercel_cancel_deployment",
|
|
3182
|
+
"vercel_delete_deployment",
|
|
3183
|
+
"vercel_promote_deployment",
|
|
3184
|
+
"vercel_get_deployment_logs",
|
|
3173
3185
|
"vercel_list_domains",
|
|
3186
|
+
"vercel_add_domain",
|
|
3187
|
+
"vercel_remove_domain",
|
|
3188
|
+
"vercel_get_domain_config",
|
|
3174
3189
|
"vercel_list_env_vars",
|
|
3175
|
-
"
|
|
3190
|
+
"vercel_create_env_var",
|
|
3191
|
+
"vercel_delete_env_var",
|
|
3192
|
+
"vercel_list_dns_records",
|
|
3193
|
+
"vercel_create_dns_record"
|
|
3176
3194
|
];
|
|
3177
3195
|
});
|
|
3178
3196
|
|
|
@@ -3183,6 +3201,7 @@ function zendeskIntegration(config = {}) {
|
|
|
3183
3201
|
clientId: config.clientId ?? getEnv("ZENDESK_CLIENT_ID"),
|
|
3184
3202
|
clientSecret: config.clientSecret ?? getEnv("ZENDESK_CLIENT_SECRET"),
|
|
3185
3203
|
scopes: config.scopes || ["read", "write"],
|
|
3204
|
+
optionalScopes: config.optionalScopes,
|
|
3186
3205
|
redirectUri: config.redirectUri,
|
|
3187
3206
|
config: {
|
|
3188
3207
|
subdomain: config.subdomain ?? getEnv("ZENDESK_SUBDOMAIN"),
|
|
@@ -3227,6 +3246,7 @@ function stripeIntegration(config = {}) {
|
|
|
3227
3246
|
clientId: config.clientId ?? getEnv("STRIPE_CLIENT_ID"),
|
|
3228
3247
|
clientSecret: config.clientSecret ?? getEnv("STRIPE_CLIENT_SECRET"),
|
|
3229
3248
|
scopes: config.scopes || ["read_write"],
|
|
3249
|
+
optionalScopes: config.optionalScopes,
|
|
3230
3250
|
redirectUri: config.redirectUri,
|
|
3231
3251
|
config: {
|
|
3232
3252
|
...config
|
|
@@ -3270,6 +3290,7 @@ function gcalIntegration(config = {}) {
|
|
|
3270
3290
|
clientId: config.clientId ?? getEnv("GCAL_CLIENT_ID"),
|
|
3271
3291
|
clientSecret: config.clientSecret ?? getEnv("GCAL_CLIENT_SECRET"),
|
|
3272
3292
|
scopes: config.scopes || ["https://www.googleapis.com/auth/calendar"],
|
|
3293
|
+
optionalScopes: config.optionalScopes,
|
|
3273
3294
|
redirectUri: config.redirectUri,
|
|
3274
3295
|
config: {
|
|
3275
3296
|
...config
|
|
@@ -3313,6 +3334,7 @@ function outlookIntegration(config = {}) {
|
|
|
3313
3334
|
clientId: config.clientId ?? getEnv("OUTLOOK_CLIENT_ID"),
|
|
3314
3335
|
clientSecret: config.clientSecret ?? getEnv("OUTLOOK_CLIENT_SECRET"),
|
|
3315
3336
|
scopes: config.scopes || ["Mail.Read", "Mail.Send", "Calendars.ReadWrite", "Contacts.Read"],
|
|
3337
|
+
optionalScopes: config.optionalScopes,
|
|
3316
3338
|
redirectUri: config.redirectUri,
|
|
3317
3339
|
config: {
|
|
3318
3340
|
...config
|
|
@@ -3364,6 +3386,7 @@ function airtableIntegration(config = {}) {
|
|
|
3364
3386
|
"schema.bases:write",
|
|
3365
3387
|
"webhook:manage"
|
|
3366
3388
|
],
|
|
3389
|
+
optionalScopes: config.optionalScopes,
|
|
3367
3390
|
redirectUri: config.redirectUri,
|
|
3368
3391
|
config: {
|
|
3369
3392
|
...config
|
|
@@ -3422,6 +3445,7 @@ function todoistIntegration(config = {}) {
|
|
|
3422
3445
|
clientId: config.clientId ?? getEnv("TODOIST_CLIENT_ID"),
|
|
3423
3446
|
clientSecret: config.clientSecret ?? getEnv("TODOIST_CLIENT_SECRET"),
|
|
3424
3447
|
scopes: config.scopes || ["data:read_write"],
|
|
3448
|
+
optionalScopes: config.optionalScopes,
|
|
3425
3449
|
redirectUri: config.redirectUri,
|
|
3426
3450
|
config: {
|
|
3427
3451
|
...config
|
|
@@ -3465,6 +3489,7 @@ function whatsappIntegration(config = {}) {
|
|
|
3465
3489
|
clientId: config.clientId ?? getEnv("WHATSAPP_CLIENT_ID"),
|
|
3466
3490
|
clientSecret: config.clientSecret ?? getEnv("WHATSAPP_CLIENT_SECRET"),
|
|
3467
3491
|
scopes: config.scopes || ["business_management", "whatsapp_business_messaging", "whatsapp_business_management"],
|
|
3492
|
+
optionalScopes: config.optionalScopes,
|
|
3468
3493
|
redirectUri: config.redirectUri,
|
|
3469
3494
|
config: {
|
|
3470
3495
|
businessAccountId: config.businessAccountId,
|
|
@@ -3508,6 +3533,7 @@ function calcomIntegration(config = {}) {
|
|
|
3508
3533
|
clientId: config.clientId ?? getEnv("CALCOM_CLIENT_ID"),
|
|
3509
3534
|
clientSecret: config.clientSecret ?? getEnv("CALCOM_CLIENT_SECRET"),
|
|
3510
3535
|
scopes: config.scopes || ["READ_BOOKING", "WRITE_BOOKING", "READ_PROFILE", "WRITE_PROFILE"],
|
|
3536
|
+
optionalScopes: config.optionalScopes,
|
|
3511
3537
|
redirectUri: config.redirectUri,
|
|
3512
3538
|
config: {
|
|
3513
3539
|
apiBaseUrl: config.apiBaseUrl || "https://api.cal.com/v1",
|
|
@@ -3596,6 +3622,7 @@ function rampIntegration(config = {}) {
|
|
|
3596
3622
|
clientId: config.clientId ?? getEnv("RAMP_CLIENT_ID"),
|
|
3597
3623
|
clientSecret: config.clientSecret ?? getEnv("RAMP_CLIENT_SECRET"),
|
|
3598
3624
|
scopes: config.scopes || ["transactions:read", "cards:read", "users:read"],
|
|
3625
|
+
optionalScopes: config.optionalScopes,
|
|
3599
3626
|
redirectUri: config.redirectUri,
|
|
3600
3627
|
config: {
|
|
3601
3628
|
apiBaseUrl: config.apiBaseUrl || "https://api.ramp.com/v1",
|
|
@@ -3640,6 +3667,7 @@ function onedriveIntegration(config = {}) {
|
|
|
3640
3667
|
clientId: config.clientId ?? getEnv("ONEDRIVE_CLIENT_ID"),
|
|
3641
3668
|
clientSecret: config.clientSecret ?? getEnv("ONEDRIVE_CLIENT_SECRET"),
|
|
3642
3669
|
scopes: config.scopes || ["Files.Read", "Files.ReadWrite", "offline_access"],
|
|
3670
|
+
optionalScopes: config.optionalScopes,
|
|
3643
3671
|
redirectUri: config.redirectUri,
|
|
3644
3672
|
config: {
|
|
3645
3673
|
...config
|
|
@@ -3691,6 +3719,7 @@ function gworkspaceIntegration(config = {}) {
|
|
|
3691
3719
|
"https://www.googleapis.com/auth/presentations",
|
|
3692
3720
|
"https://www.googleapis.com/auth/drive.readonly"
|
|
3693
3721
|
],
|
|
3722
|
+
optionalScopes: config.optionalScopes,
|
|
3694
3723
|
redirectUri: config.redirectUri,
|
|
3695
3724
|
config: {
|
|
3696
3725
|
...config
|
|
@@ -3756,6 +3785,7 @@ function polarIntegration(config = {}) {
|
|
|
3756
3785
|
"metrics:read",
|
|
3757
3786
|
"organizations:read"
|
|
3758
3787
|
],
|
|
3788
|
+
optionalScopes: config.optionalScopes,
|
|
3759
3789
|
redirectUri: config.redirectUri,
|
|
3760
3790
|
config: {
|
|
3761
3791
|
apiBaseUrl: config.apiBaseUrl || "https://api.polar.sh"
|
|
@@ -3825,6 +3855,7 @@ function figmaIntegration(config = {}) {
|
|
|
3825
3855
|
clientId: config.clientId ?? getEnv("FIGMA_CLIENT_ID"),
|
|
3826
3856
|
clientSecret: config.clientSecret ?? getEnv("FIGMA_CLIENT_SECRET"),
|
|
3827
3857
|
scopes: config.scopes || ["files:read", "file_comments:write"],
|
|
3858
|
+
optionalScopes: config.optionalScopes,
|
|
3828
3859
|
redirectUri: config.redirectUri,
|
|
3829
3860
|
config: {
|
|
3830
3861
|
...config
|
|
@@ -3868,6 +3899,7 @@ function intercomIntegration(config = {}) {
|
|
|
3868
3899
|
clientId: config.clientId ?? getEnv("INTERCOM_CLIENT_ID"),
|
|
3869
3900
|
clientSecret: config.clientSecret ?? getEnv("INTERCOM_CLIENT_SECRET"),
|
|
3870
3901
|
scopes: config.scopes || [],
|
|
3902
|
+
optionalScopes: config.optionalScopes,
|
|
3871
3903
|
redirectUri: config.redirectUri,
|
|
3872
3904
|
config: {
|
|
3873
3905
|
...config
|
|
@@ -3921,6 +3953,7 @@ function hubspotIntegration(config = {}) {
|
|
|
3921
3953
|
"crm.objects.tickets.write",
|
|
3922
3954
|
"crm.objects.owners.read"
|
|
3923
3955
|
],
|
|
3956
|
+
optionalScopes: config.optionalScopes,
|
|
3924
3957
|
redirectUri: config.redirectUri,
|
|
3925
3958
|
config: {
|
|
3926
3959
|
...config
|
|
@@ -3983,6 +4016,7 @@ function youtubeIntegration(config = {}) {
|
|
|
3983
4016
|
clientId: config.clientId ?? getEnv("YOUTUBE_CLIENT_ID"),
|
|
3984
4017
|
clientSecret: config.clientSecret ?? getEnv("YOUTUBE_CLIENT_SECRET"),
|
|
3985
4018
|
scopes: config.scopes || ["https://www.googleapis.com/auth/youtube.readonly"],
|
|
4019
|
+
optionalScopes: config.optionalScopes,
|
|
3986
4020
|
redirectUri: config.redirectUri,
|
|
3987
4021
|
config: {
|
|
3988
4022
|
...config
|
|
@@ -4060,6 +4094,7 @@ function genericOAuthIntegration(config) {
|
|
|
4060
4094
|
clientId: config.clientId ?? getEnv(`${providerUpper}_CLIENT_ID`),
|
|
4061
4095
|
clientSecret: config.clientSecret ?? getEnv(`${providerUpper}_CLIENT_SECRET`),
|
|
4062
4096
|
scopes: config.scopes,
|
|
4097
|
+
optionalScopes: config.optionalScopes,
|
|
4063
4098
|
redirectUri: config.redirectUri,
|
|
4064
4099
|
config
|
|
4065
4100
|
};
|
|
@@ -10774,6 +10809,7 @@ function createMCPServer(config) {
|
|
|
10774
10809
|
tools: integration.tools,
|
|
10775
10810
|
hasOAuth: !!integration.oauth,
|
|
10776
10811
|
scopes: integration.oauth?.scopes,
|
|
10812
|
+
optionalScopes: integration.oauth?.optionalScopes,
|
|
10777
10813
|
provider: integration.oauth?.provider
|
|
10778
10814
|
}));
|
|
10779
10815
|
return Response.json({ integrations });
|
|
@@ -11737,6 +11773,7 @@ class OAuthHandler {
|
|
|
11737
11773
|
tools: integration.tools,
|
|
11738
11774
|
hasOAuth: !!integration.oauth,
|
|
11739
11775
|
scopes: integration.oauth?.scopes,
|
|
11776
|
+
optionalScopes: integration.oauth?.optionalScopes,
|
|
11740
11777
|
provider: integration.oauth?.provider
|
|
11741
11778
|
}))
|
|
11742
11779
|
};
|
|
@@ -11779,6 +11816,10 @@ class OAuthHandler {
|
|
|
11779
11816
|
if (scopes.length > 0) {
|
|
11780
11817
|
url.searchParams.set("scope", scopes.join(","));
|
|
11781
11818
|
}
|
|
11819
|
+
const optionalScopes = authorizeRequest.optionalScopes || providerConfig.optionalScopes || [];
|
|
11820
|
+
if (optionalScopes.length > 0) {
|
|
11821
|
+
url.searchParams.set("optional_scope", optionalScopes.join(","));
|
|
11822
|
+
}
|
|
11782
11823
|
url.searchParams.set("state", authorizeRequest.state);
|
|
11783
11824
|
url.searchParams.set("code_challenge", authorizeRequest.codeChallenge);
|
|
11784
11825
|
url.searchParams.set("code_challenge_method", authorizeRequest.codeChallengeMethod);
|
|
@@ -11790,10 +11831,12 @@ class OAuthHandler {
|
|
|
11790
11831
|
"clientId",
|
|
11791
11832
|
"clientSecret",
|
|
11792
11833
|
"scopes",
|
|
11834
|
+
"optionalScopes",
|
|
11793
11835
|
"redirectUri",
|
|
11794
11836
|
"client_id",
|
|
11795
11837
|
"client_secret",
|
|
11796
11838
|
"scope",
|
|
11839
|
+
"optional_scope",
|
|
11797
11840
|
"redirect_uri",
|
|
11798
11841
|
"provider"
|
|
11799
11842
|
]);
|