@oomol-lab/open-connector 1.6.5 → 1.8.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 (495) hide show
  1. package/README.md +4 -0
  2. package/assets/open-connector/catalog/apps/airtable.json +134 -0
  3. package/assets/open-connector/catalog/apps/aisa.json +6985 -319
  4. package/assets/open-connector/catalog/apps/baizhi_mcp.json +135 -0
  5. package/assets/open-connector/catalog/apps/cal.json +24 -6
  6. package/assets/open-connector/catalog/apps/discordbot.json +2888 -248
  7. package/assets/open-connector/catalog/apps/drawio_mcp.json +192 -0
  8. package/assets/open-connector/catalog/apps/enormail.json +411 -0
  9. package/assets/open-connector/catalog/apps/feishu_app_bot.json +158 -0
  10. package/assets/open-connector/catalog/apps/firecrawl.json +176 -32
  11. package/assets/open-connector/catalog/apps/framejet.json +273 -0
  12. package/assets/open-connector/catalog/apps/futunn.json +2967 -0
  13. package/assets/open-connector/catalog/apps/github.json +275 -0
  14. package/assets/open-connector/catalog/apps/gitlab.json +125 -0
  15. package/assets/open-connector/catalog/apps/gmail.json +376 -0
  16. package/assets/open-connector/catalog/apps/google_analytics.json +4 -1
  17. package/assets/open-connector/catalog/apps/google_bigquery.json +4 -1
  18. package/assets/open-connector/catalog/apps/google_search_console.json +4 -1
  19. package/assets/open-connector/catalog/apps/googlecalendar.json +210 -1
  20. package/assets/open-connector/catalog/apps/googlechat.json +694 -7
  21. package/assets/open-connector/catalog/apps/googledocs.json +4 -1
  22. package/assets/open-connector/catalog/apps/googledrive.json +479 -0
  23. package/assets/open-connector/catalog/apps/googlesheets.json +148 -1
  24. package/assets/open-connector/catalog/apps/granola.json +23 -0
  25. package/assets/open-connector/catalog/apps/hithink_finance.json +6 -3
  26. package/assets/open-connector/catalog/apps/indexed.json +1115 -0
  27. package/assets/open-connector/catalog/apps/keepa.json +3534 -987
  28. package/assets/open-connector/catalog/apps/linear.json +133 -0
  29. package/assets/open-connector/catalog/apps/linear_mcp.json +510 -0
  30. package/assets/open-connector/catalog/apps/moneyforward_mcp.json +1432 -0
  31. package/assets/open-connector/catalog/apps/notion.json +588 -1
  32. package/assets/open-connector/catalog/apps/notion_mcp.json +490 -0
  33. package/assets/open-connector/catalog/apps/odoo.json +619 -0
  34. package/assets/open-connector/catalog/apps/one_drive.json +185 -0
  35. package/assets/open-connector/catalog/apps/outlook.json +212 -8
  36. package/assets/open-connector/catalog/apps/outlook_calendar.json +23 -2
  37. package/assets/open-connector/catalog/apps/postiz.json +334 -0
  38. package/assets/open-connector/catalog/apps/proworkflow.json +529 -0
  39. package/assets/open-connector/catalog/apps/sellersprite_mcp.json +2 -1
  40. package/assets/open-connector/catalog/apps/shopify.json +282 -0
  41. package/assets/open-connector/catalog/apps/slack.json +405 -0
  42. package/assets/open-connector/catalog/apps/slackbot.json +214 -0
  43. package/assets/open-connector/catalog/apps/spotify.json +46 -43
  44. package/assets/open-connector/catalog/apps/stripe.json +96 -0
  45. package/assets/open-connector/catalog/apps/telegram.json +138 -0
  46. package/assets/open-connector/catalog/apps/tencent_docs.json +3 -0
  47. package/assets/open-connector/catalog/apps/weixin_store.json +543 -2
  48. package/assets/open-connector/catalog/apps/wisburg.json +1528 -0
  49. package/assets/open-connector/catalog/apps/woocommerce.json +127 -0
  50. package/assets/open-connector/catalog/apps/youtube.json +4 -1
  51. package/assets/open-connector/catalog/apps/zendesk.json +152 -0
  52. package/assets/open-connector/catalog/apps/zerotier.json +3319 -0
  53. package/assets/open-connector/catalog/apps-index.json +1 -1
  54. package/assets/open-connector/migrations/0014_saas_project.sql +55 -0
  55. package/assets/open-connector/migrations/0015_saas_cleanup_runtime.sql +8 -0
  56. package/assets/open-connector/migrations/0016_trigger_policy.sql +1 -0
  57. package/assets/open-connector/migrations/0017_trigger_subscriptions.sql +17 -0
  58. package/assets/open-connector/migrations/postgresql/0014_saas_project.sql +55 -0
  59. package/assets/open-connector/migrations/postgresql/0015_saas_cleanup_runtime.sql +8 -0
  60. package/assets/open-connector/migrations/postgresql/0016_trigger_policy.sql +1 -0
  61. package/assets/open-connector/migrations/postgresql/0017_trigger_subscriptions.sql +17 -0
  62. package/package.json +2 -2
  63. package/src/connection-service.d.ts +40 -7
  64. package/src/connection-service.js +60 -18
  65. package/src/core/action-policy.d.ts +8 -1
  66. package/src/core/action-policy.js +51 -0
  67. package/src/core/cast.d.ts +13 -0
  68. package/src/core/cast.js +18 -1
  69. package/src/core/guarded-fetch.d.ts +11 -3
  70. package/src/core/guarded-fetch.js +19 -7
  71. package/src/core/provider-scenarios.js +67 -13
  72. package/src/core/remote-http.d.ts +33 -0
  73. package/src/core/remote-http.js +104 -0
  74. package/src/core/request.d.ts +1 -0
  75. package/src/core/request.js +11 -1
  76. package/src/core/types.d.ts +5 -1
  77. package/src/marketplace/marketplace-service.d.ts +0 -1
  78. package/src/marketplace/marketplace-service.js +80 -92
  79. package/src/mcp.js +26 -9
  80. package/src/oauth/oauth-client-config-service.d.ts +16 -1
  81. package/src/oauth/oauth-client-config-service.js +59 -3
  82. package/src/oauth/oauth-flow-service.d.ts +14 -1
  83. package/src/oauth/oauth-flow-service.js +14 -6
  84. package/src/providers/17track/runtime.js +1 -1
  85. package/src/providers/action-contracts.generated.d.ts +20 -6
  86. package/src/providers/aifinmarket/runtime.js +1 -1
  87. package/src/providers/airtable/executors.d.ts +3 -0
  88. package/src/providers/airtable/executors.js +2 -0
  89. package/src/providers/airtable/trigger-on-record-changed.d.ts +2 -0
  90. package/src/providers/airtable/trigger-on-record-changed.definition.d.ts +4 -0
  91. package/src/providers/airtable/trigger-on-record-changed.definition.js +54 -0
  92. package/src/providers/airtable/trigger-on-record-changed.js +235 -0
  93. package/src/providers/aisa/executors.js +912 -50
  94. package/src/providers/aliyun_ack/runtime.js +1 -1
  95. package/src/providers/aliyun_sls/runtime.js +1 -1
  96. package/src/providers/app_store_server/runtime-helpers.js +1 -1
  97. package/src/providers/baizhi_mcp/actions.d.ts +2 -0
  98. package/src/providers/baizhi_mcp/actions.js +40 -0
  99. package/src/providers/baizhi_mcp/executors.d.ts +3 -0
  100. package/src/providers/baizhi_mcp/executors.js +102 -0
  101. package/src/providers/bazhuayu/runtime.js +2 -2
  102. package/src/providers/bilibili/runtime.js +2 -4
  103. package/src/providers/bilibili/upload.js +9 -7
  104. package/src/providers/cal/actions.js +5 -1
  105. package/src/providers/cloudflare_browser_rendering/executors.js +1 -1
  106. package/src/providers/cloudflare_dns/executors.js +1 -1
  107. package/src/providers/{cloudflare-current-user.js → cloudflare_dns/runtime-user.js} +2 -2
  108. package/src/providers/cloudflare_dns/runtime.d.ts +1 -1
  109. package/src/providers/cloudflare_dns/runtime.js +1 -1
  110. package/src/providers/cloudflare_r2/executors.js +1 -1
  111. package/src/providers/cloudflare_r2/runtime.d.ts +1 -1
  112. package/src/providers/cloudflare_r2/runtime.js +1 -1
  113. package/src/providers/cloudflare_worker/executors.js +1 -1
  114. package/src/providers/cloudflare_worker/runtime.d.ts +1 -1
  115. package/src/providers/cloudflare_worker/runtime.js +1 -1
  116. package/src/providers/dingtalk_mcp/runtime.js +1 -1
  117. package/src/providers/discordbot/executors.d.ts +0 -9
  118. package/src/providers/discordbot/executors.js +9 -101
  119. package/src/providers/discordbot/runtime-guilds.d.ts +3 -0
  120. package/src/providers/discordbot/runtime-guilds.js +464 -0
  121. package/src/providers/discordbot/runtime.d.ts +42 -0
  122. package/src/providers/discordbot/runtime.js +124 -0
  123. package/src/providers/drawio_mcp/executors.d.ts +3 -0
  124. package/src/providers/drawio_mcp/executors.js +19 -0
  125. package/src/providers/drawio_mcp/runtime.d.ts +8 -0
  126. package/src/providers/drawio_mcp/runtime.js +175 -0
  127. package/src/providers/enormail/executors.d.ts +4 -0
  128. package/src/providers/enormail/executors.js +97 -0
  129. package/src/providers/fastmoss_mcp/executors.js +2 -2
  130. package/src/providers/feishu_app_bot/executors.d.ts +3 -0
  131. package/src/providers/feishu_app_bot/executors.js +2 -0
  132. package/src/providers/feishu_app_bot/trigger-config.d.ts +1 -0
  133. package/src/providers/feishu_app_bot/trigger-config.js +10 -0
  134. package/src/providers/feishu_app_bot/trigger-on-event.d.ts +2 -0
  135. package/src/providers/feishu_app_bot/trigger-on-event.definition.d.ts +4 -0
  136. package/src/providers/feishu_app_bot/trigger-on-event.definition.js +63 -0
  137. package/src/providers/feishu_app_bot/trigger-on-event.js +29 -0
  138. package/src/providers/feishu_app_bot/trigger-subscriptions.d.ts +5 -0
  139. package/src/providers/feishu_app_bot/trigger-subscriptions.js +70 -0
  140. package/src/providers/finchina/executors.js +1 -1
  141. package/src/providers/framejet/executors.d.ts +4 -0
  142. package/src/providers/framejet/executors.js +19 -0
  143. package/src/providers/framejet/runtime.d.ts +16 -0
  144. package/src/providers/framejet/runtime.js +148 -0
  145. package/src/providers/futunn/actions.d.ts +2 -0
  146. package/src/providers/futunn/actions.js +152 -0
  147. package/src/providers/futunn/actions.research.d.ts +2 -0
  148. package/src/providers/futunn/actions.research.js +423 -0
  149. package/src/providers/futunn/actions.trading.d.ts +2 -0
  150. package/src/providers/futunn/actions.trading.js +204 -0
  151. package/src/providers/futunn/executors.d.ts +3 -0
  152. package/src/providers/futunn/executors.js +24 -0
  153. package/src/providers/futunn/runtime-research.d.ts +3 -0
  154. package/src/providers/futunn/runtime-research.js +133 -0
  155. package/src/providers/futunn/runtime-trading.d.ts +3 -0
  156. package/src/providers/futunn/runtime-trading.js +39 -0
  157. package/src/providers/futunn/runtime.d.ts +2 -0
  158. package/src/providers/futunn/runtime.js +50 -0
  159. package/src/providers/futunn/transport.d.ts +11 -0
  160. package/src/providers/futunn/transport.js +76 -0
  161. package/src/providers/gildata/executors.js +1 -1
  162. package/src/providers/github/executors.d.ts +3 -0
  163. package/src/providers/github/executors.js +6 -0
  164. package/src/providers/github/trigger-on-repo-event.d.ts +2 -0
  165. package/src/providers/github/trigger-on-repo-event.definition.d.ts +4 -0
  166. package/src/providers/github/trigger-on-repo-event.definition.js +94 -0
  167. package/src/providers/github/trigger-on-repo-event.js +168 -0
  168. package/src/providers/github/trigger-watch-pull-request.d.ts +2 -0
  169. package/src/providers/github/trigger-watch-pull-request.definition.d.ts +4 -0
  170. package/src/providers/github/trigger-watch-pull-request.definition.js +49 -0
  171. package/src/providers/github/trigger-watch-pull-request.js +106 -0
  172. package/src/providers/gitlab/executors.d.ts +3 -0
  173. package/src/providers/gitlab/executors.js +2 -0
  174. package/src/providers/gitlab/trigger-on-project-event.d.ts +2 -0
  175. package/src/providers/gitlab/trigger-on-project-event.definition.d.ts +5 -0
  176. package/src/providers/gitlab/trigger-on-project-event.definition.js +63 -0
  177. package/src/providers/gitlab/trigger-on-project-event.js +186 -0
  178. package/src/providers/gmail/executors.d.ts +3 -0
  179. package/src/providers/gmail/executors.js +5 -3
  180. package/src/providers/gmail/message.d.ts +6 -8
  181. package/src/providers/gmail/message.js +4 -0
  182. package/src/providers/gmail/scopes.d.ts +32 -0
  183. package/src/providers/gmail/scopes.js +37 -0
  184. package/src/providers/gmail/trigger-on-message-received.d.ts +2 -0
  185. package/src/providers/gmail/trigger-on-message-received.definition.d.ts +4 -0
  186. package/src/providers/gmail/trigger-on-message-received.definition.js +74 -0
  187. package/src/providers/gmail/trigger-on-message-received.js +232 -0
  188. package/src/providers/google_analytics/executors.js +2 -2
  189. package/src/providers/google_analytics/scopes.js +6 -1
  190. package/src/providers/google_bigquery/executors.js +2 -2
  191. package/src/providers/google_bigquery/scopes.js +2 -0
  192. package/src/providers/google_search_console/executors.js +2 -2
  193. package/src/providers/google_search_console/scopes.js +2 -0
  194. package/src/providers/googleads/executors.js +1 -1
  195. package/src/providers/googleads/scopes.d.ts +1 -3
  196. package/src/providers/googleads/scopes.js +2 -4
  197. package/src/providers/googlecalendar/executors.d.ts +3 -0
  198. package/src/providers/googlecalendar/executors.js +3 -1
  199. package/src/providers/googlecalendar/runtime-shared.js +2 -2
  200. package/src/providers/googlecalendar/scopes.js +2 -0
  201. package/src/providers/googlecalendar/trigger-on-event-changed.d.ts +2 -0
  202. package/src/providers/googlecalendar/trigger-on-event-changed.definition.d.ts +4 -0
  203. package/src/providers/googlecalendar/trigger-on-event-changed.definition.js +74 -0
  204. package/src/providers/googlecalendar/trigger-on-event-changed.js +233 -0
  205. package/src/providers/googlechat/executors.d.ts +1 -3
  206. package/src/providers/googlechat/executors.js +219 -28
  207. package/src/providers/googlechat/members.d.ts +55 -0
  208. package/src/providers/googlechat/members.js +293 -0
  209. package/src/providers/googlechat/runtime.d.ts +16 -0
  210. package/src/providers/googlechat/runtime.js +25 -0
  211. package/src/providers/googlechat/scopes.d.ts +22 -3
  212. package/src/providers/googlechat/scopes.js +30 -7
  213. package/src/providers/googledocs/executors.js +1 -1
  214. package/src/providers/googledrive/executors.d.ts +3 -0
  215. package/src/providers/googledrive/executors.js +9 -2
  216. package/src/providers/{google-auth.d.ts → googledrive/runtime-auth.d.ts} +2 -2
  217. package/src/providers/{google-auth.js → googledrive/runtime-auth.js} +3 -3
  218. package/src/providers/googledrive/runtime-collaboration.js +1 -1
  219. package/src/providers/{google-runtime.d.ts → googledrive/runtime-request.d.ts} +1 -1
  220. package/src/providers/{google-runtime.js → googledrive/runtime-request.js} +2 -2
  221. package/src/providers/googledrive/trigger-changes.d.ts +12 -0
  222. package/src/providers/googledrive/trigger-changes.definition.d.ts +7 -0
  223. package/src/providers/googledrive/trigger-changes.definition.js +101 -0
  224. package/src/providers/googledrive/trigger-changes.js +452 -0
  225. package/src/providers/googledrive/trigger-on-file-change.d.ts +2 -0
  226. package/src/providers/googledrive/trigger-on-file-change.definition.d.ts +4 -0
  227. package/src/providers/googledrive/trigger-on-file-change.definition.js +77 -0
  228. package/src/providers/googledrive/trigger-on-file-change.js +258 -0
  229. package/src/providers/googleforms/executors.js +2 -2
  230. package/src/providers/googleforms/scopes.d.ts +0 -3
  231. package/src/providers/googleforms/scopes.js +2 -6
  232. package/src/providers/googlemeet/executors.js +2 -2
  233. package/src/providers/googlemeet/scopes.d.ts +0 -3
  234. package/src/providers/googlemeet/scopes.js +2 -6
  235. package/src/providers/googlesheets/executors.d.ts +3 -0
  236. package/src/providers/googlesheets/executors.js +3 -1
  237. package/src/providers/googlesheets/scopes.js +2 -0
  238. package/src/providers/googlesheets/trigger-on-row-added.d.ts +2 -0
  239. package/src/providers/googlesheets/trigger-on-row-added.definition.d.ts +4 -0
  240. package/src/providers/googlesheets/trigger-on-row-added.definition.js +54 -0
  241. package/src/providers/googlesheets/trigger-on-row-added.js +234 -0
  242. package/src/providers/googleslides/executors.js +2 -2
  243. package/src/providers/googleslides/scopes.d.ts +0 -3
  244. package/src/providers/googleslides/scopes.js +2 -6
  245. package/src/providers/googletasks/executors.js +2 -2
  246. package/src/providers/googletasks/scopes.d.ts +0 -3
  247. package/src/providers/googletasks/scopes.js +2 -6
  248. package/src/providers/granola/actions.js +2 -0
  249. package/src/providers/granola/runtime-mcp.js +2 -0
  250. package/src/providers/granola/runtime.js +2 -2
  251. package/src/providers/hithink_finance/runtime.js +1 -1
  252. package/src/providers/indexed/executors.d.ts +4 -0
  253. package/src/providers/indexed/executors.js +16 -0
  254. package/src/providers/indexed/runtime.d.ts +26 -0
  255. package/src/providers/indexed/runtime.js +129 -0
  256. package/src/providers/indiegogo/executors.js +1 -1
  257. package/src/providers/investoday_mcp/executors.js +2 -2
  258. package/src/providers/iyunbiao/runtime.js +2 -2
  259. package/src/providers/keepa/actions.d.ts +1 -1
  260. package/src/providers/keepa/actions.js +371 -149
  261. package/src/providers/keepa/deal-attributes.d.ts +1 -0
  262. package/src/providers/keepa/deal-attributes.js +26 -0
  263. package/src/providers/keepa/runtime.js +212 -18
  264. package/src/providers/kingdee/executors.js +1 -1
  265. package/src/providers/kingdee/runtime.js +2 -2
  266. package/src/providers/kuaidi100/runtime.js +1 -1
  267. package/src/providers/linear/executors.d.ts +3 -0
  268. package/src/providers/linear/executors.js +14 -9
  269. package/src/providers/linear/trigger-on-issue-changed.d.ts +2 -0
  270. package/src/providers/linear/trigger-on-issue-changed.definition.d.ts +5 -0
  271. package/src/providers/linear/trigger-on-issue-changed.definition.js +43 -0
  272. package/src/providers/linear/trigger-on-issue-changed.js +215 -0
  273. package/src/providers/linear_mcp/actions.d.ts +47 -0
  274. package/src/providers/linear_mcp/actions.js +102 -0
  275. package/src/providers/linear_mcp/endpoints.d.ts +3 -0
  276. package/src/providers/linear_mcp/endpoints.js +3 -0
  277. package/src/providers/linear_mcp/executors.d.ts +3 -0
  278. package/src/providers/linear_mcp/executors.js +9 -0
  279. package/src/providers/linear_mcp/runtime-mcp.d.ts +15 -0
  280. package/src/providers/linear_mcp/runtime-mcp.js +238 -0
  281. package/src/providers/lingxing_mcp/runtime.js +1 -1
  282. package/src/providers/mcdonalds_cn_mcp/runtime.js +1 -1
  283. package/src/providers/metabase/mcp-runtime.js +1 -1
  284. package/src/providers/moneyforward_mcp/executors.d.ts +3 -0
  285. package/src/providers/moneyforward_mcp/executors.js +11 -0
  286. package/src/providers/moneyforward_mcp/manifest.d.ts +31 -0
  287. package/src/providers/moneyforward_mcp/manifest.js +204 -0
  288. package/src/providers/moneyforward_mcp/runtime.d.ts +18 -0
  289. package/src/providers/moneyforward_mcp/runtime.js +296 -0
  290. package/src/providers/notion/executors.d.ts +3 -0
  291. package/src/providers/notion/executors.js +41 -3
  292. package/src/providers/notion/trigger-on-database-page-event.d.ts +2 -0
  293. package/src/providers/notion/trigger-on-database-page-event.definition.d.ts +4 -0
  294. package/src/providers/notion/trigger-on-database-page-event.definition.js +63 -0
  295. package/src/providers/notion/trigger-on-database-page-event.js +293 -0
  296. package/src/providers/notion_mcp/endpoints.d.ts +3 -0
  297. package/src/providers/notion_mcp/endpoints.js +3 -0
  298. package/src/providers/notion_mcp/executors.d.ts +3 -0
  299. package/src/providers/notion_mcp/executors.js +176 -0
  300. package/src/providers/notion_mcp/mcp-response.d.ts +86 -0
  301. package/src/providers/notion_mcp/mcp-response.js +314 -0
  302. package/src/providers/odoo/executors.d.ts +3 -0
  303. package/src/providers/odoo/executors.js +32 -0
  304. package/src/providers/odoo/runtime.d.ts +16 -0
  305. package/src/providers/odoo/runtime.js +140 -0
  306. package/src/providers/one_drive/executors.d.ts +3 -0
  307. package/src/providers/one_drive/executors.js +2 -0
  308. package/src/providers/one_drive/trigger-on-item-changed.d.ts +2 -0
  309. package/src/providers/one_drive/trigger-on-item-changed.definition.d.ts +4 -0
  310. package/src/providers/one_drive/trigger-on-item-changed.definition.js +63 -0
  311. package/src/providers/one_drive/trigger-on-item-changed.js +214 -0
  312. package/src/providers/outlook/executors.d.ts +3 -0
  313. package/src/providers/outlook/executors.js +29 -6
  314. package/src/providers/outlook/microsoft-graph.js +17 -6
  315. package/src/providers/outlook/trigger-on-message-received.d.ts +2 -0
  316. package/src/providers/outlook/trigger-on-message-received.definition.d.ts +4 -0
  317. package/src/providers/outlook/trigger-on-message-received.definition.js +93 -0
  318. package/src/providers/outlook/trigger-on-message-received.js +226 -0
  319. package/src/providers/outlook_calendar/executors.js +30 -7
  320. package/src/providers/patsnap_mcp/executors.js +2 -2
  321. package/src/providers/postiz/executors.d.ts +4 -0
  322. package/src/providers/postiz/executors.js +83 -0
  323. package/src/providers/provider-loader.d.ts +5 -0
  324. package/src/providers/provider-loader.js +4 -0
  325. package/src/providers/provider-runtime.d.ts +15 -0
  326. package/src/providers/provider-runtime.js +57 -4
  327. package/src/providers/proworkflow/executors.d.ts +4 -0
  328. package/src/providers/proworkflow/executors.js +135 -0
  329. package/src/providers/registry.generated.js +14 -0
  330. package/src/providers/scrape_creators/catalog.js +1 -1
  331. package/src/providers/scrape_creators/runtime.js +1 -1
  332. package/src/providers/sellersprite_mcp/executors.js +2 -2
  333. package/src/providers/sellersprite_mcp/official-actions.js +3 -2
  334. package/src/providers/sentry/runtime.js +6 -7
  335. package/src/providers/shopify/executors.d.ts +3 -0
  336. package/src/providers/shopify/executors.js +2 -0
  337. package/src/providers/shopify/trigger-on-shop-event.d.ts +2 -0
  338. package/src/providers/shopify/trigger-on-shop-event.definition.d.ts +4 -0
  339. package/src/providers/shopify/trigger-on-shop-event.definition.js +214 -0
  340. package/src/providers/shopify/trigger-on-shop-event.js +165 -0
  341. package/src/providers/slack/actions.js +52 -3
  342. package/src/providers/slack/executors.d.ts +3 -0
  343. package/src/providers/slack/executors.js +2 -0
  344. package/src/providers/slack/runtime.js +58 -21
  345. package/src/providers/slack/trigger-on-message-posted.d.ts +2 -0
  346. package/src/providers/slack/trigger-on-message-posted.definition.d.ts +4 -0
  347. package/src/providers/slack/trigger-on-message-posted.definition.js +80 -0
  348. package/src/providers/slack/trigger-on-message-posted.js +176 -0
  349. package/src/providers/slickdeals/runtime.js +1 -1
  350. package/src/providers/sorftime_mcp/executors.js +2 -2
  351. package/src/providers/spotify/runtime.js +15 -4
  352. package/src/providers/stripe/executors.d.ts +3 -0
  353. package/src/providers/stripe/executors.js +2 -0
  354. package/src/providers/stripe/trigger-on-event.d.ts +2 -0
  355. package/src/providers/stripe/trigger-on-event.definition.d.ts +4 -0
  356. package/src/providers/stripe/trigger-on-event.definition.js +43 -0
  357. package/src/providers/stripe/trigger-on-event.js +212 -0
  358. package/src/providers/telegram/executors.d.ts +3 -0
  359. package/src/providers/telegram/executors.js +2 -0
  360. package/src/providers/telegram/trigger-on-update.d.ts +2 -0
  361. package/src/providers/telegram/trigger-on-update.definition.d.ts +5 -0
  362. package/src/providers/telegram/trigger-on-update.definition.js +78 -0
  363. package/src/providers/telegram/trigger-on-update.js +141 -0
  364. package/src/providers/tikhub/bounded-response.d.ts +1 -1
  365. package/src/providers/tikhub/bounded-response.js +8 -34
  366. package/src/providers/tikhub/endpoint-catalog.js +1 -1
  367. package/src/providers/tikhub/runtime.js +2 -2
  368. package/src/providers/tongdaxin/executors.js +79 -15
  369. package/src/providers/uspto/executors.js +1 -1
  370. package/src/providers/waffo/executors.js +1 -1
  371. package/src/providers/waffo/runtime.js +1 -1
  372. package/src/providers/wecom_mcp/runtime.js +1 -1
  373. package/src/providers/weixin_store/access-token.d.ts +2 -1
  374. package/src/providers/weixin_store/access-token.js +15 -4
  375. package/src/providers/weixin_store/executors.js +97 -12
  376. package/src/providers/wisburg/executors.d.ts +4 -0
  377. package/src/providers/wisburg/executors.js +13 -0
  378. package/src/providers/wisburg/runtime.d.ts +12 -0
  379. package/src/providers/wisburg/runtime.js +133 -0
  380. package/src/providers/woocommerce/executors.d.ts +3 -0
  381. package/src/providers/woocommerce/executors.js +2 -0
  382. package/src/providers/woocommerce/trigger-on-store-event.d.ts +2 -0
  383. package/src/providers/woocommerce/trigger-on-store-event.definition.d.ts +4 -0
  384. package/src/providers/woocommerce/trigger-on-store-event.definition.js +55 -0
  385. package/src/providers/woocommerce/trigger-on-store-event.js +179 -0
  386. package/src/providers/xydc_mcp/executors.js +2 -2
  387. package/src/providers/youtube/executors.js +1 -1
  388. package/src/providers/youtube/runtime.js +1 -1
  389. package/src/providers/zendesk/executors.d.ts +3 -0
  390. package/src/providers/zendesk/executors.js +2 -0
  391. package/src/providers/zendesk/trigger-on-event.d.ts +2 -0
  392. package/src/providers/zendesk/trigger-on-event.definition.d.ts +5 -0
  393. package/src/providers/zendesk/trigger-on-event.definition.js +101 -0
  394. package/src/providers/zendesk/trigger-on-event.js +188 -0
  395. package/src/providers/zerotier/executors.d.ts +9 -0
  396. package/src/providers/zerotier/executors.js +629 -0
  397. package/src/providers/zerotier/runtime.d.ts +54 -0
  398. package/src/providers/zerotier/runtime.js +207 -0
  399. package/src/saas/saas-cleanup-service.d.ts +26 -0
  400. package/src/saas/saas-cleanup-service.js +124 -0
  401. package/src/saas/saas-client.d.ts +86 -0
  402. package/src/saas/saas-client.js +369 -0
  403. package/src/saas/saas-execution-service.d.ts +15 -0
  404. package/src/saas/saas-execution-service.js +21 -0
  405. package/src/saas/saas-oauth-service.d.ts +25 -0
  406. package/src/saas/saas-oauth-service.js +197 -0
  407. package/src/saas/saas-project-service.d.ts +61 -0
  408. package/src/saas/saas-project-service.js +211 -0
  409. package/src/server/actions/action-idempotency.d.ts +1 -0
  410. package/src/server/actions/action-idempotency.js +1 -0
  411. package/src/server/actions/action-runner.d.ts +7 -0
  412. package/src/server/actions/action-runner.js +43 -7
  413. package/src/server/actions/run-log-summary.js +9 -0
  414. package/src/server/api/auth.d.ts +1 -0
  415. package/src/server/api/auth.js +13 -2
  416. package/src/server/api/cache-policy.js +4 -1
  417. package/src/server/api/connection-input.d.ts +7 -1
  418. package/src/server/api/connection-input.js +7 -1
  419. package/src/server/api/connection-routes.d.ts +3 -1
  420. package/src/server/api/connection-routes.js +21 -3
  421. package/src/server/api/http-utils.d.ts +4 -3
  422. package/src/server/api/oauth-completion-page.d.ts +124 -0
  423. package/src/server/api/oauth-completion-page.js +113 -18
  424. package/src/server/api/openapi.js +123 -15
  425. package/src/server/api/policy-input.js +6 -0
  426. package/src/server/api/runtime-api.d.ts +18 -3
  427. package/src/server/api/runtime-api.js +36 -5
  428. package/src/server/api/saas-completion-page.d.ts +2 -0
  429. package/src/server/api/saas-completion-page.js +103 -0
  430. package/src/server/connect-app.d.ts +5 -0
  431. package/src/server/connect-app.js +50 -0
  432. package/src/server/connect-server.d.ts +12 -0
  433. package/src/server/connect-server.js +157 -15
  434. package/src/server/connector-runtime.d.ts +3 -1
  435. package/src/server/connector-runtime.js +5 -2
  436. package/src/server/files/transit-files.js +16 -7
  437. package/src/server/proxy/proxy-runner.d.ts +5 -1
  438. package/src/server/proxy/proxy-runner.js +72 -26
  439. package/src/server/storage/connection-request-store.d.ts +41 -1
  440. package/src/server/storage/connection-request-store.js +245 -20
  441. package/src/server/storage/connection-store.d.ts +16 -0
  442. package/src/server/storage/connection-store.js +119 -0
  443. package/src/server/storage/node-runtime-database.js +3 -3
  444. package/src/server/storage/{postgres-migrations.d.ts → postgres/migrations.d.ts} +2 -2
  445. package/src/server/storage/{postgres-migrations.js → postgres/migrations.js} +1 -1
  446. package/src/server/storage/postgres/runtime-store.d.ts +43 -0
  447. package/src/server/storage/{postgres-runtime-store.js → postgres/runtime-store.js} +59 -94
  448. package/src/server/storage/runtime-database.d.ts +4 -0
  449. package/src/server/storage/runtime-sql.d.ts +1 -1
  450. package/src/server/storage/runtime-sql.js +2 -1
  451. package/src/server/storage/runtime-store.d.ts +1 -0
  452. package/src/server/storage/runtime-token-service.d.ts +2 -0
  453. package/src/server/storage/runtime-token-service.js +3 -0
  454. package/src/server/storage/saas-project-store.d.ts +77 -0
  455. package/src/server/storage/saas-project-store.js +273 -0
  456. package/src/server/storage/{sqlite-runtime-store.d.ts → sqlite/runtime-store.d.ts} +21 -25
  457. package/src/server/storage/{sqlite-runtime-store.js → sqlite/runtime-store.js} +100 -115
  458. package/src/server/storage/trigger-store.d.ts +16 -0
  459. package/src/server/storage/trigger-store.js +96 -0
  460. package/src/triggers/common/config.d.ts +2 -0
  461. package/src/triggers/common/config.js +17 -0
  462. package/src/triggers/common/configOptions.d.ts +13 -0
  463. package/src/triggers/common/configOptions.js +1 -0
  464. package/src/triggers/common/encoding.d.ts +3 -0
  465. package/src/triggers/common/encoding.js +19 -0
  466. package/src/triggers/common/integration.d.ts +115 -0
  467. package/src/triggers/common/integration.js +31 -0
  468. package/src/triggers/common/json.d.ts +6 -0
  469. package/src/triggers/common/json.js +91 -0
  470. package/src/triggers/common/poll.d.ts +41 -0
  471. package/src/triggers/common/poll.js +15 -0
  472. package/src/triggers/common/proxy.d.ts +14 -0
  473. package/src/triggers/common/proxy.js +1 -0
  474. package/src/triggers/common/types.d.ts +42 -0
  475. package/src/triggers/common/types.js +1 -0
  476. package/src/triggers/maintenance.d.ts +40 -0
  477. package/src/triggers/maintenance.js +120 -0
  478. package/src/triggers/metadata.d.ts +8 -0
  479. package/src/triggers/metadata.js +1 -0
  480. package/src/triggers/request.d.ts +33 -0
  481. package/src/triggers/request.js +52 -0
  482. package/src/triggers/resources.d.ts +12 -0
  483. package/src/triggers/resources.js +121 -0
  484. package/src/triggers/signature.d.ts +4 -0
  485. package/src/triggers/signature.js +48 -0
  486. package/src/triggers/store.d.ts +29 -0
  487. package/src/triggers/store.js +1 -0
  488. package/src/triggers/subscriptions.d.ts +22 -0
  489. package/src/triggers/subscriptions.js +220 -0
  490. package/src/triggers/trigger-runner.d.ts +34 -0
  491. package/src/triggers/trigger-runner.js +169 -0
  492. package/src/providers/sentry/scopes.d.ts +0 -1
  493. package/src/providers/sentry/scopes.js +0 -7
  494. package/src/server/storage/postgres-runtime-store.d.ts +0 -39
  495. /package/src/providers/{cloudflare-current-user.d.ts → cloudflare_dns/runtime-user.d.ts} +0 -0
