@commandable/integration-data 0.0.5 → 0.0.7

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 (387) hide show
  1. package/dist/credentials-index.d.ts.map +1 -1
  2. package/dist/credentials-index.js +183 -0
  3. package/dist/credentials-index.js.map +1 -1
  4. package/dist/index.d.ts +2 -2
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/loader.d.ts +33 -0
  9. package/dist/loader.d.ts.map +1 -1
  10. package/dist/loader.js +36 -4
  11. package/dist/loader.js.map +1 -1
  12. package/integrations/__tests__/liveHarness.ts +16 -3
  13. package/integrations/airtable/.env.test +9 -0
  14. package/integrations/airtable/.env.test.example +11 -0
  15. package/integrations/airtable/README.md +27 -0
  16. package/integrations/airtable/__tests__/get_handlers.test.ts +43 -5
  17. package/integrations/confluence/.env.test +25 -0
  18. package/integrations/confluence/.env.test.example +36 -0
  19. package/integrations/confluence/README.md +28 -0
  20. package/integrations/confluence/__tests__/get_handlers.test.ts +121 -0
  21. package/integrations/confluence/__tests__/usage_parity.test.ts +14 -0
  22. package/integrations/confluence/__tests__/write_handlers.test.ts +131 -0
  23. package/integrations/confluence/credentials.json +39 -0
  24. package/integrations/confluence/credentials_hint.md +4 -0
  25. package/integrations/confluence/credentials_hint_api_token.md +9 -0
  26. package/integrations/confluence/credentials_hint_oauth_token.md +8 -0
  27. package/integrations/confluence/handlers/add_comment.js +19 -0
  28. package/integrations/confluence/handlers/add_label.js +16 -0
  29. package/integrations/confluence/handlers/create_page.js +22 -0
  30. package/integrations/confluence/handlers/delete_page.js +17 -0
  31. package/integrations/confluence/handlers/get_comments.js +33 -0
  32. package/integrations/confluence/handlers/get_page_children.js +30 -0
  33. package/integrations/confluence/handlers/get_space.js +22 -0
  34. package/integrations/confluence/handlers/list_spaces.js +39 -0
  35. package/integrations/confluence/handlers/read_page.js +49 -0
  36. package/integrations/confluence/handlers/search_pages.js +42 -0
  37. package/integrations/confluence/handlers/update_page.js +42 -0
  38. package/integrations/confluence/manifest.json +85 -0
  39. package/integrations/confluence/prompt.md +55 -0
  40. package/integrations/confluence/schemas/add_comment.json +22 -0
  41. package/integrations/confluence/schemas/add_label.json +19 -0
  42. package/integrations/confluence/schemas/create_page.json +33 -0
  43. package/integrations/confluence/schemas/delete_page.json +23 -0
  44. package/integrations/confluence/schemas/empty.json +6 -0
  45. package/integrations/confluence/schemas/get_comments.json +24 -0
  46. package/integrations/confluence/schemas/get_page_children.json +28 -0
  47. package/integrations/confluence/schemas/get_space.json +18 -0
  48. package/integrations/confluence/schemas/list_spaces.json +36 -0
  49. package/integrations/confluence/schemas/read_page.json +28 -0
  50. package/integrations/confluence/schemas/search_pages.json +26 -0
  51. package/integrations/confluence/schemas/update_page.json +31 -0
  52. package/integrations/github/.env.test +16 -0
  53. package/integrations/github/.env.test.example +17 -0
  54. package/integrations/github/README.md +75 -0
  55. package/integrations/github/__tests__/get_handlers.test.ts +207 -12
  56. package/integrations/github/__tests__/write_handlers.test.ts +323 -55
  57. package/integrations/github/handlers/create_commit.js +10 -2
  58. package/integrations/github/handlers/create_file.js +46 -0
  59. package/integrations/github/handlers/create_pull_request_review.js +10 -0
  60. package/integrations/github/handlers/create_release.js +14 -0
  61. package/integrations/github/handlers/delete_branch.js +8 -0
  62. package/integrations/github/handlers/delete_file.js +22 -0
  63. package/integrations/github/handlers/edit_file.js +52 -0
  64. package/integrations/github/handlers/edit_files.js +107 -0
  65. package/integrations/github/handlers/fork_repo.js +10 -0
  66. package/integrations/github/handlers/get_commit.js +8 -0
  67. package/integrations/github/handlers/get_file_contents.js +21 -0
  68. package/integrations/github/handlers/get_job_logs.js +6 -0
  69. package/integrations/github/handlers/get_latest_release.js +4 -0
  70. package/integrations/github/handlers/get_me.js +4 -0
  71. package/integrations/github/handlers/get_pull_request.js +4 -0
  72. package/integrations/github/handlers/get_pull_request_diff.js +8 -0
  73. package/integrations/github/handlers/get_repo_tree.js +12 -0
  74. package/integrations/github/handlers/get_workflow_run.js +4 -0
  75. package/integrations/github/handlers/list_branches.js +6 -1
  76. package/integrations/github/handlers/list_commits.js +5 -6
  77. package/integrations/github/handlers/list_issue_comments.js +8 -0
  78. package/integrations/github/handlers/list_issues.js +5 -6
  79. package/integrations/github/handlers/list_labels.js +8 -0
  80. package/integrations/github/handlers/list_pull_request_comments.js +8 -0
  81. package/integrations/github/handlers/list_pull_request_files.js +8 -0
  82. package/integrations/github/handlers/list_pull_requests.js +7 -2
  83. package/integrations/github/handlers/list_releases.js +8 -0
  84. package/integrations/github/handlers/list_tags.js +8 -0
  85. package/integrations/github/handlers/list_workflow_runs.js +11 -0
  86. package/integrations/github/handlers/request_pull_request_reviewers.js +10 -0
  87. package/integrations/github/handlers/search_code.js +8 -0
  88. package/integrations/github/handlers/search_issues.js +8 -0
  89. package/integrations/github/handlers/search_pull_requests.js +8 -0
  90. package/integrations/github/handlers/search_repos.js +10 -0
  91. package/integrations/github/handlers/update_pull_request.js +13 -0
  92. package/integrations/github/manifest.json +86 -21
  93. package/integrations/github/prompt.md +36 -0
  94. package/integrations/github/schemas/create_file.json +13 -0
  95. package/integrations/github/schemas/create_pull_request_review.json +17 -0
  96. package/integrations/github/schemas/create_release.json +16 -0
  97. package/integrations/github/schemas/delete_branch.json +10 -0
  98. package/integrations/github/schemas/delete_file.json +13 -0
  99. package/integrations/github/schemas/edit_file.json +26 -0
  100. package/integrations/github/schemas/edit_files.json +39 -0
  101. package/integrations/github/schemas/fork_repo.json +11 -0
  102. package/integrations/github/schemas/get_commit.json +12 -0
  103. package/integrations/github/schemas/get_file_contents.json +11 -0
  104. package/integrations/github/schemas/get_job_logs.json +10 -0
  105. package/integrations/github/schemas/get_pull_request.json +10 -0
  106. package/integrations/github/schemas/get_pull_request_diff.json +10 -0
  107. package/integrations/github/schemas/get_repo_tree.json +12 -0
  108. package/integrations/github/schemas/get_workflow_run.json +10 -0
  109. package/integrations/github/schemas/list_branches.json +12 -0
  110. package/integrations/github/schemas/list_commits.json +5 -3
  111. package/integrations/github/schemas/list_issue_comments.json +12 -0
  112. package/integrations/github/schemas/list_issues.json +4 -2
  113. package/integrations/github/schemas/list_labels.json +11 -0
  114. package/integrations/github/schemas/list_pull_request_comments.json +12 -0
  115. package/integrations/github/schemas/list_pull_request_files.json +12 -0
  116. package/integrations/github/schemas/list_pull_requests.json +7 -1
  117. package/integrations/github/schemas/list_releases.json +11 -0
  118. package/integrations/github/schemas/list_tags.json +11 -0
  119. package/integrations/github/schemas/list_workflow_runs.json +18 -0
  120. package/integrations/github/schemas/request_pull_request_reviewers.json +20 -0
  121. package/integrations/github/schemas/search_code.json +10 -0
  122. package/integrations/github/schemas/search_issues.json +10 -0
  123. package/integrations/github/schemas/search_pull_requests.json +10 -0
  124. package/integrations/github/schemas/search_repos.json +12 -0
  125. package/integrations/github/schemas/update_pull_request.json +15 -0
  126. package/integrations/google-calendar/.env.test.example +11 -0
  127. package/integrations/google-calendar/README.md +41 -0
  128. package/integrations/google-calendar/__tests__/write_and_admin_handlers.test.ts +7 -20
  129. package/integrations/google-calendar/handlers/get_event.js +5 -1
  130. package/integrations/google-calendar/handlers/list_events.js +2 -0
  131. package/integrations/google-calendar/manifest.json +27 -18
  132. package/integrations/google-calendar/prompt.md +68 -0
  133. package/integrations/google-calendar/schemas/id_calendar_event.json +4 -2
  134. package/integrations/google-calendar/schemas/list_events.json +10 -8
  135. package/integrations/google-docs/README.md +30 -0
  136. package/integrations/google-docs/__tests__/get_handlers.test.ts +4 -19
  137. package/integrations/google-docs/__tests__/write_handlers.test.ts +31 -48
  138. package/integrations/google-docs/handlers/read_document.js +189 -0
  139. package/integrations/google-docs/manifest.json +16 -31
  140. package/integrations/google-docs/prompt.md +49 -0
  141. package/integrations/google-docs/schemas/{get_document_text.json → read_document.json} +5 -2
  142. package/integrations/google-docs/todo.md +18 -0
  143. package/integrations/google-drive/README.md +26 -0
  144. package/integrations/google-drive/__tests__/handlers.test.ts +43 -0
  145. package/integrations/google-drive/__tests__/usage_parity.test.ts +9 -0
  146. package/integrations/google-drive/handlers/get_file.js +2 -4
  147. package/integrations/google-drive/handlers/get_file_content.js +41 -0
  148. package/integrations/google-drive/handlers/list_files.js +15 -0
  149. package/integrations/google-drive/handlers/search_files.js +20 -0
  150. package/integrations/google-drive/handlers/share_file.js +20 -0
  151. package/integrations/google-drive/manifest.json +37 -10
  152. package/integrations/google-drive/prompt.md +59 -0
  153. package/integrations/google-drive/schemas/get_file.json +2 -2
  154. package/integrations/google-drive/schemas/get_file_content.json +11 -0
  155. package/integrations/google-drive/schemas/list_files.json +12 -0
  156. package/integrations/google-drive/schemas/search_files.json +14 -0
  157. package/integrations/google-drive/schemas/share_file.json +23 -0
  158. package/integrations/google-gmail/.env.test.example +11 -0
  159. package/integrations/google-gmail/README.md +49 -0
  160. package/integrations/google-gmail/__tests__/get_handlers.test.ts +134 -0
  161. package/integrations/google-gmail/__tests__/usage_parity.test.ts +9 -0
  162. package/integrations/google-gmail/__tests__/write_and_admin_handlers.test.ts +211 -0
  163. package/integrations/google-gmail/credentials.json +57 -0
  164. package/integrations/google-gmail/credentials_hint_oauth_token.md +8 -0
  165. package/integrations/google-gmail/credentials_hint_service_account.md +10 -0
  166. package/integrations/google-gmail/handlers/create_draft_email.js +27 -0
  167. package/integrations/google-gmail/handlers/create_label.js +12 -0
  168. package/integrations/google-gmail/handlers/delete_draft.js +13 -0
  169. package/integrations/google-gmail/handlers/delete_label.js +13 -0
  170. package/integrations/google-gmail/handlers/delete_message.js +13 -0
  171. package/integrations/google-gmail/handlers/delete_thread.js +13 -0
  172. package/integrations/google-gmail/handlers/get_draft.js +6 -0
  173. package/integrations/google-gmail/handlers/get_label.js +6 -0
  174. package/integrations/google-gmail/handlers/get_message.js +14 -0
  175. package/integrations/google-gmail/handlers/get_profile.js +5 -0
  176. package/integrations/google-gmail/handlers/get_thread.js +14 -0
  177. package/integrations/google-gmail/handlers/list_drafts.js +15 -0
  178. package/integrations/google-gmail/handlers/list_labels.js +5 -0
  179. package/integrations/google-gmail/handlers/list_messages.js +19 -0
  180. package/integrations/google-gmail/handlers/list_threads.js +19 -0
  181. package/integrations/google-gmail/handlers/modify_message.js +11 -0
  182. package/integrations/google-gmail/handlers/modify_thread.js +11 -0
  183. package/integrations/google-gmail/handlers/read_email.js +56 -0
  184. package/integrations/google-gmail/handlers/send_draft.js +15 -0
  185. package/integrations/google-gmail/handlers/send_email.js +22 -0
  186. package/integrations/google-gmail/handlers/trash_message.js +6 -0
  187. package/integrations/google-gmail/handlers/trash_thread.js +6 -0
  188. package/integrations/google-gmail/handlers/untrash_message.js +6 -0
  189. package/integrations/google-gmail/handlers/untrash_thread.js +6 -0
  190. package/integrations/google-gmail/handlers/update_label.js +15 -0
  191. package/integrations/google-gmail/manifest.json +44 -0
  192. package/integrations/google-gmail/prompt.md +52 -0
  193. package/integrations/google-gmail/schemas/create_draft_email.json +16 -0
  194. package/integrations/google-gmail/schemas/create_label.json +26 -0
  195. package/integrations/google-gmail/schemas/get_message.json +20 -0
  196. package/integrations/{google-docs/schemas/get_document_structured.json → google-gmail/schemas/get_profile.json} +4 -2
  197. package/integrations/google-gmail/schemas/get_thread.json +20 -0
  198. package/integrations/google-gmail/schemas/id_draft.json +16 -0
  199. package/integrations/google-gmail/schemas/id_label.json +16 -0
  200. package/integrations/google-gmail/schemas/id_message.json +16 -0
  201. package/integrations/google-gmail/schemas/id_thread.json +16 -0
  202. package/integrations/google-gmail/schemas/list_drafts.json +30 -0
  203. package/integrations/{google-sheet/schemas/get_developer_metadata.json → google-gmail/schemas/list_labels.json} +4 -3
  204. package/integrations/google-gmail/schemas/list_messages.json +35 -0
  205. package/integrations/google-gmail/schemas/list_threads.json +35 -0
  206. package/integrations/google-gmail/schemas/modify_message.json +24 -0
  207. package/integrations/google-gmail/schemas/modify_thread.json +24 -0
  208. package/integrations/google-gmail/schemas/read_email.json +10 -0
  209. package/integrations/google-gmail/schemas/send_draft.json +29 -0
  210. package/integrations/google-gmail/schemas/send_email.json +17 -0
  211. package/integrations/google-gmail/schemas/update_label.json +33 -0
  212. package/integrations/google-sheet/README.md +27 -0
  213. package/integrations/google-sheet/__tests__/get_handlers.test.ts +6 -52
  214. package/integrations/google-sheet/__tests__/write_handlers.test.ts +0 -20
  215. package/integrations/google-sheet/handlers/get_spreadsheet.js +2 -0
  216. package/integrations/google-sheet/handlers/read_sheet.js +75 -0
  217. package/integrations/google-sheet/manifest.json +13 -62
  218. package/integrations/google-sheet/prompt.md +49 -0
  219. package/integrations/google-sheet/schemas/get_spreadsheet.json +5 -4
  220. package/integrations/google-sheet/schemas/read_sheet.json +21 -0
  221. package/integrations/google-slides/README.md +28 -0
  222. package/integrations/google-slides/__tests__/get_handlers.test.ts +12 -9
  223. package/integrations/google-slides/handlers/read_presentation.js +51 -0
  224. package/integrations/google-slides/manifest.json +13 -13
  225. package/integrations/google-slides/prompt.md +56 -0
  226. package/integrations/hubspot/.env.test.example +20 -0
  227. package/integrations/hubspot/README.md +48 -0
  228. package/integrations/hubspot/__tests__/get_handlers.test.ts +151 -0
  229. package/integrations/hubspot/__tests__/usage_parity.test.ts +10 -0
  230. package/integrations/hubspot/__tests__/write_handlers.test.ts +244 -0
  231. package/integrations/hubspot/credentials.json +48 -0
  232. package/integrations/hubspot/credentials_hint.md +20 -0
  233. package/integrations/hubspot/credentials_hint_oauth_token.md +16 -0
  234. package/integrations/hubspot/handlers/archive_company.js +13 -0
  235. package/integrations/hubspot/handlers/archive_contact.js +13 -0
  236. package/integrations/hubspot/handlers/archive_deal.js +13 -0
  237. package/integrations/hubspot/handlers/archive_ticket.js +13 -0
  238. package/integrations/hubspot/handlers/create_association.js +18 -0
  239. package/integrations/hubspot/handlers/create_company.js +13 -0
  240. package/integrations/hubspot/handlers/create_contact.js +14 -0
  241. package/integrations/hubspot/handlers/create_deal.js +16 -0
  242. package/integrations/hubspot/handlers/create_note.js +44 -0
  243. package/integrations/hubspot/handlers/create_task.js +48 -0
  244. package/integrations/hubspot/handlers/create_ticket.js +15 -0
  245. package/integrations/hubspot/handlers/get_associations.js +14 -0
  246. package/integrations/hubspot/handlers/get_company.js +18 -0
  247. package/integrations/hubspot/handlers/get_contact.js +18 -0
  248. package/integrations/hubspot/handlers/get_deal.js +18 -0
  249. package/integrations/hubspot/handlers/get_ticket.js +20 -0
  250. package/integrations/hubspot/handlers/list_owners.js +12 -0
  251. package/integrations/hubspot/handlers/list_pipelines.js +5 -0
  252. package/integrations/hubspot/handlers/list_properties.js +11 -0
  253. package/integrations/hubspot/handlers/remove_association.js +22 -0
  254. package/integrations/hubspot/handlers/search_companies.js +43 -0
  255. package/integrations/hubspot/handlers/search_contacts.js +43 -0
  256. package/integrations/hubspot/handlers/search_deals.js +43 -0
  257. package/integrations/hubspot/handlers/search_notes.js +43 -0
  258. package/integrations/hubspot/handlers/search_tasks.js +43 -0
  259. package/integrations/hubspot/handlers/search_tickets.js +43 -0
  260. package/integrations/hubspot/handlers/update_company.js +13 -0
  261. package/integrations/hubspot/handlers/update_contact.js +14 -0
  262. package/integrations/hubspot/handlers/update_deal.js +16 -0
  263. package/integrations/hubspot/handlers/update_task.js +17 -0
  264. package/integrations/hubspot/handlers/update_ticket.js +15 -0
  265. package/integrations/hubspot/manifest.json +230 -0
  266. package/integrations/hubspot/prompt.md +69 -0
  267. package/integrations/hubspot/schemas/archive_company.json +13 -0
  268. package/integrations/hubspot/schemas/archive_contact.json +13 -0
  269. package/integrations/hubspot/schemas/archive_deal.json +9 -0
  270. package/integrations/hubspot/schemas/archive_ticket.json +9 -0
  271. package/integrations/hubspot/schemas/create_association.json +24 -0
  272. package/integrations/hubspot/schemas/create_company.json +14 -0
  273. package/integrations/hubspot/schemas/create_contact.json +15 -0
  274. package/integrations/hubspot/schemas/create_deal.json +20 -0
  275. package/integrations/hubspot/schemas/create_note.json +37 -0
  276. package/integrations/hubspot/schemas/create_task.json +51 -0
  277. package/integrations/hubspot/schemas/create_ticket.json +16 -0
  278. package/integrations/hubspot/schemas/empty.json +6 -0
  279. package/integrations/hubspot/schemas/get_associations.json +30 -0
  280. package/integrations/hubspot/schemas/get_company.json +27 -0
  281. package/integrations/hubspot/schemas/get_contact.json +27 -0
  282. package/integrations/hubspot/schemas/get_deal.json +20 -0
  283. package/integrations/hubspot/schemas/get_ticket.json +20 -0
  284. package/integrations/hubspot/schemas/list_owners.json +25 -0
  285. package/integrations/hubspot/schemas/list_pipelines.json +13 -0
  286. package/integrations/hubspot/schemas/list_properties.json +17 -0
  287. package/integrations/hubspot/schemas/remove_association.json +24 -0
  288. package/integrations/hubspot/schemas/search_companies.json +56 -0
  289. package/integrations/hubspot/schemas/search_contacts.json +56 -0
  290. package/integrations/hubspot/schemas/search_deals.json +43 -0
  291. package/integrations/hubspot/schemas/search_notes.json +43 -0
  292. package/integrations/hubspot/schemas/search_tasks.json +43 -0
  293. package/integrations/hubspot/schemas/search_tickets.json +43 -0
  294. package/integrations/hubspot/schemas/update_company.json +20 -0
  295. package/integrations/hubspot/schemas/update_contact.json +21 -0
  296. package/integrations/hubspot/schemas/update_deal.json +19 -0
  297. package/integrations/hubspot/schemas/update_task.json +31 -0
  298. package/integrations/hubspot/schemas/update_ticket.json +18 -0
  299. package/integrations/jira/.env.test +46 -0
  300. package/integrations/jira/.env.test.example +41 -0
  301. package/integrations/jira/README.md +46 -0
  302. package/integrations/jira/__tests__/get_handlers.test.ts +193 -0
  303. package/integrations/jira/__tests__/usage_parity.test.ts +14 -0
  304. package/integrations/jira/__tests__/write_handlers.test.ts +157 -0
  305. package/integrations/jira/credentials.json +39 -0
  306. package/integrations/jira/credentials_hint.md +4 -0
  307. package/integrations/jira/credentials_hint_api_token.md +6 -0
  308. package/integrations/jira/credentials_hint_oauth_token.md +6 -0
  309. package/integrations/jira/handlers/add_comment.js +9 -0
  310. package/integrations/jira/handlers/assign_issue.js +11 -0
  311. package/integrations/jira/handlers/create_issue.js +37 -0
  312. package/integrations/jira/handlers/create_sprint.js +19 -0
  313. package/integrations/jira/handlers/delete_issue.js +10 -0
  314. package/integrations/jira/handlers/get_backlog_issues.js +13 -0
  315. package/integrations/jira/handlers/get_board.js +6 -0
  316. package/integrations/jira/handlers/get_issue.js +63 -0
  317. package/integrations/jira/handlers/get_issue_comments.js +31 -0
  318. package/integrations/jira/handlers/get_myself.js +14 -0
  319. package/integrations/jira/handlers/get_project.js +28 -0
  320. package/integrations/jira/handlers/get_sprint.js +5 -0
  321. package/integrations/jira/handlers/get_sprint_issues.js +13 -0
  322. package/integrations/jira/handlers/get_transitions.js +23 -0
  323. package/integrations/jira/handlers/list_boards.js +34 -0
  324. package/integrations/jira/handlers/list_projects.js +29 -0
  325. package/integrations/jira/handlers/list_sprints.js +29 -0
  326. package/integrations/jira/handlers/move_issues_to_sprint.js +11 -0
  327. package/integrations/jira/handlers/search_issues.js +43 -0
  328. package/integrations/jira/handlers/search_users.js +21 -0
  329. package/integrations/jira/handlers/transition_issue.js +44 -0
  330. package/integrations/jira/handlers/update_issue.js +40 -0
  331. package/integrations/jira/handlers/update_sprint.js +20 -0
  332. package/integrations/jira/manifest.json +204 -0
  333. package/integrations/jira/prompt.md +80 -0
  334. package/integrations/jira/schemas/add_comment.json +16 -0
  335. package/integrations/jira/schemas/assign_issue.json +16 -0
  336. package/integrations/jira/schemas/create_issue.json +49 -0
  337. package/integrations/jira/schemas/create_sprint.json +29 -0
  338. package/integrations/jira/schemas/delete_issue.json +12 -0
  339. package/integrations/jira/schemas/empty.json +6 -0
  340. package/integrations/jira/schemas/get_backlog_issues.json +33 -0
  341. package/integrations/jira/schemas/get_board.json +13 -0
  342. package/integrations/jira/schemas/get_issue.json +23 -0
  343. package/integrations/jira/schemas/get_issue_comments.json +23 -0
  344. package/integrations/jira/schemas/get_project.json +17 -0
  345. package/integrations/jira/schemas/get_sprint.json +13 -0
  346. package/integrations/jira/schemas/get_sprint_issues.json +33 -0
  347. package/integrations/jira/schemas/get_transitions.json +12 -0
  348. package/integrations/jira/schemas/list_boards.json +27 -0
  349. package/integrations/jira/schemas/list_projects.json +22 -0
  350. package/integrations/jira/schemas/list_sprints.json +29 -0
  351. package/integrations/jira/schemas/move_issues_to_sprint.json +19 -0
  352. package/integrations/jira/schemas/search_issues.json +28 -0
  353. package/integrations/jira/schemas/search_users.json +18 -0
  354. package/integrations/jira/schemas/transition_issue.json +38 -0
  355. package/integrations/jira/schemas/update_issue.json +47 -0
  356. package/integrations/jira/schemas/update_sprint.json +33 -0
  357. package/integrations/new_integration_prompt.md +177 -2
  358. package/integrations/notion/.env.test +10 -0
  359. package/integrations/notion/.env.test.example +13 -0
  360. package/integrations/notion/README.md +42 -0
  361. package/integrations/notion/manifest.json +64 -35
  362. package/integrations/trello/.env.test +6 -0
  363. package/integrations/trello/.env.test.example +9 -0
  364. package/integrations/trello/README.md +50 -0
  365. package/package.json +7 -3
  366. package/integrations/google-calendar/handlers/update_event.js +0 -5
  367. package/integrations/google-calendar/schemas/update_event.json +0 -10
  368. package/integrations/google-docs/handlers/get_document.js +0 -12
  369. package/integrations/google-docs/handlers/get_document_structured.js +0 -6
  370. package/integrations/google-docs/handlers/get_document_text.js +0 -17
  371. package/integrations/google-docs/schemas/get_document.json +0 -11
  372. package/integrations/google-sheet/handlers/batch_clear_values_by_data_filter.js +0 -6
  373. package/integrations/google-sheet/handlers/batch_get_values.js +0 -16
  374. package/integrations/google-sheet/handlers/batch_update_values_by_data_filter.js +0 -16
  375. package/integrations/google-sheet/handlers/get_developer_metadata.js +0 -6
  376. package/integrations/google-sheet/handlers/get_spreadsheet_by_data_filter.js +0 -10
  377. package/integrations/google-sheet/handlers/get_values.js +0 -14
  378. package/integrations/google-sheet/handlers/get_values_by_data_filter.js +0 -14
  379. package/integrations/google-sheet/handlers/search_developer_metadata.js +0 -7
  380. package/integrations/google-sheet/schemas/batch_clear_values_by_data_filter.json +0 -10
  381. package/integrations/google-sheet/schemas/batch_get_values.json +0 -13
  382. package/integrations/google-sheet/schemas/batch_update_values_by_data_filter.json +0 -25
  383. package/integrations/google-sheet/schemas/get_spreadsheet_by_data_filter.json +0 -11
  384. package/integrations/google-sheet/schemas/get_values.json +0 -13
  385. package/integrations/google-sheet/schemas/get_values_by_data_filter.json +0 -17
  386. package/integrations/google-sheet/schemas/search_developer_metadata.json +0 -14
  387. package/integrations/google-slides/handlers/get_presentation.js +0 -6
