runline 0.11.5 → 0.12.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.
Files changed (253) hide show
  1. package/dist/commands/actions.js +3 -1
  2. package/dist/core/engine.js +3 -0
  3. package/dist/index.d.ts +1 -1
  4. package/dist/plugin/api.d.ts +2 -1
  5. package/dist/plugin/types.d.ts +2 -0
  6. package/dist/plugins/actionNetwork/src/index.js +23 -0
  7. package/dist/plugins/activeCampaign/src/index.js +48 -0
  8. package/dist/plugins/adalo/src/index.js +5 -0
  9. package/dist/plugins/affinity/src/index.js +16 -0
  10. package/dist/plugins/agileCrm/src/index.js +15 -0
  11. package/dist/plugins/airtable/src/index.js +10 -0
  12. package/dist/plugins/airtop/src/index.js +24 -0
  13. package/dist/plugins/apiTemplateIo/src/index.js +4 -0
  14. package/dist/plugins/asana/src/index.js +22 -0
  15. package/dist/plugins/autopilot/src/index.js +11 -0
  16. package/dist/plugins/bambooHr/src/index.js +11 -0
  17. package/dist/plugins/bannerbear/src/index.js +4 -0
  18. package/dist/plugins/baserow/src/index.js +8 -0
  19. package/dist/plugins/beeminder/src/index.js +18 -0
  20. package/dist/plugins/bitly/src/index.js +3 -0
  21. package/dist/plugins/bitwarden/src/index.js +19 -0
  22. package/dist/plugins/box/src/index.js +11 -0
  23. package/dist/plugins/brandfetch/src/index.js +5 -0
  24. package/dist/plugins/brevo/src/index.js +15 -0
  25. package/dist/plugins/bubble/src/index.js +5 -0
  26. package/dist/plugins/chargebee/src/index.js +5 -0
  27. package/dist/plugins/circleci/src/index.js +3 -0
  28. package/dist/plugins/ciscoWebex/src/index.js +10 -0
  29. package/dist/plugins/clearbit/src/index.js +3 -0
  30. package/dist/plugins/clickup/src/index.js +61 -0
  31. package/dist/plugins/clockify/src/index.js +25 -0
  32. package/dist/plugins/cloudflare/src/index.js +4 -0
  33. package/dist/plugins/cockpit/src/index.js +5 -0
  34. package/dist/plugins/coda/src/index.js +18 -0
  35. package/dist/plugins/coingecko/src/index.js +10 -0
  36. package/dist/plugins/contentful/src/index.js +7 -0
  37. package/dist/plugins/convertkit/src/index.js +16 -0
  38. package/dist/plugins/copper/src/index.js +7 -0
  39. package/dist/plugins/cortex/src/index.js +4 -0
  40. package/dist/plugins/currents/src/index.js +22 -0
  41. package/dist/plugins/customerIo/src/index.js +9 -0
  42. package/dist/plugins/databricks/src/index.js +34 -0
  43. package/dist/plugins/deepl/src/index.js +2 -0
  44. package/dist/plugins/demio/src/index.js +4 -0
  45. package/dist/plugins/dhl/src/index.js +1 -0
  46. package/dist/plugins/discord/src/index.js +13 -0
  47. package/dist/plugins/discourse/src/index.js +16 -0
  48. package/dist/plugins/disqus/src/index.js +4 -0
  49. package/dist/plugins/docker/src/index.js +5 -0
  50. package/dist/plugins/drift/src/index.js +5 -0
  51. package/dist/plugins/dropbox/src/index.js +9 -0
  52. package/dist/plugins/dropcontact/src/index.js +2 -0
  53. package/dist/plugins/egoi/src/index.js +4 -0
  54. package/dist/plugins/elasticsearch/src/index.js +9 -0
  55. package/dist/plugins/emelia/src/index.js +9 -0
  56. package/dist/plugins/erpnext/src/index.js +5 -0
  57. package/dist/plugins/facebookGraph/src/index.js +1 -0
  58. package/dist/plugins/freshdesk/src/index.js +10 -0
  59. package/dist/plugins/freshservice/src/index.js +7 -0
  60. package/dist/plugins/freshworksCrm/src/index.js +7 -0
  61. package/dist/plugins/getresponse/src/index.js +5 -0
  62. package/dist/plugins/ghost/src/index.js +5 -0
  63. package/dist/plugins/github/src/index.js +37 -0
  64. package/dist/plugins/gitlab/src/index.js +17 -0
  65. package/dist/plugins/gmail/src/index.js +32 -0
  66. package/dist/plugins/gong/src/index.js +4 -0
  67. package/dist/plugins/googleAppsScript/src/index.js +10 -0
  68. package/dist/plugins/googleCalendar/src/index.js +22 -0
  69. package/dist/plugins/googleContacts/src/index.js +10 -0
  70. package/dist/plugins/googleDocs/src/documents.js +4 -0
  71. package/dist/plugins/googleDocs/src/formatting.js +2 -0
  72. package/dist/plugins/googleDocs/src/images.js +2 -0
  73. package/dist/plugins/googleDocs/src/structure.js +13 -0
  74. package/dist/plugins/googleDocs/src/tables.js +11 -0
  75. package/dist/plugins/googleDocs/src/tabs.js +3 -0
  76. package/dist/plugins/googleDocs/src/text.js +9 -0
  77. package/dist/plugins/googleDrive/src/index.js +47 -0
  78. package/dist/plugins/googleImage/src/index.js +1 -0
  79. package/dist/plugins/googleSheets/src/index.js +23 -0
  80. package/dist/plugins/googleSlides/src/index.js +7 -0
  81. package/dist/plugins/googleTasks/src/index.js +12 -0
  82. package/dist/plugins/gotify/src/index.js +3 -0
  83. package/dist/plugins/gotowebinar/src/index.js +20 -0
  84. package/dist/plugins/grafana/src/index.js +17 -0
  85. package/dist/plugins/graphql/src/index.js +2 -0
  86. package/dist/plugins/grist/src/index.js +4 -0
  87. package/dist/plugins/hackernews/src/index.js +6 -0
  88. package/dist/plugins/halopsa/src/index.js +5 -0
  89. package/dist/plugins/harvest/src/index.js +14 -0
  90. package/dist/plugins/helpscout/src/index.js +13 -0
  91. package/dist/plugins/highlevel/src/index.js +17 -0
  92. package/dist/plugins/homeAssistant/src/index.js +13 -0
  93. package/dist/plugins/hubspot/src/index.js +14 -0
  94. package/dist/plugins/humanticAi/src/index.js +3 -0
  95. package/dist/plugins/hunter/src/index.js +3 -0
  96. package/dist/plugins/intercom/src/index.js +10 -0
  97. package/dist/plugins/iterable/src/index.js +6 -0
  98. package/dist/plugins/jenkins/src/index.js +11 -0
  99. package/dist/plugins/jira/src/index.js +16 -0
  100. package/dist/plugins/keap/src/index.js +28 -0
  101. package/dist/plugins/kobotoolbox/src/index.js +17 -0
  102. package/dist/plugins/lemlist/src/index.js +15 -0
  103. package/dist/plugins/linear/src/attachments.js +6 -0
  104. package/dist/plugins/linear/src/comments.js +5 -0
  105. package/dist/plugins/linear/src/cycles.js +2 -0
  106. package/dist/plugins/linear/src/initiatives.js +5 -0
  107. package/dist/plugins/linear/src/issues.js +14 -0
  108. package/dist/plugins/linear/src/labels.js +5 -0
  109. package/dist/plugins/linear/src/organization.js +1 -0
  110. package/dist/plugins/linear/src/projects.js +11 -0
  111. package/dist/plugins/linear/src/shared.js +2 -0
  112. package/dist/plugins/linear/src/states.js +2 -0
  113. package/dist/plugins/linear/src/teams.js +3 -0
  114. package/dist/plugins/linear/src/users.js +2 -0
  115. package/dist/plugins/linear/src/views.js +4 -0
  116. package/dist/plugins/linear/src/webhooks.js +4 -0
  117. package/dist/plugins/lingvanex/src/index.js +1 -0
  118. package/dist/plugins/linkedin/src/index.js +1 -0
  119. package/dist/plugins/lonescale/src/index.js +4 -0
  120. package/dist/plugins/magento/src/index.js +15 -0
  121. package/dist/plugins/mailcheck/src/index.js +1 -0
  122. package/dist/plugins/mailchimp/src/index.js +14 -0
  123. package/dist/plugins/mailerlite/src/index.js +4 -0
  124. package/dist/plugins/mailgun/src/index.js +1 -0
  125. package/dist/plugins/mailjet/src/index.js +3 -0
  126. package/dist/plugins/mandrill/src/index.js +2 -0
  127. package/dist/plugins/marketstack/src/index.js +3 -0
  128. package/dist/plugins/matrix/src/index.js +10 -0
  129. package/dist/plugins/mattermost/src/index.js +19 -0
  130. package/dist/plugins/mautic/src/index.js +20 -0
  131. package/dist/plugins/medium/src/index.js +3 -0
  132. package/dist/plugins/messagebird/src/index.js +2 -0
  133. package/dist/plugins/metabase/src/index.js +10 -0
  134. package/dist/plugins/microsoftCalendar/src/index.js +2 -0
  135. package/dist/plugins/microsoftFiles/src/index.js +5 -0
  136. package/dist/plugins/microsoftMail/src/index.js +4 -0
  137. package/dist/plugins/misp/src/index.js +44 -0
  138. package/dist/plugins/mocean/src/index.js +2 -0
  139. package/dist/plugins/monday/src/index.js +18 -0
  140. package/dist/plugins/monicaCrm/src/index.js +5 -0
  141. package/dist/plugins/msg91/src/index.js +1 -0
  142. package/dist/plugins/nasa/src/index.js +7 -0
  143. package/dist/plugins/netlify/src/index.js +7 -0
  144. package/dist/plugins/netscalerAdc/src/index.js +3 -0
  145. package/dist/plugins/nextcloud/src/index.js +13 -0
  146. package/dist/plugins/nocodb/src/index.js +5 -0
  147. package/dist/plugins/node/src/index.js +38 -0
  148. package/dist/plugins/notion/src/index.js +14 -0
  149. package/dist/plugins/npm/src/index.js +5 -0
  150. package/dist/plugins/odoo/src/index.js +6 -0
  151. package/dist/plugins/okta/src/index.js +5 -0
  152. package/dist/plugins/oneSimpleApi/src/index.js +10 -0
  153. package/dist/plugins/onfleet/src/index.js +24 -0
  154. package/dist/plugins/openThesaurus/src/index.js +1 -0
  155. package/dist/plugins/openai/src/index.js +1 -0
  156. package/dist/plugins/openweathermap/src/index.js +2 -0
  157. package/dist/plugins/oura/src/index.js +2 -0
  158. package/dist/plugins/paddle/src/index.js +9 -0
  159. package/dist/plugins/pagerduty/src/index.js +9 -0
  160. package/dist/plugins/parallel/src/index.js +1 -0
  161. package/dist/plugins/paypal/src/index.js +4 -0
  162. package/dist/plugins/peekalink/src/index.js +2 -0
  163. package/dist/plugins/phantombuster/src/index.js +5 -0
  164. package/dist/plugins/philipsHue/src/index.js +4 -0
  165. package/dist/plugins/pipedrive/src/index.js +14 -0
  166. package/dist/plugins/plivo/src/index.js +3 -0
  167. package/dist/plugins/postbin/src/index.js +6 -0
  168. package/dist/plugins/posthog/src/index.js +5 -0
  169. package/dist/plugins/profitwell/src/index.js +2 -0
  170. package/dist/plugins/pushbullet/src/index.js +4 -0
  171. package/dist/plugins/pushcut/src/index.js +1 -0
  172. package/dist/plugins/pushover/src/index.js +1 -0
  173. package/dist/plugins/quickbase/src/index.js +8 -0
  174. package/dist/plugins/quickbooks/src/index.js +5 -0
  175. package/dist/plugins/quickchart/src/index.js +1 -0
  176. package/dist/plugins/raindrop/src/index.js +13 -0
  177. package/dist/plugins/recraft/src/index.js +1 -0
  178. package/dist/plugins/reddit/src/index.js +10 -0
  179. package/dist/plugins/replicate/src/index.js +1 -0
  180. package/dist/plugins/rocketchat/src/index.js +1 -0
  181. package/dist/plugins/rundeck/src/index.js +2 -0
  182. package/dist/plugins/salesforce/src/metadata.js +4 -0
  183. package/dist/plugins/salesforce/src/query.js +5 -0
  184. package/dist/plugins/salesforce/src/sobjects.js +12 -0
  185. package/dist/plugins/salesmate/src/index.js +5 -0
  186. package/dist/plugins/securityScorecard/src/index.js +14 -0
  187. package/dist/plugins/segment/src/index.js +4 -0
  188. package/dist/plugins/sendgrid/src/index.js +10 -0
  189. package/dist/plugins/sendy/src/index.js +6 -0
  190. package/dist/plugins/sentry/src/index.js +24 -0
  191. package/dist/plugins/servicenow/src/index.js +10 -0
  192. package/dist/plugins/shiftLabs/src/index.js +15 -0
  193. package/dist/plugins/shiftLabs/src/issues.js +74 -0
  194. package/dist/plugins/shiftLabs/src/pages.js +148 -0
  195. package/dist/plugins/shiftLabs/src/shared.js +69 -0
  196. package/dist/plugins/shopify/src/index.js +10 -0
  197. package/dist/plugins/signl4/src/index.js +2 -0
  198. package/dist/plugins/slack/src/index.js +38 -0
  199. package/dist/plugins/sms77/src/index.js +2 -0
  200. package/dist/plugins/splunk/src/index.js +16 -0
  201. package/dist/plugins/spotify/src/index.js +30 -0
  202. package/dist/plugins/stackby/src/index.js +4 -0
  203. package/dist/plugins/steel/src/browser.js +7 -0
  204. package/dist/plugins/steel/src/captchas.js +3 -0
  205. package/dist/plugins/steel/src/credentials.js +4 -0
  206. package/dist/plugins/steel/src/extensions.js +5 -0
  207. package/dist/plugins/steel/src/files.js +10 -0
  208. package/dist/plugins/steel/src/profiles.js +4 -0
  209. package/dist/plugins/steel/src/sessions.js +11 -0
  210. package/dist/plugins/storyblok/src/index.js +7 -0
  211. package/dist/plugins/strapi/src/index.js +5 -0
  212. package/dist/plugins/strava/src/index.js +6 -0
  213. package/dist/plugins/stripe/src/index.js +20 -0
  214. package/dist/plugins/supabase/src/index.js +5 -0
  215. package/dist/plugins/syncromsp/src/index.js +20 -0
  216. package/dist/plugins/tapfiliate/src/index.js +11 -0
  217. package/dist/plugins/telegram/src/index.js +21 -0
  218. package/dist/plugins/thehive/src/index.js +23 -0
  219. package/dist/plugins/thehiveProject/src/index.js +31 -0
  220. package/dist/plugins/todoist/src/index.js +31 -0
  221. package/dist/plugins/together/src/index.js +1 -0
  222. package/dist/plugins/travisci/src/index.js +5 -0
  223. package/dist/plugins/trello/src/index.js +37 -0
  224. package/dist/plugins/twake/src/index.js +1 -0
  225. package/dist/plugins/twilio/src/index.js +2 -0
  226. package/dist/plugins/twist/src/index.js +22 -0
  227. package/dist/plugins/twitter/src/index.js +8 -0
  228. package/dist/plugins/unleashedSoftware/src/index.js +3 -0
  229. package/dist/plugins/uplead/src/index.js +2 -0
  230. package/dist/plugins/uproc/src/index.js +1 -0
  231. package/dist/plugins/uptimerobot/src/index.js +22 -0
  232. package/dist/plugins/urlscanio/src/index.js +3 -0
  233. package/dist/plugins/vercel/src/account.js +1 -0
  234. package/dist/plugins/vercel/src/deployments.js +5 -0
  235. package/dist/plugins/vercel/src/env.js +4 -0
  236. package/dist/plugins/vercel/src/projects.js +2 -0
  237. package/dist/plugins/vercel/src/shared.js +1 -0
  238. package/dist/plugins/vero/src/index.js +6 -0
  239. package/dist/plugins/vonage/src/index.js +1 -0
  240. package/dist/plugins/wekan/src/index.js +24 -0
  241. package/dist/plugins/woocommerce/src/index.js +5 -0
  242. package/dist/plugins/wordpress/src/index.js +10 -0
  243. package/dist/plugins/xai/src/index.js +1 -0
  244. package/dist/plugins/xero/src/index.js +8 -0
  245. package/dist/plugins/yourls/src/index.js +3 -0
  246. package/dist/plugins/zammad/src/index.js +12 -0
  247. package/dist/plugins/zendesk/src/index.js +18 -0
  248. package/dist/plugins/zoho/src/index.js +6 -0
  249. package/dist/plugins/zoom/src/index.js +5 -0
  250. package/dist/plugins/zulip/src/index.js +15 -0
  251. package/dist/sdk.d.ts +2 -1
  252. package/dist/sdk.js +1 -0
  253. package/package.json +1 -1