@@ -1319,6 +1319,23 @@
1319
1319
  "type": "string",
1320
1320
  "minLength": 1,
1321
1321
  "description": "Linear resource ID."
1322
+ },
1323
+ "updated_after": {
1324
+ "type": "string",
1325
+ "description": "Only issues updated at or after this ISO 8601 date-time, such as 2026-01-27T15:30:00Z.",
1326
+ "format": "date-time"
1327
+ },
1328
+ "include_archived": {
1329
+ "type": "boolean",
1330
+ "description": "Include archived issues."
1331
+ },
1332
+ "order_by": {
1333
+ "type": "string",
1334
+ "enum": [
1335
+ "createdAt",
1336
+ "updatedAt"
1337
+ ],
1338
+ "description": "Field Linear orders the results by. Linear defaults to createdAt."
1322
1339
  }
1323
1340
  },
1324
1341
  "additionalProperties": false,
@@ -2196,5 +2213,121 @@
2196
2213
  "description": "Linear action output."
2197
2214
  }
2198
2215
  }
2216
+ ],
2217
+ "triggers": [
2218
+ {
2219
+ "configInputs": [
2220
+ {
2221
+ "handle": "teamId",
2222
+ "jsonSchema": {
2223
+ "type": "string",
2224
+ "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
2225
+ "title": "Team ID"
2226
+ },
2227
+ "nullable": false,
2228
+ "description": "Linear Team UUID. Use Copy model UUID in Linear to find it."
2229
+ },
2230
+ {
2231
+ "handle": "stateIds",
2232
+ "jsonSchema": {
2233
+ "type": "array",
2234
+ "items": {
2235
+ "type": "string",
2236
+ "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
2237
+ },
2238
+ "maxItems": 50,
2239
+ "uniqueItems": true,
2240
+ "title": "Issue statuses"
2241
+ },
2242
+ "nullable": false,
2243
+ "value": [],
2244
+ "description": "Choose statuses from the selected Team. Empty means all statuses. Matches the current status, not every transition into it."
2245
+ }
2246
+ ],
2247
+ "definitionVersion": 2,
2248
+ "description": "Watches new and updated issues in a Linear team with periodic checks. Starts from now without running existing issues. Reports observed current states, not deletions or every intermediate status change.",
2249
+ "displayName": "Issue Created or Updated",
2250
+ "key": "linear.on_issue_changed",
2251
+ "name": "on_issue_changed",
2252
+ "outputs": [
2253
+ {
2254
+ "handle": "events",
2255
+ "jsonSchema": {
2256
+ "type": "array",
2257
+ "items": {
2258
+ "type": "object",
2259
+ "properties": {
2260
+ "id": {
2261
+ "type": "string"
2262
+ },
2263
+ "identifier": {
2264
+ "type": "string"
2265
+ },
2266
+ "title": {
2267
+ "type": "string"
2268
+ },
2269
+ "url": {
2270
+ "type": "string"
2271
+ },
2272
+ "teamId": {
2273
+ "type": "string"
2274
+ },
2275
+ "createdAt": {
2276
+ "type": "string"
2277
+ },
2278
+ "updatedAt": {
2279
+ "type": "string"
2280
+ },
2281
+ "state": {
2282
+ "type": "object",
2283
+ "properties": {
2284
+ "id": {
2285
+ "type": "string"
2286
+ },
2287
+ "name": {
2288
+ "type": "string"
2289
+ },
2290
+ "type": {
2291
+ "type": "string"
2292
+ }
2293
+ },
2294
+ "additionalProperties": false,
2295
+ "required": [
2296
+ "id",
2297
+ "name",
2298
+ "type"
2299
+ ]
2300
+ }
2301
+ },
2302
+ "additionalProperties": false,
2303
+ "required": [
2304
+ "id",
2305
+ "identifier",
2306
+ "title",
2307
+ "url",
2308
+ "teamId",
2309
+ "createdAt",
2310
+ "updatedAt",
2311
+ "state"
2312
+ ]
2313
+ }
2314
+ },
2315
+ "nullable": false
2316
+ }
2317
+ ],
2318
+ "provider": "linear",
2319
+ "type": "poll"
2320
+ }
2321
+ ],
2322
+ "triggerPermissions": [
2323
+ {
2324
+ "id": "linear.on_issue_changed",
2325
+ "name": "Issue Created or Updated",
2326
+ "description": "Queries issues and configuration options to detect newly created or updated issues matching the selected filters.",
2327
+ "providerPermissions": [
2328
+ "read"
2329
+ ],
2330
+ "instructions": "Grant read access to the selected workspace and teams. API key access is limited by the key owner and selected teams."
2331
+ }
2199
2332
  ]