@@ -0,0 +1,36 @@
1
+ # GitHub coding workflow
2
+
3
+ ## Branch-based workflow
4
+
5
+ Always work on a feature branch, never commit directly to main:
6
+
7
+ 1. `create_branch` from the default branch
8
+ 2. Make changes with `edit_file`, `edit_files`, `create_file`, or `delete_file` -- each call auto-commits to the branch
9
+ 3. `create_pull_request` when done
10
+ 4. `merge_pull_request` with `merge_method: "squash"` to collapse all commits into one clean commit on main
11
+
12
+ Multiple small commits on a feature branch are fine -- they get squash-merged into a single commit.
13
+
14
+ ## Choosing the right write tool
15
+
16
+ - **`edit_file`** -- Surgical edits to a single existing file. Use for most code changes. Each call is a commit.
17
+ - **`edit_files`** -- Atomic multi-file changes (create + edit + delete in one commit). Use when files must change together to stay consistent (e.g. renaming across files, adding a module + updating imports).
18
+ - **`create_file`** -- Create a new file or completely replace an existing file's content. Use for new files or full rewrites.
19
+ - **`delete_file`** -- Remove a file.
20
+
21
+ ## Search/replace rules for edit_file and edit_files
22
+
23
+ The `old_text` field must be an **exact match** of the text currently in the file:
24
+
25
+ - Whitespace matters: spaces, tabs, and indentation must match exactly
26
+ - Line breaks matter: include the exact newline characters
27
+ - Include enough surrounding context to uniquely identify the location
28
+ - Each edit replaces the **first occurrence** only. To replace multiple occurrences, use separate edits.
29
+
30
+ **Before editing**, call `get_file_contents` to see the file's current content. This avoids failed edits from stale or incorrect assumptions about file content.
31
+
32
+ ## Reading before writing
33
+
34
+ - Use `get_repo_tree` to discover the project structure and file paths
35
+ - Use `get_file_contents` to read a file before editing it
36
+ - Use `search_code` to find where something is defined or used across the repo
@@ -0,0 +1,13 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch to commit to" },
7
+ "path": { "type": "string", "description": "File path to create (e.g. 'src/utils/helpers.ts')" },
8
+ "content": { "type": "string", "description": "Plain text file content" },
9
+ "message": { "type": "string", "description": "Commit message" }
10
+ },
11
+ "required": ["owner", "repo", "branch", "path", "content", "message"],
12
+ "additionalProperties": false
13
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" },
7
+ "event": {
8
+ "type": "string",
9
+ "enum": ["APPROVE", "REQUEST_CHANGES", "COMMENT"],
10
+ "description": "Review action: APPROVE to approve, REQUEST_CHANGES to request changes, COMMENT to leave a comment only"
11
+ },
12
+ "body": { "type": "string", "description": "Review summary comment (required when event is REQUEST_CHANGES or COMMENT)" },
13
+ "commit_id": { "type": "string", "description": "SHA of the commit to review. Defaults to the latest commit on the PR." }
14
+ },
15
+ "required": ["owner", "repo", "pull_number", "event"],
16
+ "additionalProperties": false
17
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "tag_name": { "type": "string", "description": "Tag to create the release from (e.g. 'v1.2.0'). The tag must already exist or target_commitish must be provided." },
7
+ "name": { "type": "string", "description": "Release title (defaults to tag_name)" },
8
+ "body": { "type": "string", "description": "Release notes in markdown" },
9
+ "draft": { "type": "boolean", "description": "Create as an unpublished draft release", "default": false },
10
+ "prerelease": { "type": "boolean", "description": "Mark as a pre-release (alpha, beta, rc, etc.)", "default": false },
11
+ "target_commitish": { "type": "string", "description": "Branch name or commit SHA to tag from (defaults to the repo's default branch). Required if the tag does not yet exist." },
12
+ "generate_release_notes": { "type": "boolean", "description": "Auto-generate release notes from commits merged since the previous release", "default": false }
13
+ },
14
+ "required": ["owner", "repo", "tag_name"],
15
+ "additionalProperties": false
16
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch name to delete (e.g. 'feature/my-feature')" }
7
+ },
8
+ "required": ["owner", "repo", "branch"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "path": { "type": "string", "description": "Path of the file to delete (e.g. 'src/old-file.js')" },
7
+ "message": { "type": "string", "description": "Commit message" },
8
+ "sha": { "type": "string", "description": "Optional blob SHA. If omitted, the SHA is fetched automatically." },
9
+ "branch": { "type": "string", "description": "Branch to delete the file from (defaults to the repo's default branch)" }
10
+ },
11
+ "required": ["owner", "repo", "path", "message"],
12
+ "additionalProperties": false
13
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch to commit to" },
7
+ "path": { "type": "string", "description": "Path of the file to edit (e.g. 'src/index.ts')" },
8
+ "edits": {
9
+ "type": "array",
10
+ "description": "Search/replace operations applied in order. Each old_text must match the file content exactly, including whitespace and indentation.",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "old_text": { "type": "string", "description": "Exact text to find in the file" },
15
+ "new_text": { "type": "string", "description": "Text to replace it with" }
16
+ },
17
+ "required": ["old_text", "new_text"],
18
+ "additionalProperties": false
19
+ },
20
+ "minItems": 1
21
+ },
22
+ "message": { "type": "string", "description": "Commit message" }
23
+ },
24
+ "required": ["owner", "repo", "branch", "path", "edits", "message"],
25
+ "additionalProperties": false
26
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch to commit to" },
7
+ "message": { "type": "string", "description": "Commit message" },
8
+ "files": {
9
+ "type": "array",
10
+ "description": "Files to create, edit, or delete in this commit",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "path": { "type": "string", "description": "File path in the repository" },
15
+ "action": { "type": "string", "enum": ["create", "edit", "delete"], "description": "'create': new file or overwrite with content. 'edit': apply search/replace edits to existing file. 'delete': remove the file." },
16
+ "content": { "type": "string", "description": "Full file content (required for 'create' action)" },
17
+ "edits": {
18
+ "type": "array",
19
+ "description": "Search/replace pairs (required for 'edit' action). Each old_text must match exactly, including whitespace.",
20
+ "items": {
21
+ "type": "object",
22
+ "properties": {
23
+ "old_text": { "type": "string", "description": "Exact text to find" },
24
+ "new_text": { "type": "string", "description": "Text to replace it with" }
25
+ },
26
+ "required": ["old_text", "new_text"],
27
+ "additionalProperties": false
28
+ }
29
+ }
30
+ },
31
+ "required": ["path", "action"],
32
+ "additionalProperties": false
33
+ },
34
+ "minItems": 1
35
+ }
36
+ },
37
+ "required": ["owner", "repo", "branch", "message", "files"],
38
+ "additionalProperties": false
39
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner to fork from" },
5
+ "repo": { "type": "string", "description": "Repository name to fork" },
6
+ "organization": { "type": "string", "description": "Organization to fork into (defaults to the authenticated user's account)" },
7
+ "name": { "type": "string", "description": "New name for the forked repository (defaults to the original name)" }
8
+ },
9
+ "required": ["owner", "repo"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "sha": { "type": "string", "description": "Commit SHA, branch name, or tag name" },
7
+ "page": { "type": "integer", "default": 1, "description": "Page for paginating large diffs (when a commit touches many files)" },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["owner", "repo", "sha"],
11
+ "additionalProperties": false
12
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner (user or org)" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "path": { "type": "string", "description": "File path within the repository (e.g. 'src/index.js')" },
7
+ "ref": { "type": "string", "description": "Branch name, tag, or commit SHA (defaults to the repo's default branch)" }
8
+ },
9
+ "required": ["owner", "repo", "path"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "job_id": { "type": "integer", "description": "Workflow job ID. Get this from the 'jobs' field of get_workflow_run, or from the GitHub Actions UI URL." }
7
+ },
8
+ "required": ["owner", "repo", "job_id"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" }
7
+ },
8
+ "required": ["owner", "repo", "pull_number"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" }
7
+ },
8
+ "required": ["owner", "repo", "pull_number"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner (user or org)" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "ref": { "type": "string", "description": "Branch name, tag, or commit SHA (defaults to HEAD)" },
7
+ "recursive": { "type": "boolean", "description": "Return the full recursive tree (all nested files). Default true.", "default": true },
8
+ "path_filter": { "type": "string", "description": "Optional path prefix to filter results (e.g. 'src/')" }
9
+ },
10
+ "required": ["owner", "repo"],
11
+ "additionalProperties": false
12
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "run_id": { "type": "integer", "description": "Workflow run ID (obtain from list_workflow_runs)" }
7
+ },
8
+ "required": ["owner", "repo", "run_id"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "protected": { "type": "boolean", "description": "Filter to only protected branches" },
7
+ "page": { "type": "integer", "default": 1 },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["owner", "repo"],
11
+ "additionalProperties": false
12
+ }
@@ -3,9 +3,11 @@
3
3
  "properties": {
4
4
  "owner": { "type": "string" },
5
5
  "repo": { "type": "string" },
6
- "sha": { "type": "string" },
7
- "path": { "type": "string" },
8
- "author": { "type": "string" }
6
+ "sha": { "type": "string", "description": "Branch name, tag, or commit SHA to start listing from (defaults to default branch)" },
7
+ "path": { "type": "string", "description": "Filter commits that touch this file path" },
8
+ "author": { "type": "string", "description": "Filter by GitHub username or email address" },
9
+ "page": { "type": "integer", "default": 1 },
10
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
11
  },
