@opentabs-dev/opentabs-plugin-netlify 0.0.74

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.
Files changed (177) hide show
  1. package/README.md +159 -0
  2. package/dist/adapter.iife.js +15736 -0
  3. package/dist/adapter.iife.js.map +7 -0
  4. package/dist/index.d.ts +13 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +119 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/netlify-api.d.ts +10 -0
  9. package/dist/netlify-api.d.ts.map +1 -0
  10. package/dist/netlify-api.js +34 -0
  11. package/dist/netlify-api.js.map +1 -0
  12. package/dist/tools/create-build-hook.d.ts +14 -0
  13. package/dist/tools/create-build-hook.d.ts.map +1 -0
  14. package/dist/tools/create-build-hook.js +26 -0
  15. package/dist/tools/create-build-hook.js.map +1 -0
  16. package/dist/tools/create-build.d.ts +12 -0
  17. package/dist/tools/create-build.d.ts.map +1 -0
  18. package/dist/tools/create-build.js +23 -0
  19. package/dist/tools/create-build.js.map +1 -0
  20. package/dist/tools/create-deploy-key.d.ts +7 -0
  21. package/dist/tools/create-deploy-key.d.ts.map +1 -0
  22. package/dist/tools/create-deploy-key.js +19 -0
  23. package/dist/tools/create-deploy-key.js.map +1 -0
  24. package/dist/tools/create-dns-record.d.ts +20 -0
  25. package/dist/tools/create-dns-record.d.ts.map +1 -0
  26. package/dist/tools/create-dns-record.js +38 -0
  27. package/dist/tools/create-dns-record.js.map +1 -0
  28. package/dist/tools/create-dns-zone.d.ts +16 -0
  29. package/dist/tools/create-dns-zone.d.ts.map +1 -0
  30. package/dist/tools/create-dns-zone.js +32 -0
  31. package/dist/tools/create-dns-zone.js.map +1 -0
  32. package/dist/tools/create-env-vars.d.ts +28 -0
  33. package/dist/tools/create-env-vars.d.ts.map +1 -0
  34. package/dist/tools/create-env-vars.js +42 -0
  35. package/dist/tools/create-env-vars.js.map +1 -0
  36. package/dist/tools/create-site.d.ts +30 -0
  37. package/dist/tools/create-site.d.ts.map +1 -0
  38. package/dist/tools/create-site.js +25 -0
  39. package/dist/tools/create-site.js.map +1 -0
  40. package/dist/tools/delete-build-hook.d.ts +8 -0
  41. package/dist/tools/delete-build-hook.d.ts.map +1 -0
  42. package/dist/tools/delete-build-hook.js +25 -0
  43. package/dist/tools/delete-build-hook.js.map +1 -0
  44. package/dist/tools/delete-dns-record.d.ts +8 -0
  45. package/dist/tools/delete-dns-record.d.ts.map +1 -0
  46. package/dist/tools/delete-dns-record.js +25 -0
  47. package/dist/tools/delete-dns-record.js.map +1 -0
  48. package/dist/tools/delete-env-var.d.ts +9 -0
  49. package/dist/tools/delete-env-var.d.ts.map +1 -0
  50. package/dist/tools/delete-env-var.js +27 -0
  51. package/dist/tools/delete-env-var.js.map +1 -0
  52. package/dist/tools/delete-hook.d.ts +7 -0
  53. package/dist/tools/delete-hook.d.ts.map +1 -0
  54. package/dist/tools/delete-hook.js +22 -0
  55. package/dist/tools/delete-hook.js.map +1 -0
  56. package/dist/tools/delete-site.d.ts +7 -0
  57. package/dist/tools/delete-site.d.ts.map +1 -0
  58. package/dist/tools/delete-site.js +22 -0
  59. package/dist/tools/delete-site.js.map +1 -0
  60. package/dist/tools/delete-submission.d.ts +7 -0
  61. package/dist/tools/delete-submission.d.ts.map +1 -0
  62. package/dist/tools/delete-submission.js +22 -0
  63. package/dist/tools/delete-submission.js.map +1 -0
  64. package/dist/tools/get-account.d.ts +20 -0
  65. package/dist/tools/get-account.d.ts.map +1 -0
  66. package/dist/tools/get-account.js +21 -0
  67. package/dist/tools/get-account.js.map +1 -0
  68. package/dist/tools/get-current-user.d.ts +13 -0
  69. package/dist/tools/get-current-user.d.ts.map +1 -0
  70. package/dist/tools/get-current-user.js +19 -0
  71. package/dist/tools/get-current-user.js.map +1 -0
  72. package/dist/tools/get-deploy.d.ts +27 -0
  73. package/dist/tools/get-deploy.d.ts.map +1 -0
  74. package/dist/tools/get-deploy.js +21 -0
  75. package/dist/tools/get-deploy.js.map +1 -0
  76. package/dist/tools/get-dns-zone.d.ts +14 -0
  77. package/dist/tools/get-dns-zone.d.ts.map +1 -0
  78. package/dist/tools/get-dns-zone.js +21 -0
  79. package/dist/tools/get-dns-zone.js.map +1 -0
  80. package/dist/tools/get-env-var.d.ts +18 -0
  81. package/dist/tools/get-env-var.d.ts.map +1 -0
  82. package/dist/tools/get-env-var.js +25 -0
  83. package/dist/tools/get-env-var.js.map +1 -0
  84. package/dist/tools/get-member.d.ts +14 -0
  85. package/dist/tools/get-member.d.ts.map +1 -0
  86. package/dist/tools/get-member.js +22 -0
  87. package/dist/tools/get-member.js.map +1 -0
  88. package/dist/tools/get-site.d.ts +29 -0
  89. package/dist/tools/get-site.d.ts.map +1 -0
  90. package/dist/tools/get-site.js +21 -0
  91. package/dist/tools/get-site.js.map +1 -0
  92. package/dist/tools/list-accounts.d.ts +20 -0
  93. package/dist/tools/list-accounts.d.ts.map +1 -0
  94. package/dist/tools/list-accounts.js +21 -0
  95. package/dist/tools/list-accounts.js.map +1 -0
  96. package/dist/tools/list-audit-events.d.ts +19 -0
  97. package/dist/tools/list-audit-events.d.ts.map +1 -0
  98. package/dist/tools/list-audit-events.js +32 -0
  99. package/dist/tools/list-audit-events.js.map +1 -0
  100. package/dist/tools/list-build-hooks.d.ts +14 -0
  101. package/dist/tools/list-build-hooks.d.ts.map +1 -0
  102. package/dist/tools/list-build-hooks.js +23 -0
  103. package/dist/tools/list-build-hooks.js.map +1 -0
  104. package/dist/tools/list-builds.d.ts +16 -0
  105. package/dist/tools/list-builds.d.ts.map +1 -0
  106. package/dist/tools/list-builds.js +30 -0
  107. package/dist/tools/list-builds.js.map +1 -0
  108. package/dist/tools/list-deploy-keys.d.ts +9 -0
  109. package/dist/tools/list-deploy-keys.d.ts.map +1 -0
  110. package/dist/tools/list-deploy-keys.js +21 -0
  111. package/dist/tools/list-deploy-keys.js.map +1 -0
  112. package/dist/tools/list-deploys.d.ts +31 -0
  113. package/dist/tools/list-deploys.d.ts.map +1 -0
  114. package/dist/tools/list-deploys.js +30 -0
  115. package/dist/tools/list-deploys.js.map +1 -0
  116. package/dist/tools/list-dns-records.d.ts +17 -0
  117. package/dist/tools/list-dns-records.d.ts.map +1 -0
  118. package/dist/tools/list-dns-records.js +23 -0
  119. package/dist/tools/list-dns-records.js.map +1 -0
  120. package/dist/tools/list-dns-zones.d.ts +16 -0
  121. package/dist/tools/list-dns-zones.d.ts.map +1 -0
  122. package/dist/tools/list-dns-zones.js +25 -0
  123. package/dist/tools/list-dns-zones.js.map +1 -0
  124. package/dist/tools/list-env-vars.d.ts +19 -0
  125. package/dist/tools/list-env-vars.d.ts.map +1 -0
  126. package/dist/tools/list-env-vars.js +26 -0
  127. package/dist/tools/list-env-vars.js.map +1 -0
  128. package/dist/tools/list-form-submissions.d.ts +18 -0
  129. package/dist/tools/list-form-submissions.d.ts.map +1 -0
  130. package/dist/tools/list-form-submissions.js +30 -0
  131. package/dist/tools/list-form-submissions.js.map +1 -0
  132. package/dist/tools/list-forms.d.ts +15 -0
  133. package/dist/tools/list-forms.d.ts.map +1 -0
  134. package/dist/tools/list-forms.js +23 -0
  135. package/dist/tools/list-forms.js.map +1 -0
  136. package/dist/tools/list-hooks.d.ts +16 -0
  137. package/dist/tools/list-hooks.d.ts.map +1 -0
  138. package/dist/tools/list-hooks.js +25 -0
  139. package/dist/tools/list-hooks.js.map +1 -0
  140. package/dist/tools/list-members.d.ts +15 -0
  141. package/dist/tools/list-members.d.ts.map +1 -0
  142. package/dist/tools/list-members.js +23 -0
  143. package/dist/tools/list-members.js.map +1 -0
  144. package/dist/tools/list-sites.d.ts +34 -0
  145. package/dist/tools/list-sites.d.ts.map +1 -0
  146. package/dist/tools/list-sites.js +32 -0
  147. package/dist/tools/list-sites.js.map +1 -0
  148. package/dist/tools/lock-deploy.d.ts +27 -0
  149. package/dist/tools/lock-deploy.d.ts.map +1 -0
  150. package/dist/tools/lock-deploy.js +23 -0
  151. package/dist/tools/lock-deploy.js.map +1 -0
  152. package/dist/tools/restore-deploy.d.ts +28 -0
  153. package/dist/tools/restore-deploy.d.ts.map +1 -0
  154. package/dist/tools/restore-deploy.js +24 -0
  155. package/dist/tools/restore-deploy.js.map +1 -0
  156. package/dist/tools/rollback-deploy.d.ts +29 -0
  157. package/dist/tools/rollback-deploy.d.ts.map +1 -0
  158. package/dist/tools/rollback-deploy.js +23 -0
  159. package/dist/tools/rollback-deploy.js.map +1 -0
  160. package/dist/tools/schemas.d.ts +558 -0
  161. package/dist/tools/schemas.d.ts.map +1 -0
  162. package/dist/tools/schemas.js +376 -0
  163. package/dist/tools/schemas.js.map +1 -0
  164. package/dist/tools/unlock-deploy.d.ts +27 -0
  165. package/dist/tools/unlock-deploy.d.ts.map +1 -0
  166. package/dist/tools/unlock-deploy.js +23 -0
  167. package/dist/tools/unlock-deploy.js.map +1 -0
  168. package/dist/tools/update-env-var.d.ts +25 -0
  169. package/dist/tools/update-env-var.d.ts.map +1 -0
  170. package/dist/tools/update-env-var.js +43 -0
  171. package/dist/tools/update-env-var.js.map +1 -0
  172. package/dist/tools/update-site.d.ts +34 -0
  173. package/dist/tools/update-site.d.ts.map +1 -0
  174. package/dist/tools/update-site.js +42 -0
  175. package/dist/tools/update-site.js.map +1 -0
  176. package/dist/tools.json +3751 -0
  177. package/package.json +55 -0