2200
2333
  }
@@ -0,0 +1,510 @@
1
+ {
2
+ "service": "linear_mcp",
3
+ "displayName": "Linear MCP",
4
+ "description": "Read Linear issues and comments through Linear's official remote MCP server.",
5
+ "categories": [
6
+ "Productivity",
7
+ "Developer Tools"
8
+ ],
9
+ "authTypes": [
10
+ "oauth2"
11
+ ],
12
+ "auth": [
13
+ {
14
+ "type": "oauth2",
15
+ "authorizationUrl": "https://mcp.linear.app/authorize",
16
+ "tokenUrl": "https://mcp.linear.app/token",
17
+ "scopes": [
18
+ "read"
19
+ ],
20
+ "tokenEndpointAuthMethod": "none",
21
+ "pkce": {
22
+ "method": "S256"
23
+ },
24
+ "authorizationParams": {
25
+ "resource": "https://mcp.linear.app/mcp"
26
+ },
27
+ "clientSetup": {
28
+ "docsUrl": "https://linear.app/docs/mcp",
29
+ "steps": [
30
+ "Copy the Callback URL shown below.",
31
+ "POST {\"client_name\":\"Open Connector\",\"redirect_uris\":[\"<Callback URL>\"],\"grant_types\":[\"authorization_code\",\"refresh_token\"],\"response_types\":[\"code\"],\"token_endpoint_auth_method\":\"none\",\"scope\":\"read\"} as JSON to https://mcp.linear.app/register.",
32
+ "Copy the returned client_id into the Client ID field below and leave Client Secret empty."
33
+ ]
34
+ }
35
+ }
36
+ ],
37
+ "homepageUrl": "https://linear.app/docs/mcp",
38
+ "actions": [
39
+ {
40
+ "id": "linear_mcp.get_issue",
41
+ "service": "linear_mcp",
42
+ "name": "get_issue",
43
+ "description": "Get one Linear issue with its full description through Linear's MCP get_issue tool.",
44
+ "operationType": "read",
45
+ "requiredScopes": [
46
+ "read"
47
+ ],
48
+ "providerPermissions": [],
49
+ "inputSchema": {
50
+ "type": "object",
51
+ "properties": {
52
+ "id": {
53
+ "type": "string",
54
+ "minLength": 1,
55
+ "description": "Issue ID or human identifier such as ENG-123, as returned by list_issues."
56
+ }
57
+ },
58
+ "additionalProperties": false,
59
+ "required": [
60
+ "id"
61
+ ],
62
+ "description": "The issue to read."
63
+ },
64
+ "outputSchema": {
65
+ "type": "object",
66
+ "properties": {
67
+ "issue": {
68
+ "anyOf": [
69
+ {
70
+ "type": "object",
71
+ "properties": {
72
+ "id": {
73
+ "type": "string",
74
+ "minLength": 1,
75
+ "description": "Issue ID as Linear MCP returned it. This may be the human identifier such as ENG-123 rather than the UUID; see identifier and uuid."
76
+ },
77
+ "identifier": {
78
+ "type": "string",
79
+ "description": "Human identifier such as ENG-123, when known."
80
+ },
81
+ "uuid": {
82
+ "type": "string",
83
+ "description": "Issue UUID, when known."
84
+ },
85
+ "title": {
86
+ "type": "string",
87
+ "description": "Issue title."
88
+ },
89
+ "description": {
90
+ "type": "string",
91
+ "description": "Issue description in Markdown. Linear MCP may clip it in lists; see descriptionTruncated."
92
+ },
93
+ "descriptionTruncated": {
94
+ "type": "boolean",
95
+ "description": "Whether the description carries Linear's truncation marker. Call get_issue for the full text."
96
+ },
97
+ "url": {
98
+ "type": "string",
99
+ "description": "Link to the issue in Linear."
100
+ },
101
+ "state": {
102
+ "type": "string",
103
+ "description": "Workflow state name."
104
+ },
105
+ "priority": {
106
+ "description": "Priority as returned: a number or a label."
107
+ },
108
+ "assignee": {
109
+ "type": "string",
110
+ "description": "Assignee name, when assigned."
111
+ },
112
+ "assigneeId": {
113
+ "type": "string",
114
+ "description": "Assignee user ID, when the record carries one."
115
+ },
116
+ "creator": {
117
+ "type": "string",
118
+ "description": "Creator name, when returned."
119
+ },
120
+ "creatorId": {
121
+ "type": "string",
122
+ "description": "Creator user ID, when the record carries one."
123
+ },
124
+ "team": {
125
+ "type": "string",
126
+ "description": "Team name or key."
127
+ },
128
+ "project": {
129
+ "type": "string",
130
+ "description": "Project name, when the issue belongs to one."
131
+ },
132
+ "labels": {
133
+ "type": "array",
134
+ "items": {
135
+ "type": "string",
136
+ "minLength": 1
137
+ },
138
+ "description": "Label names."
139
+ },
140
+ "createdAt": {
141
+ "type": "string",
142
+ "description": "Creation time as returned by Linear."
143
+ },
144
+ "updatedAt": {
145
+ "type": "string",
146
+ "description": "Last update time as returned by Linear."
147
+ },
148
+ "archivedAt": {
149
+ "type": "string",
150
+ "description": "Archive time, when archived."
151
+ },
152
+ "completedAt": {
153
+ "type": "string",
154
+ "description": "Completion time, when completed."
155
+ },
156
+ "dueDate": {
157
+ "type": "string",
158
+ "description": "Due date, when set."
159
+ }
160
+ },
161
+ "additionalProperties": true,
162
+ "required": [
163
+ "id"
164
+ ],
165
+ "description": "A Linear issue. Typed fields are lifted from the MCP record when present; fields not listed here are only in the action's raw text."
166
+ },
167
+ {
168
+ "type": "null"
169
+ }
170
+ ]
171
+ },
172
+ "raw": {
173
+ "type": "string",
174
+ "description": "The untouched text Linear's MCP tool returned. Read it when a typed field is missing: Linear can change its MCP output shape without notice."
175
+ }
176
+ },
177
+ "additionalProperties": false,
178
+ "required": [
179
+ "issue",
180
+ "raw"
181
+ ],
182
+ "description": "The requested issue."
183
+ }
184
+ },
185
+ {
186
+ "id": "linear_mcp.get_self",
187
+ "service": "linear_mcp",
188
+ "name": "get_self",
189
+ "description": "Get the signed-in Linear user through Linear's MCP get_user tool.",
190
+ "operationType": "read",
191
+ "requiredScopes": [
192
+ "read"
193
+ ],
194
+ "providerPermissions": [],
195
+ "inputSchema": {
196
+ "type": "object",
197
+ "properties": {},
198
+ "additionalProperties": false
199
+ },
200
+ "outputSchema": {
201
+ "type": "object",
202
+ "properties": {
203
+ "user": {
204
+ "anyOf": [
205
+ {
206
+ "type": "object",
207
+ "properties": {
208
+ "id": {
209
+ "type": "string",
210
+ "minLength": 1,
211
+ "description": "Linear user ID; the same viewer ID the Linear GraphQL API reports."
212
+ },
213
+ "email": {
214
+ "type": "string",
215
+ "description": "The user's email address, when returned."
216
+ },
217
+ "displayName": {
218
+ "type": "string",
219
+ "description": "The user's display name, when returned."
220
+ },
221
+ "name": {
222
+ "type": "string",
223
+ "description": "The user's full name, when returned."
224
+ }
225
+ },
226
+ "additionalProperties": true,
227
+ "required": [
228
+ "id"
229
+ ],
230
+ "description": "The signed-in Linear user."
231
+ },
232
+ {
233
+ "type": "null"
234
+ }
235
+ ]
236
+ },
237
+ "raw": {
238
+ "type": "string",
239
+ "description": "The untouched text Linear's MCP tool returned. Read it when a typed field is missing: Linear can change its MCP output shape without notice."
240
+ }
241
+ },
242
+ "additionalProperties": false,
243
+ "required": [
244
+ "user",
245
+ "raw"
246
+ ],
247
+ "description": "The signed-in user."
248
+ }
249
+ },
250
+ {
251
+ "id": "linear_mcp.list_comments",
252
+ "service": "linear_mcp",
253
+ "name": "list_comments",
254
+ "description": "List the comments on one Linear issue through Linear's MCP list_comments tool.",
255
+ "operationType": "read",
256
+ "requiredScopes": [
257
+ "read"
258
+ ],
259
+ "providerPermissions": [],
260
+ "inputSchema": {
261
+ "type": "object",
262
+ "properties": {
263
+ "issueId": {
264
+ "type": "string",
265
+ "minLength": 1,
266
+ "description": "Issue ID or human identifier such as ENG-123."
267
+ }
268
+ },
269
+ "additionalProperties": false,
270
+ "required": [
271
+ "issueId"
272
+ ],
273
+ "description": "The issue whose comments to read."
274
+ },
275
+ "outputSchema": {
276
+ "type": "object",
277
+ "properties": {
278
+ "comments": {
279
+ "type": "array",
280
+ "items": {
281
+ "type": "object",
282
+ "properties": {
283
+ "id": {
284
+ "type": "string",
285
+ "minLength": 1,
286
+ "description": "Comment ID."
287
+ },
288
+ "body": {
289
+ "type": "string",
290
+ "description": "Comment body in Markdown."
291
+ },
292
+ "user": {
293
+ "type": "string",
294
+ "description": "Author name, when returned."
295
+ },
296
+ "userId": {
297
+ "type": "string",
298
+ "description": "Author user ID, when the record carries one."
299
+ },
300
+ "createdAt": {
301
+ "type": "string",
302
+ "description": "Creation time as returned by Linear."
303
+ },
304
+ "updatedAt": {
305
+ "type": "string",
306
+ "description": "Last edit time, when returned."
307
+ },
308
+ "url": {
309
+ "type": "string",
310
+ "description": "Link to the comment in Linear."
311
+ }
312
+ },
313
+ "additionalProperties": true,
314
+ "required": [
315
+ "id"
316
+ ],
317
+ "description": "A Linear issue comment."
318
+ },
319
+ "description": "Comments as returned, oldest first when Linear orders them."
320
+ },
321
+ "raw": {
322
+ "type": "string",
323
+ "description": "The untouched text Linear's MCP tool returned. Read it when a typed field is missing: Linear can change its MCP output shape without notice."
324
+ }
325
+ },
326
+ "additionalProperties": false,
327
+ "required": [
328
+ "comments",
329
+ "raw"
330
+ ],
331
+ "description": "Comments on the issue."
332
+ }
333
+ },
334
+ {
335
+ "id": "linear_mcp.list_issues",
336
+ "service": "linear_mcp",
337
+ "name": "list_issues",
338
+ "description": "List Linear issues through Linear's MCP list_issues tool with optional updated-since, ordering, limit, and cursor pagination. Descriptions may be clipped; call get_issue for the full text.",
339
+ "operationType": "read",
340
+ "requiredScopes": [
341
+ "read"
342
+ ],
343
+ "providerPermissions": [],
344
+ "inputSchema": {
345
+ "type": "object",
346
+ "properties": {
347
+ "updatedAt": {
348
+ "type": "string",
349
+ "description": "Only issues updated at or after this time, as the tool accepts it (an ISO 8601 timestamp or a relative duration such as -P1D)."
350
+ },
351
+ "orderBy": {
352
+ "type": "string",
353
+ "description": "Sort field, such as updatedAt or createdAt."
354
+ },
355
+ "limit": {
356
+ "type": "integer",
357
+ "minimum": 1,
358
+ "maximum": 250,
359
+ "description": "Maximum number of issues to return on this page."
360
+ },
361
+ "cursor": {
362
+ "type": "string",
363
+ "minLength": 1,
364
+ "description": "Cursor returned by the previous page of the same query."
365
+ }
366
+ },
367
+ "additionalProperties": false,
368
+ "description": "Filters forwarded to Linear's MCP list_issues tool. Which filters the tool honours is decided by Linear's server; unknown values are rejected there."
369
+ },
370
+ "outputSchema": {
371
+ "type": "object",
372
+ "properties": {
373
+ "issues": {
374
+ "type": "array",
375
+ "items": {
376
+ "type": "object",
377
+ "properties": {
378
+ "id": {
379
+ "type": "string",
380
+ "minLength": 1,
381
+ "description": "Issue ID as Linear MCP returned it. This may be the human identifier such as ENG-123 rather than the UUID; see identifier and uuid."
382
+ },
383
+ "identifier": {
384
+ "type": "string",
385
+ "description": "Human identifier such as ENG-123, when known."
386
+ },
387
+ "uuid": {
388
+ "type": "string",
389
+ "description": "Issue UUID, when known."
390
+ },
391
+ "title": {
392
+ "type": "string",
393
+ "description": "Issue title."
394
+ },
395
+ "description": {
396
+ "type": "string",
397
+ "description": "Issue description in Markdown. Linear MCP may clip it in lists; see descriptionTruncated."
398
+ },
399
+ "descriptionTruncated": {
400
+ "type": "boolean",
401
+ "description": "Whether the description carries Linear's truncation marker. Call get_issue for the full text."
402
+ },
403
+ "url": {
404
+ "type": "string",
405
+ "description": "Link to the issue in Linear."
406
+ },
407
+ "state": {
408
+ "type": "string",
409
+ "description": "Workflow state name."
410
+ },
411
+ "priority": {
412
+ "description": "Priority as returned: a number or a label."
413
+ },
414
+ "assignee": {
415
+ "type": "string",
416
+ "description": "Assignee name, when assigned."
417
+ },
418
+ "assigneeId": {
419
+ "type": "string",
420
+ "description": "Assignee user ID, when the record carries one."
421
+ },
422
+ "creator": {
423
+ "type": "string",
424
+ "description": "Creator name, when returned."
425
+ },
426
+ "creatorId": {
427
+ "type": "string",
428
+ "description": "Creator user ID, when the record carries one."
429
+ },
430
+ "team": {
431
+ "type": "string",
432
+ "description": "Team name or key."
433
+ },
434
+ "project": {
435
+ "type": "string",
436
+ "description": "Project name, when the issue belongs to one."
437
+ },
438
+ "labels": {
439
+ "type": "array",
440
+ "items": {
441
+ "type": "string",
442
+ "minLength": 1
443
+ },
444
+ "description": "Label names."
445
+ },
446
+ "createdAt": {
447
+ "type": "string",
448
+ "description": "Creation time as returned by Linear."
449
+ },
450
+ "updatedAt": {
451
+ "type": "string",
452
+ "description": "Last update time as returned by Linear."
453
+ },
454
+ "archivedAt": {
455
+ "type": "string",
456
+ "description": "Archive time, when archived."
457
+ },
458
+ "completedAt": {
459
+ "type": "string",
460
+ "description": "Completion time, when completed."
461
+ },
462
+ "dueDate": {
463
+ "type": "string",
464
+ "description": "Due date, when set."
465
+ }
466
+ },
467
+ "additionalProperties": true,
468
+ "required": [
469
+ "id"
470
+ ],
471
+ "description": "A Linear issue. Typed fields are lifted from the MCP record when present; fields not listed here are only in the action's raw text."
472
+ },
473
+ "description": "Issues on this page."
474
+ },
475
+ "hasNextPage": {
476
+ "type": "boolean",
477
+ "description": "Whether another page follows."
478
+ },
479
+ "cursor": {
480
+ "anyOf": [
481
+ {
482
+ "type": "string",
483
+ "description": "Cursor for the next page, when one is available."
484
+ },
485
+ {
486
+ "type": "null"
487
+ }
488
+ ]
489
+ },
490
+ "raw": {
491
+ "type": "string",
492
+ "description": "The untouched text Linear's MCP tool returned. Read it when a typed field is missing: Linear can change its MCP output shape without notice."
493
+ }
494
+ },
495
+ "additionalProperties": false,
496
+ "required": [
497
+ "issues",
498
+ "hasNextPage",
499
+ "cursor",
500
+ "raw"
501
+ ],
502
+ "description": "One page of issues."
503
+ },
504
+ "followUpActions": [
505
+ "linear_mcp.get_issue",
506
+ "linear_mcp.list_comments"
507
+ ]
508
+ }
509
+ ]
510
+ }