mcp-google-multi 6.0.0-beta.1 → 6.0.0-beta.2
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/README.md +5 -3
- package/dist/accounts.d.ts +5 -0
- package/dist/accounts.js +12 -1
- package/dist/api-probe.js +3 -0
- package/dist/arg-normalize.d.ts +61 -4
- package/dist/arg-normalize.js +228 -4
- package/dist/arg-strict.d.ts +54 -0
- package/dist/arg-strict.js +163 -0
- package/dist/auth.js +15 -72
- package/dist/client.js +15 -5
- package/dist/config-file.d.ts +1 -0
- package/dist/config-file.js +4 -0
- package/dist/discover.js +35 -14
- package/dist/discovery-client.d.ts +8 -1
- package/dist/discovery-client.js +96 -17
- package/dist/doctor.d.ts +9 -1
- package/dist/doctor.js +32 -4
- package/dist/env-load.d.ts +11 -0
- package/dist/env-load.js +23 -1
- package/dist/executor.js +12 -1
- package/dist/fanout.js +43 -8
- package/dist/http-transport.d.ts +11 -2
- package/dist/http-transport.js +10 -5
- package/dist/index.js +112 -12
- package/dist/metrics-cli.d.ts +21 -0
- package/dist/metrics-cli.js +206 -0
- package/dist/metrics-tap.d.ts +12 -0
- package/dist/metrics-tap.js +95 -0
- package/dist/oauth-consent.d.ts +25 -10
- package/dist/oauth-consent.js +85 -39
- package/dist/outbound-allowlist.d.ts +34 -0
- package/dist/outbound-allowlist.js +108 -0
- package/dist/registry.d.ts +49 -2
- package/dist/registry.js +147 -7
- package/dist/scope-catalog.js +16 -0
- package/dist/services.d.ts +8 -0
- package/dist/services.js +28 -1
- package/dist/setup-prompt.d.ts +1 -1
- package/dist/setup-prompt.js +1 -1
- package/dist/tools/_coerce.d.ts +5 -0
- package/dist/tools/_coerce.js +11 -0
- package/dist/tools/_errors.d.ts +31 -3
- package/dist/tools/_errors.js +307 -43
- package/dist/tools/_local-files.js +7 -2
- package/dist/tools/account-wizard.d.ts +24 -1
- package/dist/tools/account-wizard.js +152 -51
- package/dist/tools/admin.js +7 -6
- package/dist/tools/analytics.d.ts +18 -0
- package/dist/tools/analytics.js +284 -0
- package/dist/tools/calendar.d.ts +7 -0
- package/dist/tools/calendar.js +75 -15
- package/dist/tools/chat.js +7 -4
- package/dist/tools/contacts.js +57 -30
- package/dist/tools/docs.js +56 -54
- package/dist/tools/drive.js +132 -70
- package/dist/tools/forms.js +7 -7
- package/dist/tools/generated/_shared.d.ts +6 -0
- package/dist/tools/generated/_shared.js +11 -1
- package/dist/tools/generated/admin.js +345 -214
- package/dist/tools/generated/analytics.d.ts +2 -0
- package/dist/tools/generated/analytics.js +981 -0
- package/dist/tools/generated/appsmarket.js +4 -4
- package/dist/tools/generated/calendar.js +28 -28
- package/dist/tools/generated/chat.js +83 -56
- package/dist/tools/generated/classroom.js +258 -216
- package/dist/tools/generated/cloudidentity.js +76 -68
- package/dist/tools/generated/cloudsearch.js +40 -39
- package/dist/tools/generated/contacts.js +20 -11
- package/dist/tools/generated/drive.js +62 -53
- package/dist/tools/generated/drivelabels.js +60 -32
- package/dist/tools/generated/forms.js +7 -7
- package/dist/tools/generated/gmail.js +136 -109
- package/dist/tools/generated/groupsmigration.js +1 -1
- package/dist/tools/generated/groupssettings.js +3 -3
- package/dist/tools/generated/index.js +2 -0
- package/dist/tools/generated/keep.js +8 -7
- package/dist/tools/generated/licensing.js +39 -23
- package/dist/tools/generated/meet.js +14 -14
- package/dist/tools/generated/method-map.d.ts +2 -0
- package/dist/tools/generated/method-map.js +894 -0
- package/dist/tools/generated/postmaster.js +3 -3
- package/dist/tools/generated/reseller.js +34 -28
- package/dist/tools/generated/script.js +29 -19
- package/dist/tools/generated/searchconsole.js +5 -3
- package/dist/tools/generated/sheets.js +10 -9
- package/dist/tools/generated/tasks.js +10 -4
- package/dist/tools/generated/vault.js +65 -56
- package/dist/tools/generated/workspaceevents.js +17 -16
- package/dist/tools/gmail.d.ts +10 -1
- package/dist/tools/gmail.js +50 -18
- package/dist/tools/google-api.js +48 -19
- package/dist/tools/meet.js +5 -2
- package/dist/tools/searchconsole.js +10 -10
- package/dist/tools/sheets.js +36 -48
- package/dist/tools/slides.js +6 -6
- package/dist/tools/tasks.js +16 -16
- package/dist/trim.d.ts +21 -0
- package/dist/trim.js +47 -0
- package/dist/usage-metrics.d.ts +155 -0
- package/dist/usage-metrics.js +603 -0
- package/dist/write-control.d.ts +27 -1
- package/dist/write-control.js +90 -11
- package/package.json +8 -3
|
@@ -15,7 +15,7 @@ export function registerGroupsmigrationGeneratedTools(registry) {
|
|
|
15
15
|
hasBody: false,
|
|
16
16
|
shape: {
|
|
17
17
|
account: accountField(),
|
|
18
|
-
groupId: z.string().describe("The group ID"),
|
|
18
|
+
groupId: z.string().min(1).describe("The group ID"),
|
|
19
19
|
fields: z.string().optional().describe('Response field mask.'),
|
|
20
20
|
},
|
|
21
21
|
});
|
|
@@ -16,7 +16,7 @@ export function registerGroupssettingsGeneratedTools(registry) {
|
|
|
16
16
|
hasBody: false,
|
|
17
17
|
shape: {
|
|
18
18
|
account: accountField(),
|
|
19
|
-
groupUniqueId: z.string().describe("The group's email address."),
|
|
19
|
+
groupUniqueId: z.string().min(1).describe("The group's email address."),
|
|
20
20
|
fields: z.string().optional().describe('Response field mask.'),
|
|
21
21
|
},
|
|
22
22
|
});
|
|
@@ -29,7 +29,7 @@ export function registerGroupssettingsGeneratedTools(registry) {
|
|
|
29
29
|
hasBody: true,
|
|
30
30
|
shape: {
|
|
31
31
|
account: accountField(),
|
|
32
|
-
groupUniqueId: z.string().describe("The group's email address."),
|
|
32
|
+
groupUniqueId: z.string().min(1).describe("The group's email address."),
|
|
33
33
|
body: coerceJson(z.record(z.string(), z.unknown())).describe("Groups JSON request body. Top-level fields: allowExternalMembers, allowGoogleCommunication, allowWebPosting, archiveOnly, customFooterText, customReplyTo, customRolesEnabledForSettingsToBeMerged, defaultMessageDenyNotificationText, default_sender, description, email, enableCollaborativeInbox, +51 more."),
|
|
34
34
|
fields: z.string().optional().describe('Response field mask.'),
|
|
35
35
|
},
|
|
@@ -43,7 +43,7 @@ export function registerGroupssettingsGeneratedTools(registry) {
|
|
|
43
43
|
hasBody: true,
|
|
44
44
|
shape: {
|
|
45
45
|
account: accountField(),
|
|
46
|
-
groupUniqueId: z.string().describe("The group's email address."),
|
|
46
|
+
groupUniqueId: z.string().min(1).describe("The group's email address."),
|
|
47
47
|
body: coerceJson(z.record(z.string(), z.unknown())).describe("Groups JSON request body. Top-level fields: allowExternalMembers, allowGoogleCommunication, allowWebPosting, archiveOnly, customFooterText, customReplyTo, customRolesEnabledForSettingsToBeMerged, defaultMessageDenyNotificationText, default_sender, description, email, enableCollaborativeInbox, +51 more."),
|
|
48
48
|
fields: z.string().optional().describe('Response field mask.'),
|
|
49
49
|
},
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { registerAdminGeneratedTools } from './admin.js';
|
|
2
|
+
import { registerAnalyticsGeneratedTools } from './analytics.js';
|
|
2
3
|
import { registerAppsmarketGeneratedTools } from './appsmarket.js';
|
|
3
4
|
import { registerCalendarGeneratedTools } from './calendar.js';
|
|
4
5
|
import { registerChatGeneratedTools } from './chat.js';
|
|
@@ -26,6 +27,7 @@ import { registerVaultGeneratedTools } from './vault.js';
|
|
|
26
27
|
import { registerWorkspaceeventsGeneratedTools } from './workspaceevents.js';
|
|
27
28
|
export const GENERATED_SERVICES = [
|
|
28
29
|
{ name: "admin", register: registerAdminGeneratedTools },
|
|
30
|
+
{ name: "analytics", register: registerAnalyticsGeneratedTools },
|
|
29
31
|
{ name: "appsmarket", register: registerAppsmarketGeneratedTools },
|
|
30
32
|
{ name: "calendar", register: registerCalendarGeneratedTools },
|
|
31
33
|
{ name: "chat", register: registerChatGeneratedTools },
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// GENERATED by scripts/gen-tools.ts — do not edit. Regenerate: npm run gen:tools
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { coerceJson } from '../_coerce.js';
|
|
3
|
+
import { coerceArray, coerceJson } from '../_coerce.js';
|
|
4
4
|
import { accountField, registerGeneratedTool } from './_shared.js';
|
|
5
5
|
export function registerKeepGeneratedTools(registry) {
|
|
6
6
|
// Interned method scope sets (shared across tools; see scope-observability).
|
|
@@ -17,7 +17,7 @@ export function registerKeepGeneratedTools(registry) {
|
|
|
17
17
|
hasBody: false,
|
|
18
18
|
shape: {
|
|
19
19
|
account: accountField(),
|
|
20
|
-
name: z.string().describe("Required. The name of the attachment."),
|
|
20
|
+
name: z.string().min(1).describe("Required. The name of the attachment."),
|
|
21
21
|
mimeType: z.string().describe("The IANA MIME type format requested. The requested MIME type must be one specified in the attachment.mime_type. Required when downloading attachment media and ignored otherwise.").optional(),
|
|
22
22
|
fields: z.string().optional().describe('Response field mask.'),
|
|
23
23
|
},
|
|
@@ -44,7 +44,7 @@ export function registerKeepGeneratedTools(registry) {
|
|
|
44
44
|
hasBody: false,
|
|
45
45
|
shape: {
|
|
46
46
|
account: accountField(),
|
|
47
|
-
name: z.string().describe("Required. Name of the note to delete."),
|
|
47
|
+
name: z.string().min(1).describe("Required. Name of the note to delete."),
|
|
48
48
|
fields: z.string().optional().describe('Response field mask.'),
|
|
49
49
|
},
|
|
50
50
|
});
|
|
@@ -57,7 +57,7 @@ export function registerKeepGeneratedTools(registry) {
|
|
|
57
57
|
hasBody: false,
|
|
58
58
|
shape: {
|
|
59
59
|
account: accountField(),
|
|
60
|
-
name: z.string().describe("Required. Name of the resource."),
|
|
60
|
+
name: z.string().min(1).describe("Required. Name of the resource."),
|
|
61
61
|
fields: z.string().optional().describe('Response field mask.'),
|
|
62
62
|
},
|
|
63
63
|
});
|
|
@@ -85,7 +85,7 @@ export function registerKeepGeneratedTools(registry) {
|
|
|
85
85
|
hasBody: true,
|
|
86
86
|
shape: {
|
|
87
87
|
account: accountField(),
|
|
88
|
-
parent: z.string().describe("The parent resource shared by all Permissions being created. Format: `notes/{note}` If this is set, the parent field in the CreatePermission messages must either be empty or match this field."),
|
|
88
|
+
parent: z.string().min(1).describe("The parent resource shared by all Permissions being created. Format: `notes/{note}` If this is set, the parent field in the CreatePermission messages must either be empty or match this field."),
|
|
89
89
|
body: coerceJson(z.record(z.string(), z.unknown())).describe("BatchCreatePermissionsRequest JSON request body. Top-level fields: requests."),
|
|
90
90
|
fields: z.string().optional().describe('Response field mask.'),
|
|
91
91
|
},
|
|
@@ -97,10 +97,11 @@ export function registerKeepGeneratedTools(registry) {
|
|
|
97
97
|
method: { id: "keep.notes.permissions.batchDelete", httpMethod: "POST", path: "v1/{+parent}/permissions:batchDelete", baseUrl: "https://keep.googleapis.com/", requiredParams: ["parent"], scopes: S_keep_v1[1] },
|
|
98
98
|
params: [{ "field": "parent", "api": "parent", "location": "path" }, { "field": "fields", "api": "fields", "location": "query" }],
|
|
99
99
|
hasBody: true,
|
|
100
|
+
bodyParams: [{ "field": "names", "api": "names" }],
|
|
100
101
|
shape: {
|
|
101
102
|
account: accountField(),
|
|
102
|
-
parent: z.string().describe("The parent resource shared by all permissions being deleted. Format: `notes/{note}` If this is set, the parent of all of the permissions specified in the DeletePermissionRequest messages must match th"),
|
|
103
|
-
|
|
103
|
+
parent: z.string().min(1).describe("The parent resource shared by all permissions being deleted. Format: `notes/{note}` If this is set, the parent of all of the permissions specified in the DeletePermissionRequest messages must match th"),
|
|
104
|
+
names: coerceArray(z.string()).describe("Required. The names of the permissions to delete. Format: `notes/{note}/permissions/{permission}`").optional(),
|
|
104
105
|
fields: z.string().optional().describe('Response field mask.'),
|
|
105
106
|
},
|
|
106
107
|
});
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// GENERATED by scripts/gen-tools.ts — do not edit. Regenerate: npm run gen:tools
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { coerceJson } from '../_coerce.js';
|
|
4
3
|
import { accountField, registerGeneratedTool } from './_shared.js';
|
|
5
4
|
export function registerLicensingGeneratedTools(registry) {
|
|
6
5
|
// Interned method scope sets (shared across tools; see scope-observability).
|
|
@@ -16,9 +15,9 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
16
15
|
hasBody: false,
|
|
17
16
|
shape: {
|
|
18
17
|
account: accountField(),
|
|
19
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
20
|
-
skuId: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
21
|
-
userId: z.string().describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
18
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
19
|
+
skuId: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
20
|
+
userId: z.string().min(1).describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
22
21
|
fields: z.string().optional().describe('Response field mask.'),
|
|
23
22
|
},
|
|
24
23
|
});
|
|
@@ -31,9 +30,9 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
31
30
|
hasBody: false,
|
|
32
31
|
shape: {
|
|
33
32
|
account: accountField(),
|
|
34
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
35
|
-
skuId: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
36
|
-
userId: z.string().describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
33
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
34
|
+
skuId: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
35
|
+
userId: z.string().min(1).describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
37
36
|
fields: z.string().optional().describe('Response field mask.'),
|
|
38
37
|
},
|
|
39
38
|
});
|
|
@@ -44,11 +43,12 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
44
43
|
method: { id: "licensing.licenseAssignments.insert", httpMethod: "POST", path: "apps/licensing/v1/product/{productId}/sku/{skuId}/user", baseUrl: "https://licensing.googleapis.com/", requiredParams: ["productId", "skuId"], scopes: S_licensing_v1[0] },
|
|
45
44
|
params: [{ "field": "productId", "api": "productId", "location": "path" }, { "field": "skuId", "api": "skuId", "location": "path" }, { "field": "fields", "api": "fields", "location": "query" }],
|
|
46
45
|
hasBody: true,
|
|
46
|
+
bodyParams: [{ "field": "userId", "api": "userId" }],
|
|
47
47
|
shape: {
|
|
48
48
|
account: accountField(),
|
|
49
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
50
|
-
skuId: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
51
|
-
|
|
49
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
50
|
+
skuId: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
51
|
+
userId: z.string().min(1).describe("Email id of the user"),
|
|
52
52
|
fields: z.string().optional().describe('Response field mask.'),
|
|
53
53
|
},
|
|
54
54
|
});
|
|
@@ -61,8 +61,8 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
61
61
|
hasBody: false,
|
|
62
62
|
shape: {
|
|
63
63
|
account: accountField(),
|
|
64
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
65
|
-
customerId: z.string().describe("The customer's unique ID as defined in the Admin console, such as `C00000000`. If the customer is suspended, the server returns an error."),
|
|
64
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
65
|
+
customerId: z.string().min(1).describe("The customer's unique ID as defined in the Admin console, such as `C00000000`. If the customer is suspended, the server returns an error."),
|
|
66
66
|
maxResults: z.number().describe("The `maxResults` query string determines how many entries are returned on each page of a large response. This is an optional parameter. The value must be a positive number.").optional(),
|
|
67
67
|
pageToken: z.string().describe("Token to fetch the next page of data. The `maxResults` query string is related to the `pageToken` since `maxResults` determines how many entries are returned on each page. This is an optional query st").optional(),
|
|
68
68
|
fields: z.string().optional().describe('Response field mask.'),
|
|
@@ -77,9 +77,9 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
77
77
|
hasBody: false,
|
|
78
78
|
shape: {
|
|
79
79
|
account: accountField(),
|
|
80
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
81
|
-
skuId: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
82
|
-
customerId: z.string().describe("The customer's unique ID as defined in the Admin console, such as `C00000000`. If the customer is suspended, the server returns an error."),
|
|
80
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
81
|
+
skuId: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
82
|
+
customerId: z.string().min(1).describe("The customer's unique ID as defined in the Admin console, such as `C00000000`. If the customer is suspended, the server returns an error."),
|
|
83
83
|
maxResults: z.number().describe("The `maxResults` query string determines how many entries are returned on each page of a large response. This is an optional parameter. The value must be a positive number.").optional(),
|
|
84
84
|
pageToken: z.string().describe("Token to fetch the next page of data. The `maxResults` query string is related to the `pageToken` since `maxResults` determines how many entries are returned on each page. This is an optional query st").optional(),
|
|
85
85
|
fields: z.string().optional().describe('Response field mask.'),
|
|
@@ -92,12 +92,20 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
92
92
|
method: { id: "licensing.licenseAssignments.patch", httpMethod: "PATCH", path: "apps/licensing/v1/product/{productId}/sku/{skuId}/user/{userId}", baseUrl: "https://licensing.googleapis.com/", requiredParams: ["productId", "skuId", "userId"], scopes: S_licensing_v1[0] },
|
|
93
93
|
params: [{ "field": "productId", "api": "productId", "location": "path" }, { "field": "skuId", "api": "skuId", "location": "path" }, { "field": "userId", "api": "userId", "location": "path" }, { "field": "fields", "api": "fields", "location": "query" }],
|
|
94
94
|
hasBody: true,
|
|
95
|
+
bodyParams: [{ "field": "etags", "api": "etags" }, { "field": "kind", "api": "kind" }, { "field": "productId_", "api": "productId" }, { "field": "productName", "api": "productName" }, { "field": "selfLink", "api": "selfLink" }, { "field": "skuId_", "api": "skuId" }, { "field": "skuName", "api": "skuName" }, { "field": "userId_", "api": "userId" }],
|
|
95
96
|
shape: {
|
|
96
97
|
account: accountField(),
|
|
97
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
98
|
-
skuId: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
99
|
-
userId: z.string().describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
100
|
-
|
|
98
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
99
|
+
skuId: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
100
|
+
userId: z.string().min(1).describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
101
|
+
etags: z.string().describe("ETag of the resource.").optional(),
|
|
102
|
+
kind: z.string().describe("Identifies the resource as a LicenseAssignment, which is `licensing#licenseAssignment`.").optional(),
|
|
103
|
+
productId_: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Product and SKU IDs.").optional(),
|
|
104
|
+
productName: z.string().describe("Display Name of the product.").optional(),
|
|
105
|
+
selfLink: z.string().describe("Link to this page.").optional(),
|
|
106
|
+
skuId_: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs.").optional(),
|
|
107
|
+
skuName: z.string().describe("Display Name of the sku of the product.").optional(),
|
|
108
|
+
userId_: z.string().describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k").optional(),
|
|
101
109
|
fields: z.string().optional().describe('Response field mask.'),
|
|
102
110
|
},
|
|
103
111
|
});
|
|
@@ -108,12 +116,20 @@ export function registerLicensingGeneratedTools(registry) {
|
|
|
108
116
|
method: { id: "licensing.licenseAssignments.update", httpMethod: "PUT", path: "apps/licensing/v1/product/{productId}/sku/{skuId}/user/{userId}", baseUrl: "https://licensing.googleapis.com/", requiredParams: ["productId", "skuId", "userId"], scopes: S_licensing_v1[0] },
|
|
109
117
|
params: [{ "field": "productId", "api": "productId", "location": "path" }, { "field": "skuId", "api": "skuId", "location": "path" }, { "field": "userId", "api": "userId", "location": "path" }, { "field": "fields", "api": "fields", "location": "query" }],
|
|
110
118
|
hasBody: true,
|
|
119
|
+
bodyParams: [{ "field": "productId_", "api": "productId" }, { "field": "skuId_", "api": "skuId" }, { "field": "userId_", "api": "userId" }, { "field": "etags", "api": "etags" }, { "field": "kind", "api": "kind" }, { "field": "productName", "api": "productName" }, { "field": "selfLink", "api": "selfLink" }, { "field": "skuName", "api": "skuName" }],
|
|
111
120
|
shape: {
|
|
112
121
|
account: accountField(),
|
|
113
|
-
productId: z.string().describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
114
|
-
skuId: z.string().describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
115
|
-
userId: z.string().describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
116
|
-
|
|
122
|
+
productId: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Products and SKUs."),
|
|
123
|
+
skuId: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
124
|
+
userId: z.string().min(1).describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
125
|
+
productId_: z.string().min(1).describe("A product's unique identifier. For more information about products in this version of the API, see Product and SKU IDs."),
|
|
126
|
+
skuId_: z.string().min(1).describe("A product SKU's unique identifier. For more information about available SKUs in this version of the API, see Products and SKUs."),
|
|
127
|
+
userId_: z.string().min(1).describe("The user's current primary email address. If the user's email address changes, use the new email address in your API requests. Since a `userId` is subject to change, do not use a `userId` value as a k"),
|
|
128
|
+
etags: z.string().describe("ETag of the resource.").optional(),
|
|
129
|
+
kind: z.string().describe("Identifies the resource as a LicenseAssignment, which is `licensing#licenseAssignment`.").optional(),
|
|
130
|
+
productName: z.string().describe("Display Name of the product.").optional(),
|
|
131
|
+
selfLink: z.string().describe("Link to this page.").optional(),
|
|
132
|
+
skuName: z.string().describe("Display Name of the sku of the product.").optional(),
|
|
117
133
|
fields: z.string().optional().describe('Response field mask.'),
|
|
118
134
|
},
|
|
119
135
|
});
|
|
@@ -19,7 +19,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
19
19
|
hasBody: false,
|
|
20
20
|
shape: {
|
|
21
21
|
account: accountField(),
|
|
22
|
-
name: z.string().describe("Required. Resource name of the participant."),
|
|
22
|
+
name: z.string().min(1).describe("Required. Resource name of the participant."),
|
|
23
23
|
fields: z.string().optional().describe('Response field mask.'),
|
|
24
24
|
},
|
|
25
25
|
});
|
|
@@ -32,7 +32,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
32
32
|
hasBody: false,
|
|
33
33
|
shape: {
|
|
34
34
|
account: accountField(),
|
|
35
|
-
parent: z.string().describe("Required. Format: `conferenceRecords/{conference_record}`"),
|
|
35
|
+
parent: z.string().min(1).describe("Required. Format: `conferenceRecords/{conference_record}`"),
|
|
36
36
|
filter: z.string().describe("Optional. User specified filtering condition in [EBNF format](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form). The following are the filterable fields: * `earliest_start_time` * `late").optional(),
|
|
37
37
|
pageSize: z.number().describe("Maximum number of participants to return. The service might return fewer than this value. If unspecified, at most 100 participants are returned. The maximum value is 250; values above 250 are coerced ").optional(),
|
|
38
38
|
pageToken: z.string().describe("Page token returned from previous List Call.").optional(),
|
|
@@ -48,7 +48,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
48
48
|
hasBody: false,
|
|
49
49
|
shape: {
|
|
50
50
|
account: accountField(),
|
|
51
|
-
name: z.string().describe("Required. Resource name of the participant."),
|
|
51
|
+
name: z.string().min(1).describe("Required. Resource name of the participant."),
|
|
52
52
|
fields: z.string().optional().describe('Response field mask.'),
|
|
53
53
|
},
|
|
54
54
|
});
|
|
@@ -61,7 +61,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
61
61
|
hasBody: false,
|
|
62
62
|
shape: {
|
|
63
63
|
account: accountField(),
|
|
64
|
-
parent: z.string().describe("Required. Format: `conferenceRecords/{conference_record}/participants/{participant}`"),
|
|
64
|
+
parent: z.string().min(1).describe("Required. Format: `conferenceRecords/{conference_record}/participants/{participant}`"),
|
|
65
65
|
filter: z.string().describe("Optional. User specified filtering condition in [EBNF format](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form). The following are the filterable fields: * `start_time` * `end_time` For").optional(),
|
|
66
66
|
pageSize: z.number().describe("Optional. Maximum number of participant sessions to return. The service might return fewer than this value. If unspecified, at most 100 participants are returned. The maximum value is 250; values abov").optional(),
|
|
67
67
|
pageToken: z.string().describe("Optional. Page token returned from previous List Call.").optional(),
|
|
@@ -77,7 +77,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
77
77
|
hasBody: false,
|
|
78
78
|
shape: {
|
|
79
79
|
account: accountField(),
|
|
80
|
-
name: z.string().describe("Required. Resource name of the recording."),
|
|
80
|
+
name: z.string().min(1).describe("Required. Resource name of the recording."),
|
|
81
81
|
fields: z.string().optional().describe('Response field mask.'),
|
|
82
82
|
},
|
|
83
83
|
});
|
|
@@ -90,7 +90,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
90
90
|
hasBody: false,
|
|
91
91
|
shape: {
|
|
92
92
|
account: accountField(),
|
|
93
|
-
name: z.string().describe("Required. Resource name of the smart note. Format: conferenceRecords/{conference_record}/smartNotes/{smart_note}"),
|
|
93
|
+
name: z.string().min(1).describe("Required. Resource name of the smart note. Format: conferenceRecords/{conference_record}/smartNotes/{smart_note}"),
|
|
94
94
|
fields: z.string().optional().describe('Response field mask.'),
|
|
95
95
|
},
|
|
96
96
|
});
|
|
@@ -103,7 +103,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
103
103
|
hasBody: false,
|
|
104
104
|
shape: {
|
|
105
105
|
account: accountField(),
|
|
106
|
-
parent: z.string().describe("Required. Format: `conferenceRecords/{conference_record}`"),
|
|
106
|
+
parent: z.string().min(1).describe("Required. Format: `conferenceRecords/{conference_record}`"),
|
|
107
107
|
pageSize: z.number().describe("Optional. Maximum number of smart notes to return. The service might return fewer than this value. If unspecified, at most 10 smart notes are returned. The maximum value is 100; values above 100 are c").optional(),
|
|
108
108
|
pageToken: z.string().describe("Optional. Page token returned from previous List Call.").optional(),
|
|
109
109
|
fields: z.string().optional().describe('Response field mask.'),
|
|
@@ -118,7 +118,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
118
118
|
hasBody: false,
|
|
119
119
|
shape: {
|
|
120
120
|
account: accountField(),
|
|
121
|
-
name: z.string().describe("Required. Resource name of the `TranscriptEntry`."),
|
|
121
|
+
name: z.string().min(1).describe("Required. Resource name of the `TranscriptEntry`."),
|
|
122
122
|
fields: z.string().optional().describe('Response field mask.'),
|
|
123
123
|
},
|
|
124
124
|
});
|
|
@@ -131,7 +131,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
131
131
|
hasBody: false,
|
|
132
132
|
shape: {
|
|
133
133
|
account: accountField(),
|
|
134
|
-
name: z.string().describe("Required. Resource name of the transcript."),
|
|
134
|
+
name: z.string().min(1).describe("Required. Resource name of the transcript."),
|
|
135
135
|
fields: z.string().optional().describe('Response field mask.'),
|
|
136
136
|
},
|
|
137
137
|
});
|
|
@@ -150,15 +150,15 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
150
150
|
});
|
|
151
151
|
registerGeneratedTool(registry, {
|
|
152
152
|
name: "meet_spaces_end_active_conference",
|
|
153
|
-
cud: "
|
|
153
|
+
cud: "delete",
|
|
154
154
|
description: "Ends an active conference (if there's one). For an example, see [End active conference](https://developers.google.com/workspace/meet/api/guides/meeting-spaces#e",
|
|
155
155
|
method: { id: "meet.spaces.endActiveConference", httpMethod: "POST", path: "v2/{+name}:endActiveConference", baseUrl: "https://meet.googleapis.com/", requiredParams: ["name"], scopes: S_meet_v2[1] },
|
|
156
156
|
params: [{ "field": "name", "api": "name", "location": "path" }, { "field": "fields", "api": "fields", "location": "query" }],
|
|
157
157
|
hasBody: true,
|
|
158
|
+
bodyParams: [],
|
|
158
159
|
shape: {
|
|
159
160
|
account: accountField(),
|
|
160
|
-
name: z.string().describe("Required. Resource name of the space. Format: `spaces/{space}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z"),
|
|
161
|
-
body: coerceJson(z.record(z.string(), z.unknown())).describe("EndActiveConferenceRequest JSON request body."),
|
|
161
|
+
name: z.string().min(1).describe("Required. Resource name of the space. Format: `spaces/{space}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z"),
|
|
162
162
|
fields: z.string().optional().describe('Response field mask.'),
|
|
163
163
|
},
|
|
164
164
|
});
|
|
@@ -171,7 +171,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
171
171
|
hasBody: false,
|
|
172
172
|
shape: {
|
|
173
173
|
account: accountField(),
|
|
174
|
-
name: z.string().describe("Required. Resource name of the space. Format: `spaces/{space}` or `spaces/{meetingCode}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. "),
|
|
174
|
+
name: z.string().min(1).describe("Required. Resource name of the space. Format: `spaces/{space}` or `spaces/{meetingCode}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. "),
|
|
175
175
|
fields: z.string().optional().describe('Response field mask.'),
|
|
176
176
|
},
|
|
177
177
|
});
|
|
@@ -184,7 +184,7 @@ export function registerMeetGeneratedTools(registry) {
|
|
|
184
184
|
hasBody: true,
|
|
185
185
|
shape: {
|
|
186
186
|
account: accountField(),
|
|
187
|
-
name: z.string().describe("Immutable. Resource name of the space. Format: `spaces/{space}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5"),
|
|
187
|
+
name: z.string().min(1).describe("Immutable. Resource name of the space. Format: `spaces/{space}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5"),
|
|
188
188
|
updateMask: z.string().describe("Optional. Field mask used to specify the fields to be updated in the space. If update_mask isn't provided(not set, set with empty paths, or only has \"\" as paths), it defaults to update all fields prov").optional(),
|
|
189
189
|
body: coerceJson(z.record(z.string(), z.unknown())).describe("Space JSON request body. Top-level fields: activeConference, config, gatewaySipAccess, meetingCode, meetingUri, name, phoneAccess."),
|
|
190
190
|
fields: z.string().optional().describe('Response field mask.'),
|