10
12
  "required": ["owner", "repo"],
11
13
  "additionalProperties": false
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "issue_number": { "type": "integer", "description": "Issue number" },
7
+ "page": { "type": "integer", "default": 1 },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["owner", "repo", "issue_number"],
11
+ "additionalProperties": false
12
+ }
@@ -4,8 +4,10 @@
4
4
  "owner": { "type": "string" },
5
5
  "repo": { "type": "string" },
6
6
  "state": { "type": "string", "enum": ["open", "closed", "all"], "default": "open" },
7
- "labels": { "type": "string" },
8
- "assignee": { "type": "string" }
7
+ "labels": { "type": "string", "description": "Comma-separated list of label names to filter by" },
8
+ "assignee": { "type": "string", "description": "Filter by assignee username, or 'none' for unassigned, '*' for any" },
9
+ "page": { "type": "integer", "default": 1 },
10
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
11
  },
10
12
  "required": ["owner", "repo"],
11
13
  "additionalProperties": false
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "page": { "type": "integer", "default": 1 },
7
+ "per_page": { "type": "integer", "default": 100, "maximum": 100 }
8
+ },
9
+ "required": ["owner", "repo"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" },
7
+ "page": { "type": "integer", "default": 1 },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["owner", "repo", "pull_number"],
11
+ "additionalProperties": false
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" },
7
+ "page": { "type": "integer", "default": 1 },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["owner", "repo", "pull_number"],
11
+ "additionalProperties": false
12
+ }
@@ -3,7 +3,13 @@
3
3
  "properties": {
4
4
  "owner": { "type": "string" },
5
5
  "repo": { "type": "string" },
6
- "state": { "type": "string", "enum": ["open", "closed", "all"], "default": "open" }
6
+ "state": { "type": "string", "enum": ["open", "closed", "all"], "default": "open" },
7
+ "head": { "type": "string", "description": "Filter by head user/org and branch (e.g. 'user:my-branch')" },
8
+ "base": { "type": "string", "description": "Filter by base branch name (e.g. 'main')" },
9
+ "sort": { "type": "string", "enum": ["created", "updated", "popularity", "long-running"], "default": "created" },
10
+ "direction": { "type": "string", "enum": ["asc", "desc"], "default": "desc" },
11
+ "page": { "type": "integer", "default": 1 },
12
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
7
13
  },