@@ -32,6 +32,7 @@ export default function uptimerobot(rl) {
32
32
  const key = (ctx) => ctx.connection.config.apiKey;
33
33
  // ── Account ─────────────────────────────────────────
34
34
  rl.registerAction("account.get", {
35
+ access: "read",
35
36
  description: "Get account details",
36
37
  inputSchema: {},
37
38
  async execute(_input, ctx) {
@@ -41,6 +42,7 @@ export default function uptimerobot(rl) {
41
42
  });
42
43
  // ── Monitor ─────────────────────────────────────────
43
44
  rl.registerAction("monitor.create", {
45
+ access: "write",
44
46
  description: "Create a monitor",
45
47
  inputSchema: {
46
48
  friendlyName: { type: "string", required: true },
@@ -62,6 +64,7 @@ export default function uptimerobot(rl) {
62
64
  },
63
65
  });
64
66
  rl.registerAction("monitor.get", {
67
+ access: "read",
65
68
  description: "Get a monitor by ID",
66
69
  inputSchema: { id: { type: "string", required: true } },
67
70
  async execute(input, ctx) {
@@ -72,6 +75,7 @@ export default function uptimerobot(rl) {
72
75
  },
73
76
  });
74
77
  rl.registerAction("monitor.list", {
78
+ access: "read",
75
79
  description: "List monitors",
76
80
  inputSchema: { limit: { type: "number", required: false } },
77
81
  async execute(input, ctx) {
@@ -84,6 +88,7 @@ export default function uptimerobot(rl) {
84
88
  },
85
89
  });
86
90
  rl.registerAction("monitor.update", {
91
+ access: "write",
87
92
  description: "Update a monitor",
88
93
  inputSchema: {
89
94
  id: { type: "string", required: true },
@@ -105,6 +110,7 @@ export default function uptimerobot(rl) {
105
110
  },
106
111
  });
107
112
  rl.registerAction("monitor.delete", {
113
+ access: "write",
108
114
  description: "Delete a monitor",
109
115
  inputSchema: { id: { type: "string", required: true } },
110
116
  async execute(input, ctx) {
@@ -115,6 +121,7 @@ export default function uptimerobot(rl) {
115
121
  },
116
122
  });
117
123
  rl.registerAction("monitor.reset", {
124
+ access: "write",
118
125
  description: "Reset a monitor's stats",
119
126
  inputSchema: { id: { type: "string", required: true } },
120
127
  async execute(input, ctx) {
@@ -126,6 +133,7 @@ export default function uptimerobot(rl) {
126
133
  });
127
134
  // ── Alert Contact ───────────────────────────────────
128
135
  rl.registerAction("alertContact.create", {
136
+ access: "write",
129
137
  description: "Create an alert contact",
130
138
  inputSchema: {
131
139
  friendlyName: { type: "string", required: true },
@@ -147,6 +155,7 @@ export default function uptimerobot(rl) {
147
155
  },
148
156
  });
149
157
  rl.registerAction("alertContact.get", {
158
+ access: "read",
150
159
  description: "Get an alert contact by ID",
151
160
  inputSchema: { id: { type: "string", required: true } },
152
161
  async execute(input, ctx) {
@@ -157,6 +166,7 @@ export default function uptimerobot(rl) {
157
166
  },
158
167
  });
159
168
  rl.registerAction("alertContact.list", {
169
+ access: "read",
160
170
  description: "List alert contacts",
161
171
  inputSchema: { limit: { type: "number", required: false } },
162
172
  async execute(input, ctx) {
@@ -168,6 +178,7 @@ export default function uptimerobot(rl) {
168
178
  },
169
179
  });
170
180
  rl.registerAction("alertContact.update", {
181
+ access: "write",
171
182
  description: "Update an alert contact",
172
183
  inputSchema: {
173
184
  id: { type: "string", required: true },
@@ -186,6 +197,7 @@ export default function uptimerobot(rl) {
186
197
  },
187
198
  });
188
199
  rl.registerAction("alertContact.delete", {
200
+ access: "write",
189
201
  description: "Delete an alert contact",
190
202
  inputSchema: { id: { type: "string", required: true } },
191
203
  async execute(input, ctx) {
@@ -197,6 +209,7 @@ export default function uptimerobot(rl) {
197
209
  });
198
210
  // ── Maintenance Window ──────────────────────────────
199
211
  rl.registerAction("maintenanceWindow.create", {
212
+ access: "write",
200
213
  description: "Create a maintenance window",
201
214
  inputSchema: {
202
215
  friendlyName: { type: "string", required: true },
@@ -236,6 +249,7 @@ export default function uptimerobot(rl) {
236
249
  },
237
250
  });
238
251
  rl.registerAction("maintenanceWindow.get", {
252
+ access: "read",
239
253
  description: "Get a maintenance window",
240
254
  inputSchema: { id: { type: "string", required: true } },
241
255
  async execute(input, ctx) {
@@ -246,6 +260,7 @@ export default function uptimerobot(rl) {
246
260
  },
247
261
  });
248
262
  rl.registerAction("maintenanceWindow.list", {
263
+ access: "read",
249
264
  description: "List maintenance windows",
250
265
  inputSchema: { limit: { type: "number", required: false } },
251
266
  async execute(input, ctx) {
@@ -257,6 +272,7 @@ export default function uptimerobot(rl) {
257
272
  },
258
273
  });
259
274
  rl.registerAction("maintenanceWindow.update", {
275
+ access: "write",
260
276
  description: "Update a maintenance window",
261
277
  inputSchema: {
262
278
  id: { type: "string", required: true },
@@ -278,6 +294,7 @@ export default function uptimerobot(rl) {
278
294
  },
279
295
  });
280
296
  rl.registerAction("maintenanceWindow.delete", {
297
+ access: "write",
281
298
  description: "Delete a maintenance window",
282
299
  inputSchema: { id: { type: "string", required: true } },
283
300
  async execute(input, ctx) {
@@ -288,6 +305,7 @@ export default function uptimerobot(rl) {
288
305
  });
289
306
  // ── Public Status Page ──────────────────────────────
290
307
  rl.registerAction("publicStatusPage.create", {
308
+ access: "write",
291
309
  description: "Create a public status page",
292
310
  inputSchema: {
293
311
  friendlyName: { type: "string", required: true },
@@ -307,6 +325,7 @@ export default function uptimerobot(rl) {
307
325
  },
308
326
  });
309
327
  rl.registerAction("publicStatusPage.get", {
328
+ access: "read",
310
329
  description: "Get a public status page",
311
330
  inputSchema: { id: { type: "string", required: true } },
312
331
  async execute(input, ctx) {
@@ -317,6 +336,7 @@ export default function uptimerobot(rl) {
317
336
  },
318
337
  });
319
338
  rl.registerAction("publicStatusPage.list", {
339
+ access: "read",
320
340
  description: "List public status pages",
321
341
  inputSchema: { limit: { type: "number", required: false } },
322
342
  async execute(input, ctx) {
@@ -328,6 +348,7 @@ export default function uptimerobot(rl) {
328
348
  },
329
349
  });
330
350
  rl.registerAction("publicStatusPage.update", {
351
+ access: "write",
331
352
  description: "Update a public status page",
332
353
  inputSchema: {
333
354
  id: { type: "string", required: true },
@@ -346,6 +367,7 @@ export default function uptimerobot(rl) {
346
367
  },
347
368
  });
348
369
  rl.registerAction("publicStatusPage.delete", {
370
+ access: "write",
349
371
  description: "Delete a public status page",
350
372
  inputSchema: { id: { type: "string", required: true } },
351
373
  async execute(input, ctx) {
@@ -31,6 +31,7 @@ export default function urlscanio(rl) {
31
31
  });
32
32
  const key = (ctx) => ctx.connection.config.apiKey;
33
33
  rl.registerAction("scan.perform", {
34
+ access: "write",
34
35
  description: "Submit a URL for scanning",
35
36
  inputSchema: {
36
37
  url: { type: "string", required: true },
@@ -59,6 +60,7 @@ export default function urlscanio(rl) {
59
60
  },
60
61
  });
61
62
  rl.registerAction("scan.get", {
63
+ access: "read",
62
64
  description: "Get scan results by ID",
63
65
  inputSchema: { scanId: { type: "string", required: true } },
64
66
  async execute(input, ctx) {
@@ -66,6 +68,7 @@ export default function urlscanio(rl) {
66
68
  },
67
69
  });
68
70
  rl.registerAction("scan.search", {
71
+ access: "read",
69
72
  description: "Search scan results",
70
73
  inputSchema: {
71
74
  query: { type: "string", required: false, description: "Search query" },
@@ -2,6 +2,7 @@ import * as t from "typebox";
2
2
  import { TEAM_INPUT_SCHEMA, api } from "./shared.js";
3
3
  export function registerAccountActions(rl) {
4
4
  rl.registerAction("whoami", {
5
+ access: "read",
5
6
  description: "Validate the Vercel token and return the authenticated user/account context.",
6
7
  inputSchema: t.Object(TEAM_INPUT_SCHEMA),
7
8
  async execute(input, ctx) {
@@ -3,6 +3,7 @@ import { LIST_INPUT_SCHEMA, TEAM_INPUT_SCHEMA, api, bindGetAction } from "./shar
3
3
  export function registerDeploymentActions(rl) {
4
4
  const getAction = bindGetAction(rl);
5
5
  rl.registerAction("deployment.list", {
6
+ access: "read",
6
7
  description: "List Vercel deployments. Filter by project, state, target, user, or time window.",
7
8
  inputSchema: t.Object({
8
9
  ...LIST_INPUT_SCHEMA,
@@ -19,6 +20,7 @@ export function registerDeploymentActions(rl) {
19
20
  });
20
21
  getAction("deployment.get", "Get a Vercel deployment by ID or URL.", (id) => `/v13/deployments/${encodeURIComponent(id)}`);
21
22
  rl.registerAction("deployment.logs", {
23
+ access: "read",
22
24
  description: "Get build/deployment logs/events for a deployment. Use builds=1 for build logs and limit/since/until to avoid huge responses.",
23
25
  inputSchema: t.Object({
24
26
  ...TEAM_INPUT_SCHEMA,
@@ -39,6 +41,7 @@ export function registerDeploymentActions(rl) {
39
41
  },
40
42
  });
41
43
  rl.registerAction("deployment.runtimeLogs", {
44
+ access: "read",
42
45
  description: "Get runtime logs for a deployment. Requires projectId and deploymentId; use limit/since/until to keep responses bounded.",
43
46
  inputSchema: t.Object({
44
47
  ...TEAM_INPUT_SCHEMA,
@@ -54,6 +57,7 @@ export function registerDeploymentActions(rl) {
54
57
  },
55
58
  });
56
59
  rl.registerAction("deployment.cancel", {
60
+ access: "write",
57
61
  description: "Cancel a queued or building Vercel deployment.",
58
62
  inputSchema: t.Object({
59
63
  ...TEAM_INPUT_SCHEMA,
@@ -65,6 +69,7 @@ export function registerDeploymentActions(rl) {
65
69
  },
66
70
  });
67
71
  rl.registerAction("deployment.promote", {
72
+ access: "write",
68
73
  description: "Promote an existing deployment to production for a project, where supported by Vercel.",
69
74
  inputSchema: t.Object({
70
75
  ...TEAM_INPUT_SCHEMA,
@@ -19,6 +19,7 @@ function assertCreateEnvInput(body) {
19
19
  }
20
20
  export function registerEnvActions(rl) {
21
21
  rl.registerAction("env.list", {
22
+ access: "read",
22
23
  description: "List environment variables for a Vercel project.",
23
24
  inputSchema: t.Object({
24
25
  ...TEAM_INPUT_SCHEMA,
@@ -34,6 +35,7 @@ export function registerEnvActions(rl) {
34
35
  },
35
36
  });
36
37
  rl.registerAction("env.get", {
38
+ access: "read",
37
39
  description: "Get one environment variable by ID for a Vercel project, including decrypted value when permitted.",
38
40
  inputSchema: t.Object({
39
41
  ...TEAM_INPUT_SCHEMA,
@@ -46,6 +48,7 @@ export function registerEnvActions(rl) {
46
48
  },
47
49
  });
48
50
  rl.registerAction("env.set", {
51
+ access: "write",
49
52
  description: "Create or update a Vercel project environment variable. Without id, creates a variable and requires key, value, type, and target/customEnvironmentIds. With id, updates that exact variable. Be explicit about target to avoid changing the wrong environment.",
50
53
  inputSchema: t.Object({
51
54
  ...TEAM_INPUT_SCHEMA,
@@ -83,6 +86,7 @@ export function registerEnvActions(rl) {
83
86
  },
84
87
  });
85
88
  rl.registerAction("env.delete", {
89
+ access: "write",
86
90
  description: "Delete an environment variable from a Vercel project. This removes the variable for the specified project/environment scope.",
87
91
  inputSchema: t.Object({
88
92
  ...TEAM_INPUT_SCHEMA,
@@ -3,6 +3,7 @@ import { LIST_INPUT_SCHEMA, TEAM_INPUT_SCHEMA, api, bindGetAction } from "./shar
3
3
  export function registerProjectActions(rl) {
4
4
  const getAction = bindGetAction(rl);
5
5
  rl.registerAction("project.list", {
6
+ access: "read",
6
7
  description: "List Vercel projects visible to the token.",
7
8
  inputSchema: t.Object({
8
9
  ...LIST_INPUT_SCHEMA,
@@ -15,6 +16,7 @@ export function registerProjectActions(rl) {
15
16
  });
16
17
  getAction("project.get", "Get a Vercel project by ID or name.", (id) => `/v9/projects/${encodeURIComponent(id)}`);
17
18
  rl.registerAction("project.domains", {
19
+ access: "read",
18
20
  description: "List domains configured for a Vercel project.",
19
21
  inputSchema: t.Object({
20
22
  ...TEAM_INPUT_SCHEMA,
@@ -59,6 +59,7 @@ export const LIST_INPUT_SCHEMA = {
59
59
  export function bindGetAction(rl) {
60
60
  return (name, description, pathForId) => {
61
61
  rl.registerAction(name, {
62
+ access: "read",
62
63
  description,
63
64
  inputSchema: t.Object({
64
65
  id: t.String({ description: "Resource ID, name, or URL" }),
@@ -28,6 +28,7 @@ export default function vero(rl) {
28
28
  });
29
29
  const key = (ctx) => ctx.connection.config.authToken;
30
30
  rl.registerAction("user.create", {
31
+ access: "write",
31
32
  description: "Create/identify a user",
32
33
  inputSchema: {
33
34
  id: { type: "string", required: true },
@@ -49,6 +50,7 @@ export default function vero(rl) {
49
50
  },
50
51
  });
51
52
  rl.registerAction("user.alias", {
53
+ access: "write",
52
54
  description: "Alias (re-identify) a user",
53
55
  inputSchema: {
54
56
  id: { type: "string", required: true },
@@ -64,6 +66,7 @@ export default function vero(rl) {
64
66
  });
65
67
  for (const op of ["unsubscribe", "resubscribe", "delete"]) {
66
68
  rl.registerAction(`user.${op}`, {
69
+ access: "write",
67
70
  description: `${op.charAt(0).toUpperCase() + op.slice(1)} a user`,
68
71
  inputSchema: { id: { type: "string", required: true } },
69
72
  async execute(input, ctx) {
@@ -74,6 +77,7 @@ export default function vero(rl) {
74
77
  });
75
78
  }
76
79
  rl.registerAction("user.addTags", {
80
+ access: "write",
77
81
  description: "Add tags to a user",
78
82
  inputSchema: {
79
83
  id: { type: "string", required: true },
@@ -92,6 +96,7 @@ export default function vero(rl) {
92
96
  },
93
97
  });
94
98
  rl.registerAction("user.removeTags", {
99
+ access: "write",
95
100
  description: "Remove tags from a user",
96
101
  inputSchema: {
97
102
  id: { type: "string", required: true },
@@ -110,6 +115,7 @@ export default function vero(rl) {
110
115
  },
111
116
  });
112
117
  rl.registerAction("event.track", {
118
+ access: "write",
113
119
  description: "Track an event",
114
120
  inputSchema: {
115
121
  id: { type: "string", required: true },
@@ -16,6 +16,7 @@ export default function vonage(rl) {
16
16
  },
17
17
  });
18
18
  rl.registerAction("sms.send", {
19
+ access: "write",
19
20
  description: "Send an SMS",
20
21
  inputSchema: {
21
22
  from: {
@@ -41,6 +41,7 @@ export default function wekan(rl) {
41
41
  });
42
42
  // ── Board ───────────────────────────────────────────
43
43
  rl.registerAction("board.create", {
44
+ access: "write",
44
45
  description: "Create a board",
45
46
  inputSchema: {
46
47
  title: { type: "string", required: true },
@@ -51,6 +52,7 @@ export default function wekan(rl) {
51
52
  },
52
53
  });
53
54
  rl.registerAction("board.get", {
55
+ access: "read",
54
56
  description: "Get a board",
55
57
  inputSchema: { boardId: { type: "string", required: true } },
56
58
  async execute(input, ctx) {
@@ -58,6 +60,7 @@ export default function wekan(rl) {
58
60
  },
59
61
  });
60
62
  rl.registerAction("board.list", {
63
+ access: "read",
61
64
  description: "List boards for a user",
62
65
  inputSchema: {
63
66
  userId: { type: "string", required: true },
@@ -70,6 +73,7 @@ export default function wekan(rl) {
70
73
  },
71
74
  });
72
75
  rl.registerAction("board.delete", {
76
+ access: "write",
73
77
  description: "Delete a board",
74
78
  inputSchema: { boardId: { type: "string", required: true } },
75
79
  async execute(input, ctx) {
@@ -78,6 +82,7 @@ export default function wekan(rl) {
78
82
  });
79
83
  // ── List ────────────────────────────────────────────
80
84
  rl.registerAction("list.create", {
85
+ access: "write",
81
86
  description: "Create a list on a board",
82
87
  inputSchema: {
83
88
  boardId: { type: "string", required: true },
@@ -91,6 +96,7 @@ export default function wekan(rl) {
91
96
  },
92
97
  });
93
98
  rl.registerAction("list.get", {
99
+ access: "read",
94
100
  description: "Get a list",
95
101
  inputSchema: {
96
102
  boardId: { type: "string", required: true },
@@ -102,6 +108,7 @@ export default function wekan(rl) {
102
108
  },
103
109
  });
104
110
  rl.registerAction("list.listAll", {
111
+ access: "read",
105
112
  description: "List all lists on a board",
106
113
  inputSchema: {
107
114
  boardId: { type: "string", required: true },
@@ -114,6 +121,7 @@ export default function wekan(rl) {
114
121
  },
115
122
  });
116
123
  rl.registerAction("list.delete", {
124
+ access: "write",
117
125
  description: "Delete a list",
118
126
  inputSchema: {
119
127
  boardId: { type: "string", required: true },
@@ -126,6 +134,7 @@ export default function wekan(rl) {
126
134
  });
127
135
  // ── Card ────────────────────────────────────────────
128
136
  rl.registerAction("card.create", {
137
+ access: "write",
129
138
  description: "Create a card",
130
139
  inputSchema: {
131
140
  boardId: { type: "string", required: true },
@@ -141,6 +150,7 @@ export default function wekan(rl) {
141
150
  },
142
151
  });
143
152
  rl.registerAction("card.get", {
153
+ access: "read",
144
154
  description: "Get a card",
145
155
  inputSchema: {
146
156
  boardId: { type: "string", required: true },
@@ -153,6 +163,7 @@ export default function wekan(rl) {
153
163
  },
154
164
  });
155
165
  rl.registerAction("card.list", {
166
+ access: "read",
156
167
  description: "List cards in a list",
157
168
  inputSchema: {
158
169
  boardId: { type: "string", required: true },
@@ -166,6 +177,7 @@ export default function wekan(rl) {
166
177
  },
167
178
  });
168
179
  rl.registerAction("card.update", {
180
+ access: "write",
169
181
  description: "Update a card",
170
182
  inputSchema: {
171
183
  boardId: { type: "string", required: true },
@@ -179,6 +191,7 @@ export default function wekan(rl) {
179
191
  },
180
192
  });
181
193
  rl.registerAction("card.delete", {
194
+ access: "write",
182
195
  description: "Delete a card",
183
196
  inputSchema: {
184
197
  boardId: { type: "string", required: true },
@@ -192,6 +205,7 @@ export default function wekan(rl) {
192
205
  });
193
206
  // ── Card Comment ────────────────────────────────────
194
207
  rl.registerAction("cardComment.create", {
208
+ access: "write",
195
209
  description: "Add a comment to a card",
196
210
  inputSchema: {
197
211
  boardId: { type: "string", required: true },
@@ -205,6 +219,7 @@ export default function wekan(rl) {
205
219
  },
206
220
  });
207
221
  rl.registerAction("cardComment.get", {
222
+ access: "read",
208
223
  description: "Get a comment",
209
224
  inputSchema: {
210
225
  boardId: { type: "string", required: true },
@@ -217,6 +232,7 @@ export default function wekan(rl) {
217
232
  },
218
233
  });
219
234
  rl.registerAction("cardComment.list", {
235
+ access: "read",
220
236
  description: "List comments on a card",
221
237
  inputSchema: {
222
238
  boardId: { type: "string", required: true },
@@ -228,6 +244,7 @@ export default function wekan(rl) {
228
244
  },
229
245
  });
230
246
  rl.registerAction("cardComment.delete", {
247
+ access: "write",
231
248
  description: "Delete a comment",
232
249
  inputSchema: {
233
250
  boardId: { type: "string", required: true },
@@ -241,6 +258,7 @@ export default function wekan(rl) {
241
258
  });
242
259
  // ── Checklist ───────────────────────────────────────
243
260
  rl.registerAction("checklist.create", {
261
+ access: "write",
244
262
  description: "Create a checklist on a card",
245
263
  inputSchema: {
246
264
  boardId: { type: "string", required: true },
@@ -258,6 +276,7 @@ export default function wekan(rl) {
258
276
  },
259
277
  });
260
278
  rl.registerAction("checklist.get", {
279
+ access: "read",
261
280
  description: "Get a checklist",
262
281
  inputSchema: {
263
282
  boardId: { type: "string", required: true },
@@ -270,6 +289,7 @@ export default function wekan(rl) {
270
289
  },
271
290
  });
272
291
  rl.registerAction("checklist.list", {
292
+ access: "read",
273
293
  description: "List checklists on a card",
274
294
  inputSchema: {
275
295
  boardId: { type: "string", required: true },
@@ -281,6 +301,7 @@ export default function wekan(rl) {
281
301
  },
282
302
  });
283
303
  rl.registerAction("checklist.delete", {
304
+ access: "write",
284
305
  description: "Delete a checklist",
285
306
  inputSchema: {
286
307
  boardId: { type: "string", required: true },
@@ -294,6 +315,7 @@ export default function wekan(rl) {
294
315
  });
295
316
  // ── Checklist Item ──────────────────────────────────
296
317
  rl.registerAction("checklistItem.get", {
318
+ access: "read",
297
319
  description: "Get a checklist item",
298
320
  inputSchema: {
299
321
  boardId: { type: "string", required: true },
@@ -307,6 +329,7 @@ export default function wekan(rl) {
307
329
  },
308
330
  });
309
331
  rl.registerAction("checklistItem.update", {
332
+ access: "write",
310
333
  description: "Update a checklist item",
311
334
  inputSchema: {
312
335
  boardId: { type: "string", required: true },
@@ -321,6 +344,7 @@ export default function wekan(rl) {
321
344
  },
322
345
  });
323
346
  rl.registerAction("checklistItem.delete", {
347
+ access: "write",
324
348
  description: "Delete a checklist item",
325
349
  inputSchema: {
326
350
  boardId: { type: "string", required: true },
@@ -30,6 +30,7 @@ async function apiRequest(conn, method, endpoint, body, qs) {
30
30
  }
31
31
  function registerCrud(rl, resource, plural, conn, createSchema) {
32
32
  rl.registerAction(`${resource}.create`, {
33
+ access: "write",
33
34
  description: `Create a ${resource}`,
34
35
  inputSchema: createSchema,
35
36
  async execute(input, ctx) {
@@ -37,6 +38,7 @@ function registerCrud(rl, resource, plural, conn, createSchema) {
37
38
  },
38
39
  });
39
40
  rl.registerAction(`${resource}.get`, {
41
+ access: "read",
40
42
  description: `Get a ${resource} by ID`,
41
43
  inputSchema: { id: { type: "string", required: true } },
42
44
  async execute(input, ctx) {
@@ -44,6 +46,7 @@ function registerCrud(rl, resource, plural, conn, createSchema) {
44
46
  },
45
47
  });
46
48
  rl.registerAction(`${resource}.list`, {
49
+ access: "read",
47
50
  description: `List ${plural}`,
48
51
  inputSchema: {
49
52
  limit: { type: "number", required: false },
@@ -63,6 +66,7 @@ function registerCrud(rl, resource, plural, conn, createSchema) {
63
66
  },
64
67
  });
65
68
  rl.registerAction(`${resource}.update`, {
69
+ access: "write",
66
70
  description: `Update a ${resource}`,
67
71
  inputSchema: {
68
72
  id: { type: "string", required: true },
@@ -74,6 +78,7 @@ function registerCrud(rl, resource, plural, conn, createSchema) {
74
78
  },
75
79
  });
76
80
  rl.registerAction(`${resource}.delete`, {
81
+ access: "write",
77
82
  description: `Delete a ${resource}`,
78
83
  inputSchema: { id: { type: "string", required: true } },
79
84
  async execute(input, ctx) {
@@ -31,6 +31,7 @@ async function apiRequest(conn, method, endpoint, body, qs) {
31
31
  }
32
32
  function registerContentCrud(rl, resource, plural, conn) {
33
33
  rl.registerAction(`${resource}.create`, {
34
+ access: "write",
34
35
  description: `Create a ${resource}`,
35
36
  inputSchema: {
36
37
  title: { type: "string", required: true },
@@ -47,6 +48,7 @@ function registerContentCrud(rl, resource, plural, conn) {
47
48
  },
48
49
  });
49
50
  rl.registerAction(`${resource}.get`, {
51
+ access: "read",
50
52
  description: `Get a ${resource} by ID`,
51
53
  inputSchema: { id: { type: "string", required: true } },
52
54
  async execute(input, ctx) {
@@ -54,6 +56,7 @@ function registerContentCrud(rl, resource, plural, conn) {
54
56
  },
55
57
  });
56
58
  rl.registerAction(`${resource}.list`, {
59
+ access: "read",
57
60
  description: `List ${plural}`,
58
61
  inputSchema: {
59
62
  limit: { type: "number", required: false },
@@ -76,6 +79,7 @@ function registerContentCrud(rl, resource, plural, conn) {
76
79
  },
77
80
  });
78
81
  rl.registerAction(`${resource}.update`, {
82
+ access: "write",
79
83
  description: `Update a ${resource}`,
80
84
  inputSchema: {
81
85
  id: { type: "string", required: true },
@@ -90,6 +94,7 @@ function registerContentCrud(rl, resource, plural, conn) {
90
94
  },
91
95
  });
92
96
  rl.registerAction(`${resource}.delete`, {
97
+ access: "write",
93
98
  description: `Delete a ${resource}`,
94
99
  inputSchema: {
95
100
  id: { type: "string", required: true },
@@ -131,6 +136,7 @@ export default function wordpress(rl) {
131
136
  registerContentCrud(rl, "page", "pages", getConn);
132
137
  // ── User ────────────────────────────────────────────
133
138
  rl.registerAction("user.create", {
139
+ access: "write",
134
140
  description: "Create a user",
135
141
  inputSchema: {
136
142
  username: { type: "string", required: true },
@@ -143,6 +149,7 @@ export default function wordpress(rl) {
143
149
  },
144
150
  });
145
151
  rl.registerAction("user.get", {
152
+ access: "read",
146
153
  description: "Get a user by ID",
147
154
  inputSchema: { id: { type: "string", required: true } },
148
155
  async execute(input, ctx) {
@@ -150,6 +157,7 @@ export default function wordpress(rl) {
150
157
  },
151
158
  });
152
159
  rl.registerAction("user.list", {
160
+ access: "read",
153
161
  description: "List users",
154
162
  inputSchema: {
155
163
  limit: { type: "number", required: false },
@@ -166,6 +174,7 @@ export default function wordpress(rl) {
166
174
  },
167
175
  });
168
176
  rl.registerAction("user.update", {
177
+ access: "write",
169
178
  description: "Update a user",
170
179
  inputSchema: {
171
180
  id: { type: "string", required: true },
@@ -179,6 +188,7 @@ export default function wordpress(rl) {
179
188
  },
180
189
  });
181
190
  rl.registerAction("user.delete", {
191
+ access: "write",
182
192
  description: "Delete the current user",
183
193
  inputSchema: {
184
194
  reassign: {
@@ -23,6 +23,7 @@ export default function xai(rl) {
23
23
  },
24
24
  });
25
25
  rl.registerAction("image.create", {
26
+ access: "write",
26
27
  description: "Generate an image with xAI Grok Imagine (Aurora). Writes the JPEG(s) to disk and returns their file `path`s (plus any revised prompt) — not base64. Deliver each with send_file using its `path`.",
27
28
  inputSchema: {
28
29
  prompt: {