@@ -0,0 +1,25 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ export const deleteBuildHook = defineTool({
5
+ name: 'delete_build_hook',
6
+ displayName: 'Delete Build Hook',
7
+ description: 'Delete a build hook from a Netlify site by its ID. The hook URL will no longer trigger builds. This action cannot be undone.',
8
+ summary: 'Delete a build hook',
9
+ icon: 'trash-2',
10
+ group: 'Hooks',
11
+ input: z.object({
12
+ site_id: z.string().describe('The site ID the build hook belongs to'),
13
+ hook_id: z.string().describe('The build hook ID to delete'),
14
+ }),
15
+ output: z.object({
16
+ success: z.boolean().describe('Whether the operation succeeded'),
17
+ }),
18
+ handle: async (params) => {
19
+ await api(`/sites/${params.site_id}/build_hooks/${params.hook_id}`, {
20
+ method: 'DELETE',
21
+ });
22
+ return { success: true };
23
+ },
24
+ });
25
+ //# sourceMappingURL=delete-build-hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-build-hook.js","sourceRoot":"","sources":["../../src/tools/delete-build-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACxC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mBAAmB;IAChC,WAAW,EACT,8HAA8H;IAChI,OAAO,EAAE,qBAAqB;IAC9B,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;QACrE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KAC5D,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;KACjE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,CAAC,UAAU,MAAM,CAAC,OAAO,gBAAgB,MAAM,CAAC,OAAO,EAAE,EAAE;YAClE,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ export declare const deleteDnsRecord: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ zone_id: z.ZodString;
4
+ record_id: z.ZodString;
5
+ }, z.core.$strip>, z.ZodObject<{
6
+ success: z.ZodBoolean;
7
+ }, z.core.$strip>>;
8
+ //# sourceMappingURL=delete-dns-record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-dns-record.d.ts","sourceRoot":"","sources":["../../src/tools/delete-dns-record.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,eAAe;;;;;kBAoB1B,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ export const deleteDnsRecord = defineTool({
5
+ name: 'delete_dns_record',
6
+ displayName: 'Delete DNS Record',
7
+ description: 'Delete a DNS record from a Netlify DNS zone. This action cannot be undone.',
8
+ summary: 'Delete a DNS record',
9
+ icon: 'trash-2',
10
+ group: 'DNS',
11
+ input: z.object({
12
+ zone_id: z.string().describe('The DNS zone ID the record belongs to'),
13
+ record_id: z.string().describe('The DNS record ID to delete'),
14
+ }),
15
+ output: z.object({
16
+ success: z.boolean().describe('Whether the operation succeeded'),
17
+ }),
18
+ handle: async (params) => {
19
+ await api(`/dns_zones/${params.zone_id}/dns_records/${params.record_id}`, {
20
+ method: 'DELETE',
21
+ });
22
+ return { success: true };
23
+ },
24
+ });
25
+ //# sourceMappingURL=delete-dns-record.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-dns-record.js","sourceRoot":"","sources":["../../src/tools/delete-dns-record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACxC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mBAAmB;IAChC,WAAW,EAAE,4EAA4E;IACzF,OAAO,EAAE,qBAAqB;IAC9B,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;QACrE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KAC9D,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;KACjE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,gBAAgB,MAAM,CAAC,SAAS,EAAE,EAAE;YACxE,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from 'zod';
2
+ export declare const deleteEnvVar: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ account_id: z.ZodString;
4
+ key: z.ZodString;
5
+ site_id: z.ZodOptional<z.ZodString>;
6
+ }, z.core.$strip>, z.ZodObject<{
7
+ success: z.ZodBoolean;
8
+ }, z.core.$strip>>;
9
+ //# sourceMappingURL=delete-env-var.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-env-var.d.ts","sourceRoot":"","sources":["../../src/tools/delete-env-var.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,YAAY;;;;;;kBAuBvB,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ export const deleteEnvVar = defineTool({
5
+ name: 'delete_env_var',
6
+ displayName: 'Delete Environment Variable',
7
+ description: 'Delete an environment variable from a Netlify account by its key name. Optionally scope to a specific site. This action cannot be undone.',
8
+ summary: 'Delete an environment variable',
9
+ icon: 'trash-2',
10
+ group: 'Environment',
11
+ input: z.object({
12
+ account_id: z.string().describe('The account ID the variable belongs to'),
13
+ key: z.string().describe('The environment variable key name to delete'),
14
+ site_id: z.string().optional().describe('Optional site ID to scope to a specific site'),
15
+ }),
16
+ output: z.object({
17
+ success: z.boolean().describe('Whether the operation succeeded'),
18
+ }),
19
+ handle: async (params) => {
20
+ await api(`/accounts/${params.account_id}/env/${encodeURIComponent(params.key)}`, {
21
+ method: 'DELETE',
22
+ query: { site_id: params.site_id },
23
+ });
24
+ return { success: true };
25
+ },
26
+ });
27
+ //# sourceMappingURL=delete-env-var.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-env-var.js","sourceRoot":"","sources":["../../src/tools/delete-env-var.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;IACrC,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,6BAA6B;IAC1C,WAAW,EACT,2IAA2I;IAC7I,OAAO,EAAE,gCAAgC;IACzC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,aAAa;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QACzE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACvE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;KACxF,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;KACjE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,CAAC,aAAa,MAAM,CAAC,UAAU,QAAQ,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE;YAChF,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;SACnC,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const deleteHook: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ hook_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ success: z.ZodBoolean;
6
+ }, z.core.$strip>>;
7
+ //# sourceMappingURL=delete-hook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-hook.d.ts","sourceRoot":"","sources":["../../src/tools/delete-hook.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,UAAU;;;;kBAiBrB,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ export const deleteHook = defineTool({
5
+ name: 'delete_hook',
6
+ displayName: 'Delete Hook',
7
+ description: 'Delete a notification hook (outgoing webhook) by its ID. This action cannot be undone.',
8
+ summary: 'Delete a notification hook',
9
+ icon: 'trash-2',
10
+ group: 'Hooks',
11
+ input: z.object({
12
+ hook_id: z.string().describe('The hook ID to delete'),
13
+ }),
14
+ output: z.object({
15
+ success: z.boolean().describe('Whether the operation succeeded'),
16
+ }),
17
+ handle: async (params) => {
18
+ await api(`/hooks/${params.hook_id}`, { method: 'DELETE' });
19
+ return { success: true };
20
+ },
21
+ });
22
+ //# sourceMappingURL=delete-hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-hook.js","sourceRoot":"","sources":["../../src/tools/delete-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,wFAAwF;IACrG,OAAO,EAAE,4BAA4B;IACrC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;KACtD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;KACjE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,CAAC,UAAU,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const deleteSite: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ site_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ success: z.ZodBoolean;
6
+ }, z.core.$strip>>;
7
+ //# sourceMappingURL=delete-site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-site.d.ts","sourceRoot":"","sources":["../../src/tools/delete-site.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,UAAU;;;;kBAkBrB,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ export const deleteSite = defineTool({
5
+ name: 'delete_site',
6
+ displayName: 'Delete Site',
7
+ description: 'Permanently delete a Netlify site by its ID. This removes the site, all deploys, and associated configuration. This action cannot be undone.',
8
+ summary: 'Delete a site permanently',
9
+ icon: 'trash-2',
10
+ group: 'Sites',
11
+ input: z.object({
12
+ site_id: z.string().describe('The site ID to delete'),
13
+ }),
14
+ output: z.object({
15
+ success: z.boolean().describe('Whether the operation succeeded'),
16
+ }),
17
+ handle: async (params) => {
18
+ await api(`/sites/${params.site_id}`, { method: 'DELETE' });
19
+ return { success: true };
20
+ },
21
+ });
22
+ //# sourceMappingURL=delete-site.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-site.js","sourceRoot":"","sources":["../../src/tools/delete-site.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,aAAa;IAC1B,WAAW,EACT,8IAA8I;IAChJ,OAAO,EAAE,2BAA2B;IACpC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;KACtD,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;KACjE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,CAAC,UAAU,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const deleteSubmission: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ submission_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ success: z.ZodBoolean;
6
+ }, z.core.$strip>>;
7
+ //# sourceMappingURL=delete-submission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-submission.d.ts","sourceRoot":"","sources":["../../src/tools/delete-submission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,gBAAgB;;;;kBAkB3B,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ export const deleteSubmission = defineTool({
5
+ name: 'delete_submission',
6
+ displayName: 'Delete Submission',
7
+ description: 'Delete a form submission by its ID. This permanently removes the submission data. This action cannot be undone.',
8
+ summary: 'Delete a form submission',
9
+ icon: 'trash-2',
10
+ group: 'Forms',
11
+ input: z.object({
12
+ submission_id: z.string().describe('The submission ID to delete'),
13
+ }),
14
+ output: z.object({
15
+ success: z.boolean().describe('Whether the operation succeeded'),
16
+ }),
17
+ handle: async (params) => {
18
+ await api(`/submissions/${params.submission_id}`, { method: 'DELETE' });
19
+ return { success: true };
20
+ },
21
+ });
22
+ //# sourceMappingURL=delete-submission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-submission.js","sourceRoot":"","sources":["../../src/tools/delete-submission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mBAAmB;IAChC,WAAW,EACT,iHAAiH;IACnH,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KAClE,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;KACjE,CAAC;IACF,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,CAAC,gBAAgB,MAAM,CAAC,aAAa,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ export declare const getAccount: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ account_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ id: z.ZodString;
6
+ name: z.ZodString;
7
+ slug: z.ZodString;
8
+ type: z.ZodString;
9
+ type_name: z.ZodString;
10
+ capabilities_sites_included: z.ZodNumber;
11
+ capabilities_sites_used: z.ZodNumber;
12
+ capabilities_collaborators_included: z.ZodNumber;
13
+ capabilities_collaborators_used: z.ZodNumber;
14
+ billing_name: z.ZodString;
15
+ billing_email: z.ZodString;
16
+ owner_ids: z.ZodArray<z.ZodString>;
17
+ created_at: z.ZodString;
18
+ updated_at: z.ZodString;
19
+ }, z.core.$strip>>;
20
+ //# sourceMappingURL=get-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-account.d.ts","sourceRoot":"","sources":["../../src/tools/get-account.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;kBAgBrB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { accountSchema, mapAccount } from './schemas.js';
5
+ export const getAccount = defineTool({
6
+ name: 'get_account',
7
+ displayName: 'Get Account',
8
+ description: 'Get detailed information about a specific Netlify account (team) by its ID. Returns name, slug, plan capabilities, billing info, and owner IDs.',
9
+ summary: 'Get account details by ID',
10
+ icon: 'building',
11
+ group: 'Account',
12
+ input: z.object({
13
+ account_id: z.string().describe('The account ID to retrieve'),
14
+ }),
15
+ output: accountSchema,
16
+ handle: async (params) => {
17
+ const raw = await api(`/accounts/${params.account_id}`);
18
+ return mapAccount(raw);
19
+ },
20
+ });
21
+ //# sourceMappingURL=get-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-account.js","sourceRoot":"","sources":["../../src/tools/get-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAmB,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,aAAa;IAC1B,WAAW,EACT,iJAAiJ;IACnJ,OAAO,EAAE,2BAA2B;IACpC,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;KAC9D,CAAC;IACF,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAa,aAAa,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QACpE,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+ export declare const getCurrentUser: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
3
+ id: z.ZodString;
4
+ full_name: z.ZodString;
5
+ email: z.ZodString;
6
+ avatar_url: z.ZodString;
7
+ site_count: z.ZodNumber;
8
+ created_at: z.ZodString;
9
+ last_login: z.ZodString;
10
+ login_providers: z.ZodArray<z.ZodString>;
11
+ mfa_enabled: z.ZodBoolean;
12
+ }, z.core.$strip>>;
13
+ //# sourceMappingURL=get-current-user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.d.ts","sourceRoot":"","sources":["../../src/tools/get-current-user.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,cAAc;;;;;;;;;;kBAczB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { userSchema, mapUser } from './schemas.js';
5
+ export const getCurrentUser = defineTool({
6
+ name: 'get_current_user',
7
+ displayName: 'Get Current User',
8
+ description: 'Get the profile of the currently authenticated Netlify user including name, email, site count, MFA status, and login providers.',
9
+ summary: 'Get authenticated user profile',
10
+ icon: 'user',
11
+ group: 'Account',
12
+ input: z.object({}),
13
+ output: userSchema,
14
+ handle: async () => {
15
+ const raw = await api('/user');
16
+ return mapUser(raw);
17
+ },
18
+ });
19
+ //# sourceMappingURL=get-current-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.js","sourceRoot":"","sources":["../../src/tools/get-current-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAgB,OAAO,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACvC,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EACT,iIAAiI;IACnI,OAAO,EAAE,gCAAgC;IACzC,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,KAAK,IAAI,EAAE;QACjB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAU,OAAO,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ export declare const getDeploy: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ deploy_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ id: z.ZodString;
6
+ site_id: z.ZodString;
7
+ state: z.ZodString;
8
+ name: z.ZodString;
9
+ url: z.ZodString;
10
+ ssl_url: z.ZodString;
11
+ deploy_url: z.ZodString;
12
+ deploy_ssl_url: z.ZodString;
13
+ branch: z.ZodString;
14
+ commit_ref: z.ZodString;
15
+ commit_url: z.ZodString;
16
+ title: z.ZodString;
17
+ context: z.ZodString;
18
+ framework: z.ZodString;
19
+ error_message: z.ZodString;
20
+ created_at: z.ZodString;
21
+ updated_at: z.ZodString;
22
+ published_at: z.ZodString;
23
+ locked: z.ZodBoolean;
24
+ draft: z.ZodBoolean;
25
+ skipped: z.ZodBoolean;
26
+ }, z.core.$strip>>;
27
+ //# sourceMappingURL=get-deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-deploy.d.ts","sourceRoot":"","sources":["../../src/tools/get-deploy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;kBAgBpB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { deploySchema, mapDeploy } from './schemas.js';
5
+ export const getDeploy = defineTool({
6
+ name: 'get_deploy',
7
+ displayName: 'Get Deploy',
8
+ description: 'Get detailed information about a specific Netlify deploy by its ID. Returns state, URLs, branch, commit, context, framework, error message, and lock status.',
9
+ summary: 'Get deploy details by ID',
10
+ icon: 'rocket',
11
+ group: 'Deploys',
12
+ input: z.object({
13
+ deploy_id: z.string().describe('The deploy ID to retrieve'),
14
+ }),
15
+ output: deploySchema,
16
+ handle: async (params) => {
17
+ const raw = await api(`/deploys/${params.deploy_id}`);
18
+ return mapDeploy(raw);
19
+ },
20
+ });
21
+ //# sourceMappingURL=get-deploy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-deploy.js","sourceRoot":"","sources":["../../src/tools/get-deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAkB,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,YAAY;IACzB,WAAW,EACT,8JAA8J;IAChK,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;KAC5D,CAAC;IACF,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAY,YAAY,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QACjE,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export declare const getDnsZone: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ zone_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ id: z.ZodString;
6
+ name: z.ZodString;
7
+ account_slug: z.ZodString;
8
+ site_id: z.ZodString;
9
+ created_at: z.ZodString;
10
+ updated_at: z.ZodString;
11
+ records_count: z.ZodNumber;
12
+ dedicated: z.ZodBoolean;
13
+ }, z.core.$strip>>;
14
+ //# sourceMappingURL=get-dns-zone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-dns-zone.d.ts","sourceRoot":"","sources":["../../src/tools/get-dns-zone.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;;;;;;;;;kBAgBrB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { dnsZoneSchema, mapDnsZone } from './schemas.js';
5
+ export const getDnsZone = defineTool({
6
+ name: 'get_dns_zone',
7
+ displayName: 'Get DNS Zone',
8
+ description: 'Get detailed information about a specific DNS zone by its ID. Returns the zone name, record count, associated site, and timestamps.',
9
+ summary: 'Get DNS zone details by ID',
10
+ icon: 'globe',
11
+ group: 'DNS',
12
+ input: z.object({
13
+ zone_id: z.string().describe('The DNS zone ID to retrieve'),
14
+ }),
15
+ output: dnsZoneSchema,
16
+ handle: async (params) => {
17
+ const raw = await api(`/dns_zones/${params.zone_id}`);
18
+ return mapDnsZone(raw);
19
+ },
20
+ });
21
+ //# sourceMappingURL=get-dns-zone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-dns-zone.js","sourceRoot":"","sources":["../../src/tools/get-dns-zone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAmB,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,cAAc;IAC3B,WAAW,EACT,qIAAqI;IACvI,OAAO,EAAE,4BAA4B;IACrC,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KAC5D,CAAC;IACF,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAa,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAClE,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ export declare const getEnvVar: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ account_id: z.ZodString;
4
+ key: z.ZodString;
5
+ site_id: z.ZodOptional<z.ZodString>;
6
+ }, z.core.$strip>, z.ZodObject<{
7
+ key: z.ZodString;
8
+ scopes: z.ZodArray<z.ZodString>;
9
+ values: z.ZodArray<z.ZodObject<{
10
+ id: z.ZodString;
11
+ value: z.ZodString;
12
+ context: z.ZodString;
13
+ context_parameter: z.ZodString;
14
+ }, z.core.$strip>>;
15
+ is_secret: z.ZodBoolean;
16
+ updated_at: z.ZodString;
17
+ }, z.core.$strip>>;
18
+ //# sourceMappingURL=get-env-var.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-env-var.d.ts","sourceRoot":"","sources":["../../src/tools/get-env-var.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;kBAoBpB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { envVarSchema, mapEnvVar } from './schemas.js';
5
+ export const getEnvVar = defineTool({
6
+ name: 'get_env_var',
7
+ displayName: 'Get Environment Variable',
8
+ description: 'Get a specific environment variable by key for a Netlify account. Optionally scope to a specific site. Returns the variable name, scopes, context-specific values, and secret status.',
9
+ summary: 'Get environment variable by key',
10
+ icon: 'file-text',
11
+ group: 'Environment',
12
+ input: z.object({
13
+ account_id: z.string().describe('The account ID the variable belongs to'),
14
+ key: z.string().describe('The environment variable key name'),
15
+ site_id: z.string().optional().describe('Optional site ID to scope to a specific site'),
16
+ }),
17
+ output: envVarSchema,
18
+ handle: async (params) => {
19
+ const raw = await api(`/accounts/${params.account_id}/env/${encodeURIComponent(params.key)}`, {
20
+ query: { site_id: params.site_id },
21
+ });
22
+ return mapEnvVar(raw);
23
+ },
24
+ });
25
+ //# sourceMappingURL=get-env-var.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-env-var.js","sourceRoot":"","sources":["../../src/tools/get-env-var.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAkB,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,0BAA0B;IACvC,WAAW,EACT,uLAAuL;IACzL,OAAO,EAAE,iCAAiC;IAC1C,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,aAAa;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QACzE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;KACxF,CAAC;IACF,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAY,aAAa,MAAM,CAAC,UAAU,QAAQ,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE;YACvG,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;SACnC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export declare const getMember: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ account_slug: z.ZodString;
4
+ member_id: z.ZodString;
5
+ }, z.core.$strip>, z.ZodObject<{
6
+ id: z.ZodString;
7
+ full_name: z.ZodString;
8
+ email: z.ZodString;
9
+ avatar: z.ZodString;
10
+ role: z.ZodString;
11
+ pending: z.ZodBoolean;
12
+ mfa_enabled: z.ZodBoolean;
13
+ }, z.core.$strip>>;
14
+ //# sourceMappingURL=get-member.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-member.d.ts","sourceRoot":"","sources":["../../src/tools/get-member.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;;;;;;;;kBAiBpB,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { memberSchema, mapMember } from './schemas.js';
5
+ export const getMember = defineTool({
6
+ name: 'get_member',
7
+ displayName: 'Get Member',
8
+ description: 'Get detailed information about a specific team member in a Netlify account by their member ID. Returns name, email, role, pending status, and MFA status.',
9
+ summary: 'Get member details by ID',
10
+ icon: 'user',
11
+ group: 'Members',
12
+ input: z.object({
13
+ account_slug: z.string().describe('The account slug the member belongs to'),
14
+ member_id: z.string().describe('The member ID to retrieve'),
15
+ }),
16
+ output: memberSchema,
17
+ handle: async (params) => {
18
+ const raw = await api(`/${params.account_slug}/members/${params.member_id}`);
19
+ return mapMember(raw);
20
+ },
21
+ });
22
+ //# sourceMappingURL=get-member.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-member.js","sourceRoot":"","sources":["../../src/tools/get-member.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAkB,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;IAClC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,YAAY;IACzB,WAAW,EACT,2JAA2J;IAC7J,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QAC3E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;KAC5D,CAAC;IACF,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAY,IAAI,MAAM,CAAC,YAAY,YAAY,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QACxF,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from 'zod';
2
+ export declare const getSite: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ site_id: z.ZodString;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ id: z.ZodString;
6
+ name: z.ZodString;
7
+ state: z.ZodString;
8
+ url: z.ZodString;
9
+ ssl_url: z.ZodString;
10
+ admin_url: z.ZodString;
11
+ deploy_url: z.ZodString;
12
+ screenshot_url: z.ZodString;
13
+ custom_domain: z.ZodString;
14
+ domain_aliases: z.ZodArray<z.ZodString>;
15
+ created_at: z.ZodString;
16
+ updated_at: z.ZodString;
17
+ account_name: z.ZodString;
18
+ account_slug: z.ZodString;
19
+ git_provider: z.ZodString;
20
+ ssl: z.ZodBoolean;
21
+ force_ssl: z.ZodBoolean;
22
+ managed_dns: z.ZodBoolean;
23
+ build_image: z.ZodString;
24
+ framework: z.ZodString;
25
+ repo_url: z.ZodString;
26
+ repo_branch: z.ZodString;
27
+ build_cmd: z.ZodString;
28
+ }, z.core.$strip>>;
29
+ //# sourceMappingURL=get-site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-site.d.ts","sourceRoot":"","sources":["../../src/tools/get-site.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgBlB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { api } from '../netlify-api.js';
4
+ import { siteSchema, mapSite } from './schemas.js';
5
+ export const getSite = defineTool({
6
+ name: 'get_site',
7
+ displayName: 'Get Site',
8
+ description: 'Get detailed information about a specific Netlify site by its ID. Returns name, URLs, custom domain, framework, repo settings, SSL, and build configuration.',
9
+ summary: 'Get site details by ID',
10
+ icon: 'globe',
11
+ group: 'Sites',
12
+ input: z.object({
13
+ site_id: z.string().describe('The site ID to retrieve'),
14
+ }),
15
+ output: siteSchema,
16
+ handle: async (params) => {
17
+ const raw = await api(`/sites/${params.site_id}`);
18
+ return mapSite(raw);
19
+ },
20
+ });
21
+ //# sourceMappingURL=get-site.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-site.js","sourceRoot":"","sources":["../../src/tools/get-site.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAgB,OAAO,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC;IAChC,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,UAAU;IACvB,WAAW,EACT,8JAA8J;IAChK,OAAO,EAAE,wBAAwB;IACjC,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;KACxD,CAAC;IACF,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QACrB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAU,UAAU,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;CACF,CAAC,CAAC"}