8
14
  "required": ["owner", "repo"],
9
15
  "additionalProperties": false
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "page": { "type": "integer", "default": 1 },
7
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
8
+ },
9
+ "required": ["owner", "repo"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "page": { "type": "integer", "default": 1 },
7
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
8
+ },
9
+ "required": ["owner", "repo"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Filter runs by branch name" },
7
+ "status": {
8
+ "type": "string",
9
+ "enum": ["queued", "in_progress", "completed", "action_required", "cancelled", "failure", "neutral", "skipped", "stale", "success", "timed_out", "waiting"],
10
+ "description": "Filter by run status or conclusion"
11
+ },
12
+ "event": { "type": "string", "description": "Filter by triggering event (e.g. 'push', 'pull_request', 'schedule', 'workflow_dispatch')" },
13
+ "page": { "type": "integer", "default": 1 },
14
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
15
+ },
16
+ "required": ["owner", "repo"],
17
+ "additionalProperties": false
18
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" },
7
+ "reviewers": {
8
+ "type": "array",
9
+ "items": { "type": "string" },
10
+ "description": "GitHub usernames to request reviews from"
11
+ },
12
+ "team_reviewers": {
13
+ "type": "array",
14
+ "items": { "type": "string" },
15
+ "description": "Team slugs to request reviews from (org repos only)"
16
+ }
17
+ },
18
+ "required": ["owner", "repo", "pull_number"],
19
+ "additionalProperties": false
20
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "query": { "type": "string", "description": "GitHub code search query. Examples: 'useState repo:facebook/react language:typescript', 'console.log path:src/ language:javascript org:my-org'. Supports language, path, repo, org, and extension filters." },
5
+ "page": { "type": "integer", "default": 1 },
6
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
7
+ },
8
+ "required": ["query"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "query": { "type": "string", "description": "GitHub issue search query (e.g. 'is:open is:issue label:bug repo:owner/repo', 'is:open assignee:@me', 'is:issue no:assignee'). Supports all GitHub search qualifiers." },
5
+ "page": { "type": "integer", "default": 1 },
6
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
7
+ },
8
+ "required": ["query"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "query": { "type": "string", "description": "GitHub search query for PRs. Use 'is:pr' to scope to PRs (e.g. 'is:pr is:open author:octocat label:bug repo:owner/repo'). Supports all GitHub issue search qualifiers." },
5
+ "page": { "type": "integer", "default": 1 },
6
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
7
+ },
8
+ "required": ["query"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "query": { "type": "string", "description": "GitHub repository search query. Examples: 'machine learning language:python stars:>1000', 'topic:react', 'user:facebook is:public'. Supports stars, forks, language, topic, and many other qualifiers." },
5
+ "sort": { "type": "string", "enum": ["stars", "forks", "help-wanted-issues", "updated"], "description": "Sort repos by this field" },
6
+ "order": { "type": "string", "enum": ["asc", "desc"], "default": "desc" },
7
+ "page": { "type": "integer", "default": 1 },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["query"],
11
+ "additionalProperties": false
12
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number to update" },
7
+ "title": { "type": "string", "description": "New title for the PR" },
8
+ "body": { "type": "string", "description": "New description for the PR (markdown)" },
9
+ "state": { "type": "string", "enum": ["open", "closed"], "description": "Set to 'closed' to close the PR without merging" },
10
+ "base": { "type": "string", "description": "New base branch to merge into" },
11
+ "draft": { "type": "boolean", "description": "Set to true to convert to draft, false to mark ready for review" }
12
+ },
13
+ "required": ["owner", "repo", "pull_number"],
14
+ "additionalProperties": false
15
+ }
@@ -0,0 +1,11 @@
1
+ # Google Calendar live integration tests
2
+ # Shared Google credentials live in /.env.test.google — set those up first.
3
+ #
4
+ # Calendar ID to run tests against (defaults to 'primary' if omitted)
5
+ GOOGLE_CALENDAR_TEST_CALENDAR_ID=
6
+ # Set to any non-empty value to enable admin write tests (creates/deletes calendars)
7
+ GOOGLE_CALENDAR_TEST_ADMIN_WRITE=
8
+ # A plain-text quick-add string for the quick_add_event test (e.g. "Lunch tomorrow at noon")
9
+ GOOGLE_CALENDAR_TEST_QUICK_ADD=
10
+ # Calendar ID to use as the move destination in move_event tests
11
+ GOOGLE_CALENDAR_TEST_MOVE_DEST=
@@ -0,0 +1,41 @@
1
+ # Google Calendar
2
+
3
+ **17 tools** across 2 toolsets
4
+
5
+ ![Google Calendar tests](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/theomccabe/771bd329f303087690c522afa1baa6f3/raw/test-google-calendar.json)
6
+
7
+ ## Credential variants
8
+
9
+ | Variant | Label |
10
+ |---|---|
11
+ | `service_account` | Service Account (recommended) _(default)_ |
12
+ | `oauth_token` | OAuth Access Token (short-lived) |
13
+
14
+ ## Toolsets
15
+
16
+ | Toolset | Description |
17
+ |---|---|
18
+ | `events` | Browse, schedule, and manage calendar events |
19
+ | `sharing` | Control who can access calendars |
20
+
21
+ ## Tools
22
+
23
+ | Tool | Scope | Toolset | Description |
24
+ |---|---|---|---|
25
+ | `list_calendars` | read | `events` | List all calendars in the authenticated user's calendar list, including the primary calen… |
26
+ | `get_calendar` | read | `events` | Get details for a specific calendar by ID, including its summary, description, timezone, … |
27
+ | `list_events` | read | `events` | List events in a calendar with optional time range, text search, and pagination. Use cale… |
28
+ | `get_event` | read | `events` | Get a specific event by its ID from a calendar. Returns full event details including summ… |
29
+ | `list_colors` | read | `events` | Get the set of color definitions available for calendars and events. Returns colorId valu… |
30
+ | `freebusy_query` | read | `events` | Query free/busy availability for one or more calendars within a time range. Useful for fi… |
31
+ | `list_settings` | read | `events` | List the authenticated user's Google Calendar settings, such as timezone, date format, an… |
32
+ | `create_event` | write | `events` | Create a new event in a calendar. Required fields: calendarId, summary, start, end. Use {… |
33
+ | `patch_event` | write | `events` | Partially update an event by providing only the fields to change. All other fields are pr… |
34
+ | `delete_event` | write | `events` | Delete an event from a calendar. This permanently removes the event. For recurring events… |
35
+ | `move_event` | write | `events` | Move an event from one calendar to another. Provide the source calendarId, eventId, and t… |
36
+ | `quick_add` | write | `events` | Create an event using a natural language text string. Parses the text to extract event de… |
37
+ | `list_acl` | admin | `sharing` | List the Access Control List (ACL) rules for a calendar. Returns rules defining who has a… |
38
+ | `get_acl` | admin | `sharing` | Get a specific ACL rule by its rule ID for a calendar. Use list_acl to find rule IDs. |
39
+ | `insert_acl` | admin | `sharing` | Add a new ACL rule to grant a user or group access to a calendar. Roles: 'reader' (view),… |
40
+ | `update_acl` | admin | `sharing` | Update an existing ACL rule to change a user's or group's permission level on a calendar.… |
41
+ | `delete_acl` | admin | `sharing` | Remove an ACL rule from a calendar, revoking the associated user's or group's access. Use… |