@oomol-lab/open-connector 1.6.4 → 1.7.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 (320) hide show
  1. package/assets/open-connector/catalog/apps/aisa.json +6394 -0
  2. package/assets/open-connector/catalog/apps/baizhi_mcp.json +135 -0
  3. package/assets/open-connector/catalog/apps/bilibili.json +2586 -0
  4. package/assets/open-connector/catalog/apps/bitwarden.json +1423 -0
  5. package/assets/open-connector/catalog/apps/cronfree.json +303 -0
  6. package/assets/open-connector/catalog/apps/cufinder.json +368 -0
  7. package/assets/open-connector/catalog/apps/discordbot.json +2888 -248
  8. package/assets/open-connector/catalog/apps/drawio_mcp.json +192 -0
  9. package/assets/open-connector/catalog/apps/firecrawl.json +176 -32
  10. package/assets/open-connector/catalog/apps/framejet.json +273 -0
  11. package/assets/open-connector/catalog/apps/futunn.json +2967 -0
  12. package/assets/open-connector/catalog/apps/gmail.json +298 -0
  13. package/assets/open-connector/catalog/apps/google_analytics.json +4 -1
  14. package/assets/open-connector/catalog/apps/google_bigquery.json +4 -1
  15. package/assets/open-connector/catalog/apps/google_search_console.json +4 -1
  16. package/assets/open-connector/catalog/apps/googlecalendar.json +4 -1
  17. package/assets/open-connector/catalog/apps/googlechat.json +694 -7
  18. package/assets/open-connector/catalog/apps/googledocs.json +4 -1
  19. package/assets/open-connector/catalog/apps/googlesheets.json +4 -1
  20. package/assets/open-connector/catalog/apps/granola.json +23 -0
  21. package/assets/open-connector/catalog/apps/investoday_mcp.json +22228 -197
  22. package/assets/open-connector/catalog/apps/ixspy.json +2274 -0
  23. package/assets/open-connector/catalog/apps/keepa.json +3534 -987
  24. package/assets/open-connector/catalog/apps/linear.json +17 -0
  25. package/assets/open-connector/catalog/apps/linear_mcp.json +510 -0
  26. package/assets/open-connector/catalog/apps/moneyforward_mcp.json +1432 -0
  27. package/assets/open-connector/catalog/apps/notion.json +446 -1
  28. package/assets/open-connector/catalog/apps/notion_mcp.json +490 -0
  29. package/assets/open-connector/catalog/apps/odoo.json +619 -0
  30. package/assets/open-connector/catalog/apps/osv.json +663 -0
  31. package/assets/open-connector/catalog/apps/outlook.json +30 -8
  32. package/assets/open-connector/catalog/apps/outlook_calendar.json +23 -2
  33. package/assets/open-connector/catalog/apps/pdf_vector.json +329 -0
  34. package/assets/open-connector/catalog/apps/postiz.json +334 -0
  35. package/assets/open-connector/catalog/apps/proworkflow.json +529 -0
  36. package/assets/open-connector/catalog/apps/pulsetic.json +406 -0
  37. package/assets/open-connector/catalog/apps/sellersprite_mcp.json +2 -1
  38. package/assets/open-connector/catalog/apps/shopee.json +1785 -0
  39. package/assets/open-connector/catalog/apps/slack.json +304 -0
  40. package/assets/open-connector/catalog/apps/slackbot.json +295 -0
  41. package/assets/open-connector/catalog/apps/speak_ai.json +360 -0
  42. package/assets/open-connector/catalog/apps/tencent_docs.json +3 -0
  43. package/assets/open-connector/catalog/apps/wisburg.json +1528 -0
  44. package/assets/open-connector/catalog/apps/youtube.json +4 -1
  45. package/assets/open-connector/catalog/apps/zerotier.json +3319 -0
  46. package/assets/open-connector/catalog/apps/zyhub.json +1585 -0
  47. package/assets/open-connector/catalog/apps-index.json +1 -1
  48. package/package.json +1 -1
  49. package/src/core/cast.d.ts +10 -0
  50. package/src/core/cast.js +14 -0
  51. package/src/core/guarded-fetch.d.ts +6 -3
  52. package/src/core/guarded-fetch.js +6 -3
  53. package/src/core/json-schema.d.ts +5 -1
  54. package/src/core/json-schema.js +14 -2
  55. package/src/core/provider-scenarios.js +67 -13
  56. package/src/core/request.js +4 -1
  57. package/src/core/types.d.ts +10 -1
  58. package/src/mcp.js +10 -7
  59. package/src/oauth/oauth-client-config-service.d.ts +16 -1
  60. package/src/oauth/oauth-client-config-service.js +59 -3
  61. package/src/oauth/oauth-credential-refresh-service.js +3 -1
  62. package/src/oauth/oauth-flow-service.d.ts +6 -0
  63. package/src/oauth/oauth-flow-service.js +21 -4
  64. package/src/oauth/oauth-token.d.ts +13 -0
  65. package/src/providers/17track/runtime.js +1 -1
  66. package/src/providers/action-contracts.generated.d.ts +32 -8
  67. package/src/providers/aifinmarket/runtime.js +1 -1
  68. package/src/providers/aisa/executors.d.ts +4 -0
  69. package/src/providers/aisa/executors.js +864 -0
  70. package/src/providers/aliyun_ack/runtime.js +1 -1
  71. package/src/providers/aliyun_sls/runtime.js +1 -1
  72. package/src/providers/app_store_server/runtime-helpers.js +1 -1
  73. package/src/providers/baizhi_mcp/actions.d.ts +2 -0
  74. package/src/providers/baizhi_mcp/actions.js +40 -0
  75. package/src/providers/baizhi_mcp/executors.d.ts +3 -0
  76. package/src/providers/baizhi_mcp/executors.js +102 -0
  77. package/src/providers/bazhuayu/runtime.js +2 -2
  78. package/src/providers/bilibili/articles.d.ts +3 -0
  79. package/src/providers/bilibili/articles.js +369 -0
  80. package/src/providers/bilibili/executors.d.ts +8 -0
  81. package/src/providers/bilibili/executors.js +262 -0
  82. package/src/providers/bilibili/runtime.d.ts +95 -0
  83. package/src/providers/bilibili/runtime.js +236 -0
  84. package/src/providers/bilibili/upload.d.ts +14 -0
  85. package/src/providers/bilibili/upload.js +107 -0
  86. package/src/providers/bitwarden/executors.d.ts +3 -0
  87. package/src/providers/bitwarden/executors.js +146 -0
  88. package/src/providers/cloudflare_browser_rendering/executors.js +1 -1
  89. package/src/providers/cloudflare_dns/executors.js +1 -1
  90. package/src/providers/{cloudflare-current-user.js → cloudflare_dns/runtime-user.js} +2 -2
  91. package/src/providers/cloudflare_dns/runtime.d.ts +1 -1
  92. package/src/providers/cloudflare_dns/runtime.js +1 -1
  93. package/src/providers/cloudflare_r2/executors.js +1 -1
  94. package/src/providers/cloudflare_r2/runtime.d.ts +1 -1
  95. package/src/providers/cloudflare_r2/runtime.js +1 -1
  96. package/src/providers/cloudflare_worker/executors.js +1 -1
  97. package/src/providers/cloudflare_worker/runtime.d.ts +1 -1
  98. package/src/providers/cloudflare_worker/runtime.js +1 -1
  99. package/src/providers/cronfree/executors.d.ts +4 -0
  100. package/src/providers/cronfree/executors.js +89 -0
  101. package/src/providers/cufinder/executors.d.ts +4 -0
  102. package/src/providers/cufinder/executors.js +105 -0
  103. package/src/providers/dingtalk_mcp/runtime.js +1 -1
  104. package/src/providers/discordbot/executors.d.ts +0 -9
  105. package/src/providers/discordbot/executors.js +9 -101
  106. package/src/providers/discordbot/runtime-guilds.d.ts +3 -0
  107. package/src/providers/discordbot/runtime-guilds.js +464 -0
  108. package/src/providers/discordbot/runtime.d.ts +42 -0
  109. package/src/providers/discordbot/runtime.js +124 -0
  110. package/src/providers/drawio_mcp/executors.d.ts +3 -0
  111. package/src/providers/drawio_mcp/executors.js +19 -0
  112. package/src/providers/drawio_mcp/runtime.d.ts +8 -0
  113. package/src/providers/drawio_mcp/runtime.js +175 -0
  114. package/src/providers/elevenreader/runtime.js +6 -5
  115. package/src/providers/fastmoss_mcp/executors.js +2 -2
  116. package/src/providers/finchina/executors.js +1 -1
  117. package/src/providers/framejet/executors.d.ts +4 -0
  118. package/src/providers/framejet/executors.js +19 -0
  119. package/src/providers/framejet/runtime.d.ts +16 -0
  120. package/src/providers/framejet/runtime.js +148 -0
  121. package/src/providers/futunn/actions.d.ts +2 -0
  122. package/src/providers/futunn/actions.js +152 -0
  123. package/src/providers/futunn/actions.research.d.ts +2 -0
  124. package/src/providers/futunn/actions.research.js +423 -0
  125. package/src/providers/futunn/actions.trading.d.ts +2 -0
  126. package/src/providers/futunn/actions.trading.js +204 -0
  127. package/src/providers/futunn/executors.d.ts +3 -0
  128. package/src/providers/futunn/executors.js +24 -0
  129. package/src/providers/futunn/runtime-research.d.ts +3 -0
  130. package/src/providers/futunn/runtime-research.js +133 -0
  131. package/src/providers/futunn/runtime-trading.d.ts +3 -0
  132. package/src/providers/futunn/runtime-trading.js +39 -0
  133. package/src/providers/futunn/runtime.d.ts +2 -0
  134. package/src/providers/futunn/runtime.js +50 -0
  135. package/src/providers/futunn/transport.d.ts +11 -0
  136. package/src/providers/futunn/transport.js +76 -0
  137. package/src/providers/gildata/executors.js +1 -1
  138. package/src/providers/gmail/attachment-stream.d.ts +2 -0
  139. package/src/providers/gmail/attachment-stream.js +162 -0
  140. package/src/providers/gmail/executors.d.ts +3 -1
  141. package/src/providers/gmail/executors.js +54 -26
  142. package/src/providers/gmail/message.d.ts +6 -8
  143. package/src/providers/gmail/message.js +4 -0
  144. package/src/providers/gmail/scopes.d.ts +32 -0
  145. package/src/providers/gmail/scopes.js +37 -0
  146. package/src/providers/google_analytics/executors.js +2 -2
  147. package/src/providers/google_analytics/scopes.js +6 -1
  148. package/src/providers/google_bigquery/executors.js +2 -2
  149. package/src/providers/google_bigquery/scopes.js +2 -0
  150. package/src/providers/google_search_console/executors.js +2 -2
  151. package/src/providers/google_search_console/scopes.js +2 -0
  152. package/src/providers/googleads/executors.js +1 -1
  153. package/src/providers/googleads/scopes.d.ts +1 -3
  154. package/src/providers/googleads/scopes.js +2 -4
  155. package/src/providers/googlecalendar/executors.js +1 -1
  156. package/src/providers/googlecalendar/runtime-shared.js +2 -2
  157. package/src/providers/googlecalendar/scopes.js +2 -0
  158. package/src/providers/googlechat/executors.d.ts +1 -3
  159. package/src/providers/googlechat/executors.js +219 -28
  160. package/src/providers/googlechat/members.d.ts +55 -0
  161. package/src/providers/googlechat/members.js +293 -0
  162. package/src/providers/googlechat/runtime.d.ts +16 -0
  163. package/src/providers/googlechat/runtime.js +25 -0
  164. package/src/providers/googlechat/scopes.d.ts +22 -3
  165. package/src/providers/googlechat/scopes.js +30 -7
  166. package/src/providers/googledocs/executors.js +1 -1
  167. package/src/providers/googledrive/executors.js +2 -2
  168. package/src/providers/{google-auth.d.ts → googledrive/runtime-auth.d.ts} +2 -2
  169. package/src/providers/{google-auth.js → googledrive/runtime-auth.js} +3 -3
  170. package/src/providers/googledrive/runtime-collaboration.js +1 -1
  171. package/src/providers/{google-runtime.d.ts → googledrive/runtime-request.d.ts} +1 -1
  172. package/src/providers/{google-runtime.js → googledrive/runtime-request.js} +2 -2
  173. package/src/providers/googleforms/executors.js +2 -2
  174. package/src/providers/googleforms/scopes.d.ts +0 -3
  175. package/src/providers/googleforms/scopes.js +2 -6
  176. package/src/providers/googlemeet/executors.js +2 -2
  177. package/src/providers/googlemeet/scopes.d.ts +0 -3
  178. package/src/providers/googlemeet/scopes.js +2 -6
  179. package/src/providers/googlesheets/executors.js +1 -1
  180. package/src/providers/googlesheets/scopes.js +2 -0
  181. package/src/providers/googleslides/executors.js +2 -2
  182. package/src/providers/googleslides/scopes.d.ts +0 -3
  183. package/src/providers/googleslides/scopes.js +2 -6
  184. package/src/providers/googletasks/executors.js +2 -2
  185. package/src/providers/googletasks/scopes.d.ts +0 -3
  186. package/src/providers/googletasks/scopes.js +2 -6
  187. package/src/providers/granola/actions.js +2 -0
  188. package/src/providers/granola/runtime-mcp.js +2 -0
  189. package/src/providers/granola/runtime.js +2 -2
  190. package/src/providers/indiegogo/executors.js +1 -1
  191. package/src/providers/investoday_mcp/executors.js +2 -2
  192. package/src/providers/investoday_mcp/official-actions.js +19 -372
  193. package/src/providers/investoday_mcp/official-tool-types.d.ts +10 -0
  194. package/src/providers/investoday_mcp/official-tool-types.js +4 -0
  195. package/src/providers/investoday_mcp/official-tools/charts.d.ts +2 -0
  196. package/src/providers/investoday_mcp/official-tools/charts.js +32 -0
  197. package/src/providers/investoday_mcp/official-tools/fixed-income.d.ts +2 -0
  198. package/src/providers/investoday_mcp/official-tools/fixed-income.js +326 -0
  199. package/src/providers/investoday_mcp/official-tools/funds.d.ts +2 -0
  200. package/src/providers/investoday_mcp/official-tools/funds.js +1085 -0
  201. package/src/providers/investoday_mcp/official-tools/hong-kong.d.ts +2 -0
  202. package/src/providers/investoday_mcp/official-tools/hong-kong.js +275 -0
  203. package/src/providers/investoday_mcp/official-tools/indices-industries.d.ts +2 -0
  204. package/src/providers/investoday_mcp/official-tools/indices-industries.js +642 -0
  205. package/src/providers/investoday_mcp/official-tools/macro-calendar.d.ts +2 -0
  206. package/src/providers/investoday_mcp/official-tools/macro-calendar.js +398 -0
  207. package/src/providers/investoday_mcp/official-tools/other.d.ts +2 -0
  208. package/src/providers/investoday_mcp/official-tools/other.js +131 -0
  209. package/src/providers/investoday_mcp/official-tools/research-news.d.ts +2 -0
  210. package/src/providers/investoday_mcp/official-tools/research-news.js +302 -0
  211. package/src/providers/investoday_mcp/official-tools/stocks.d.ts +2 -0
  212. package/src/providers/investoday_mcp/official-tools/stocks.js +2829 -0
  213. package/src/providers/ixspy/executors.d.ts +3 -0
  214. package/src/providers/ixspy/executors.js +220 -0
  215. package/src/providers/iyunbiao/runtime.js +2 -2
  216. package/src/providers/keepa/actions.d.ts +1 -1
  217. package/src/providers/keepa/actions.js +371 -149
  218. package/src/providers/keepa/deal-attributes.d.ts +1 -0
  219. package/src/providers/keepa/deal-attributes.js +26 -0
  220. package/src/providers/keepa/runtime.js +212 -18
  221. package/src/providers/kingdee/executors.js +1 -1
  222. package/src/providers/kingdee/runtime.js +2 -2
  223. package/src/providers/kuaidi100/runtime.js +1 -1
  224. package/src/providers/linear/executors.js +12 -9
  225. package/src/providers/linear_mcp/actions.d.ts +47 -0
  226. package/src/providers/linear_mcp/actions.js +102 -0
  227. package/src/providers/linear_mcp/endpoints.d.ts +3 -0
  228. package/src/providers/linear_mcp/endpoints.js +3 -0
  229. package/src/providers/linear_mcp/executors.d.ts +3 -0
  230. package/src/providers/linear_mcp/executors.js +9 -0
  231. package/src/providers/linear_mcp/runtime-mcp.d.ts +15 -0
  232. package/src/providers/linear_mcp/runtime-mcp.js +238 -0
  233. package/src/providers/lingxing_mcp/runtime.js +1 -1
  234. package/src/providers/mcdonalds_cn_mcp/runtime.js +1 -1
  235. package/src/providers/metabase/mcp-runtime.js +1 -1
  236. package/src/providers/moneyforward_mcp/executors.d.ts +3 -0
  237. package/src/providers/moneyforward_mcp/executors.js +11 -0
  238. package/src/providers/moneyforward_mcp/manifest.d.ts +31 -0
  239. package/src/providers/moneyforward_mcp/manifest.js +204 -0
  240. package/src/providers/moneyforward_mcp/runtime.d.ts +18 -0
  241. package/src/providers/moneyforward_mcp/runtime.js +296 -0
  242. package/src/providers/notion/executors.js +39 -3
  243. package/src/providers/notion_mcp/endpoints.d.ts +3 -0
  244. package/src/providers/notion_mcp/endpoints.js +3 -0
  245. package/src/providers/notion_mcp/executors.d.ts +3 -0
  246. package/src/providers/notion_mcp/executors.js +176 -0
  247. package/src/providers/notion_mcp/mcp-response.d.ts +86 -0
  248. package/src/providers/notion_mcp/mcp-response.js +314 -0
  249. package/src/providers/odoo/executors.d.ts +3 -0
  250. package/src/providers/odoo/executors.js +32 -0
  251. package/src/providers/odoo/runtime.d.ts +16 -0
  252. package/src/providers/odoo/runtime.js +140 -0
  253. package/src/providers/osv/executors.d.ts +2 -0
  254. package/src/providers/osv/executors.js +11 -0
  255. package/src/providers/osv/runtime.d.ts +9 -0
  256. package/src/providers/osv/runtime.js +66 -0
  257. package/src/providers/outlook/executors.js +27 -6
  258. package/src/providers/outlook/microsoft-graph.js +17 -6
  259. package/src/providers/outlook_calendar/executors.js +24 -7
  260. package/src/providers/patsnap_mcp/executors.js +2 -2
  261. package/src/providers/pdf_vector/executors.d.ts +4 -0
  262. package/src/providers/pdf_vector/executors.js +108 -0
  263. package/src/providers/postiz/executors.d.ts +4 -0
  264. package/src/providers/postiz/executors.js +83 -0
  265. package/src/providers/provider-runtime.d.ts +18 -0
  266. package/src/providers/provider-runtime.js +60 -4
  267. package/src/providers/proworkflow/executors.d.ts +4 -0
  268. package/src/providers/proworkflow/executors.js +135 -0
  269. package/src/providers/pulsetic/executors.d.ts +4 -0
  270. package/src/providers/pulsetic/executors.js +126 -0
  271. package/src/providers/registry.generated.js +24 -0
  272. package/src/providers/scrape_creators/catalog.js +1 -1
  273. package/src/providers/scrape_creators/runtime.js +1 -1
  274. package/src/providers/sellersprite_mcp/executors.js +2 -2
  275. package/src/providers/sellersprite_mcp/official-actions.js +3 -2
  276. package/src/providers/sentry/runtime.js +6 -7
  277. package/src/providers/shopee/actions.d.ts +2 -0
  278. package/src/providers/shopee/actions.js +474 -0
  279. package/src/providers/shopee/executors.d.ts +3 -0
  280. package/src/providers/shopee/executors.js +85 -0
  281. package/src/providers/shopee/runtime.d.ts +79 -0
  282. package/src/providers/shopee/runtime.js +693 -0
  283. package/src/providers/slack/actions.js +69 -3
  284. package/src/providers/slack/runtime.js +116 -21
  285. package/src/providers/slickdeals/runtime.js +1 -1
  286. package/src/providers/sorftime_mcp/executors.js +2 -2
  287. package/src/providers/speak_ai/executors.d.ts +3 -0
  288. package/src/providers/speak_ai/executors.js +187 -0
  289. package/src/providers/tikhub/bounded-response.d.ts +1 -1
  290. package/src/providers/tikhub/bounded-response.js +8 -34
  291. package/src/providers/tikhub/endpoint-catalog.js +1 -1
  292. package/src/providers/tikhub/runtime.js +2 -2
  293. package/src/providers/tongdaxin/executors.js +79 -15
  294. package/src/providers/tushare/runtime.js +22 -9
  295. package/src/providers/uspto/executors.js +1 -1
  296. package/src/providers/waffo/executors.js +1 -1
  297. package/src/providers/waffo/runtime.js +1 -1
  298. package/src/providers/wecom_mcp/runtime.js +1 -1
  299. package/src/providers/wisburg/executors.d.ts +4 -0
  300. package/src/providers/wisburg/executors.js +13 -0
  301. package/src/providers/wisburg/runtime.d.ts +12 -0
  302. package/src/providers/wisburg/runtime.js +133 -0
  303. package/src/providers/xydc_mcp/executors.js +2 -2
  304. package/src/providers/youtube/executors.js +1 -1
  305. package/src/providers/youtube/runtime.js +1 -1
  306. package/src/providers/zerotier/executors.d.ts +9 -0
  307. package/src/providers/zerotier/executors.js +629 -0
  308. package/src/providers/zerotier/runtime.d.ts +54 -0
  309. package/src/providers/zerotier/runtime.js +207 -0
  310. package/src/providers/zyhub/executors.d.ts +3 -0
  311. package/src/providers/zyhub/executors.js +240 -0
  312. package/src/server/api/openapi.js +12 -2
  313. package/src/server/api/runtime-api.d.ts +8 -1
  314. package/src/server/api/runtime-api.js +19 -1
  315. package/src/server/connect-server.js +10 -2
  316. package/src/server/files/transit-files.d.ts +3 -2
  317. package/src/server/files/transit-files.js +31 -35
  318. package/src/providers/sentry/scopes.d.ts +0 -1
  319. package/src/providers/sentry/scopes.js +0 -7
  320. /package/src/providers/{cloudflare-current-user.d.ts → cloudflare_dns/runtime-user.d.ts} +0 -0
@@ -0,0 +1,619 @@
1
+ {
2
+ "service": "odoo",
3
+ "displayName": "Odoo",
4
+ "description": "Query and modify Odoo models through the legacy JSON-RPC API available in Odoo 14–19. JSON-2 and XML-RPC are not supported by this connector.",
5
+ "categories": [
6
+ "ERP",
7
+ "CRM"
8
+ ],
9
+ "authTypes": [
10
+ "custom_credential"
11
+ ],
12
+ "auth": [
13
+ {
14
+ "type": "custom_credential",
15
+ "fields": [
16
+ {
17
+ "key": "baseUrl",
18
+ "label": "Instance URL",
19
+ "inputType": "text",
20
+ "required": true,
21
+ "secret": false,
22
+ "placeholder": "https://mycompany.odoo.com",
23
+ "description": "Your Odoo instance URL, without /jsonrpc. HTTPS is required by default. A self-hosted runtime can enable OOMOL_CONNECT_ALLOW_PRIVATE_NETWORK to permit private instances and unencrypted HTTP. Use HTTP only on a trusted network; it transmits credentials and data in plaintext. Loopback and cloud metadata targets remain blocked."
24
+ },
25
+ {
26
+ "key": "database",
27
+ "label": "Database",
28
+ "inputType": "text",
29
+ "required": true,
30
+ "secret": false,
31
+ "placeholder": "mycompany",
32
+ "description": "The Odoo database name, not its display label."
33
+ },
34
+ {
35
+ "key": "username",
36
+ "label": "Username",
37
+ "inputType": "text",
38
+ "required": true,
39
+ "secret": false,
40
+ "placeholder": "user@example.com",
41
+ "description": "The login or email of the Odoo user whose access rights will apply."
42
+ },
43
+ {
44
+ "key": "password",
45
+ "label": "Password or API Key",
46
+ "inputType": "password",
47
+ "required": true,
48
+ "secret": true,
49
+ "description": "An Odoo password or API key from Preferences > Account Security. Odoo Online requires an API-enabled plan. Legacy RPC is deprecated since Odoo 19; see https://www.odoo.com/documentation/19.0/developer/reference/external_rpc_api.html."
50
+ }
51
+ ]
52
+ }
53
+ ],
54
+ "homepageUrl": "https://www.odoo.com",
55
+ "actions": [
56
+ {
57
+ "id": "odoo.create",
58
+ "service": "odoo",
59
+ "name": "create",
60
+ "description": "Create one record in an Odoo model. Relational commands may delete related records.",
61
+ "operationType": "destructive",
62
+ "requiredScopes": [],
63
+ "providerPermissions": [],
64
+ "inputSchema": {
65
+ "type": "object",
66
+ "properties": {
67
+ "model": {
68
+ "type": "string",
69
+ "minLength": 1,
70
+ "description": "Technical model name, such as res.partner or sale.order.",
71
+ "pattern": "\\S"
72
+ },
73
+ "values": {
74
+ "type": "object",
75
+ "additionalProperties": true,
76
+ "description": "Field values for the new record, including any relational command arrays."
77
+ },
78
+ "context": {
79
+ "type": "object",
80
+ "additionalProperties": true,
81
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
82
+ }
83
+ },
84
+ "additionalProperties": false,
85
+ "required": [
86
+ "model",
87
+ "values"
88
+ ],
89
+ "description": "Record to create."
90
+ },
91
+ "outputSchema": {
92
+ "type": "object",
93
+ "properties": {
94
+ "id": {
95
+ "type": "integer",
96
+ "minimum": 1,
97
+ "description": "Created record ID."
98
+ }
99
+ },
100
+ "additionalProperties": false,
101
+ "required": [
102
+ "id"
103
+ ],
104
+ "description": "Created record."
105
+ }
106
+ },
107
+ {
108
+ "id": "odoo.execute_kw",
109
+ "service": "odoo",
110
+ "name": "execute_kw",
111
+ "description": "Call a public Odoo model method, including custom methods. The method may modify or delete data.",
112
+ "operationType": "destructive",
113
+ "requiredScopes": [],
114
+ "providerPermissions": [],
115
+ "inputSchema": {
116
+ "type": "object",
117
+ "properties": {
118
+ "model": {
119
+ "type": "string",
120
+ "minLength": 1,
121
+ "description": "Technical model name, such as res.partner or sale.order.",
122
+ "pattern": "\\S"
123
+ },
124
+ "method": {
125
+ "type": "string",
126
+ "minLength": 1,
127
+ "description": "Public model method name, such as action_confirm.",
128
+ "pattern": "\\S"
129
+ },
130
+ "args": {
131
+ "type": "array",
132
+ "items": {
133
+ "description": "Positional argument."
134
+ },
135
+ "description": "Positional arguments. For record methods, pass the record ID array as the first argument."
136
+ },
137
+ "kwargs": {
138
+ "type": "object",
139
+ "additionalProperties": true,
140
+ "description": "Keyword arguments, including context when needed."
141
+ }
142
+ },
143
+ "additionalProperties": false,
144
+ "required": [
145
+ "model",
146
+ "method"
147
+ ],
148
+ "description": "Model method and arguments."
149
+ },
150
+ "outputSchema": {
151
+ "type": "object",
152
+ "properties": {
153
+ "result": {
154
+ "description": "The JSON value returned by the method, without coercion."
155
+ }
156
+ },
157
+ "additionalProperties": false,
158
+ "required": [
159
+ "result"
160
+ ],
161
+ "description": "Model method result."
162
+ }
163
+ },
164
+ {
165
+ "id": "odoo.fields_get",
166
+ "service": "odoo",
167
+ "name": "fields_get",
168
+ "description": "Inspect field types and metadata for an Odoo model.",
169
+ "operationType": "read",
170
+ "requiredScopes": [],
171
+ "providerPermissions": [],
172
+ "inputSchema": {
173
+ "type": "object",
174
+ "properties": {
175
+ "model": {
176
+ "type": "string",
177
+ "minLength": 1,
178
+ "description": "Technical model name, such as res.partner or sale.order.",
179
+ "pattern": "\\S"
180
+ },
181
+ "fields": {
182
+ "type": "array",
183
+ "items": {
184
+ "type": "string",
185
+ "minLength": 1
186
+ },
187
+ "description": "Field names to return. Omit to use Odoo's default field selection."
188
+ },
189
+ "context": {
190
+ "type": "object",
191
+ "additionalProperties": true,
192
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
193
+ },
194
+ "attributes": {
195
+ "type": "array",
196
+ "items": {
197
+ "type": "string",
198
+ "minLength": 1
199
+ },
200
+ "description": "Metadata attributes, such as string, type, help, required, or selection. Omit to return all attributes."
201
+ }
202
+ },
203
+ "additionalProperties": false,
204
+ "required": [
205
+ "model"
206
+ ],
207
+ "description": "Fields and metadata to inspect."
208
+ },
209
+ "outputSchema": {
210
+ "type": "object",
211
+ "properties": {
212
+ "fields": {
213
+ "type": "object",
214
+ "additionalProperties": {
215
+ "type": "object",
216
+ "additionalProperties": true,
217
+ "description": "Field metadata returned by Odoo."
218
+ }
219
+ }
220
+ },
221
+ "additionalProperties": false,
222
+ "required": [
223
+ "fields"
224
+ ],
225
+ "description": "Metadata keyed by field name."
226
+ }
227
+ },
228
+ {
229
+ "id": "odoo.read",
230
+ "service": "odoo",
231
+ "name": "read",
232
+ "description": "Read fields from specific Odoo records.",
233
+ "operationType": "read",
234
+ "requiredScopes": [],
235
+ "providerPermissions": [],
236
+ "inputSchema": {
237
+ "type": "object",
238
+ "properties": {
239
+ "model": {
240
+ "type": "string",
241
+ "minLength": 1,
242
+ "description": "Technical model name, such as res.partner or sale.order.",
243
+ "pattern": "\\S"
244
+ },
245
+ "ids": {
246
+ "type": "array",
247
+ "items": {
248
+ "type": "integer",
249
+ "minimum": 1,
250
+ "description": "Record ID."
251
+ },
252
+ "description": "IDs of the records to operate on.",
253
+ "minItems": 1
254
+ },
255
+ "fields": {
256
+ "type": "array",
257
+ "items": {
258
+ "type": "string",
259
+ "minLength": 1
260
+ },
261
+ "description": "Field names to return. Omit to use Odoo's default field selection."
262
+ },
263
+ "context": {
264
+ "type": "object",
265
+ "additionalProperties": true,
266
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
267
+ }
268
+ },
269
+ "additionalProperties": false,
270
+ "required": [
271
+ "model",
272
+ "ids"
273
+ ],
274
+ "description": "Records and fields to read."
275
+ },
276
+ "outputSchema": {
277
+ "type": "object",
278
+ "properties": {
279
+ "records": {
280
+ "type": "array",
281
+ "items": {
282
+ "type": "object",
283
+ "additionalProperties": true,
284
+ "description": "An Odoo record. Relational fields retain Odoo's JSON representation."
285
+ }
286
+ }
287
+ },
288
+ "additionalProperties": false,
289
+ "required": [
290
+ "records"
291
+ ],
292
+ "description": "Matching records with model-specific fields."
293
+ }
294
+ },
295
+ {
296
+ "id": "odoo.search",
297
+ "service": "odoo",
298
+ "name": "search",
299
+ "description": "Find record IDs matching an Odoo domain.",
300
+ "operationType": "read",
301
+ "requiredScopes": [],
302
+ "providerPermissions": [],
303
+ "inputSchema": {
304
+ "type": "object",
305
+ "properties": {
306
+ "model": {
307
+ "type": "string",
308
+ "minLength": 1,
309
+ "description": "Technical model name, such as res.partner or sale.order.",
310
+ "pattern": "\\S"
311
+ },
312
+ "domain": {
313
+ "type": "array",
314
+ "items": {
315
+ "description": "A domain condition array or prefix operator: &, |, !."
316
+ },
317
+ "description": "Odoo domain in JSON form, for example [[\"is_company\", \"=\", true]]. Use [] to match all records."
318
+ },
319
+ "limit": {
320
+ "type": "integer",
321
+ "minimum": 1,
322
+ "description": "Maximum records to return. Defaults to 100.",
323
+ "default": 100
324
+ },
325
+ "offset": {
326
+ "type": "integer",
327
+ "minimum": 0,
328
+ "description": "Number of matching records to skip."
329
+ },
330
+ "order": {
331
+ "type": "string",
332
+ "minLength": 1,
333
+ "description": "Sort expression, such as name asc, id asc.",
334
+ "pattern": "\\S"
335
+ },
336
+ "context": {
337
+ "type": "object",
338
+ "additionalProperties": true,
339
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
340
+ }
341
+ },
342
+ "additionalProperties": false,
343
+ "required": [
344
+ "model",
345
+ "domain"
346
+ ],
347
+ "description": "Search criteria."
348
+ },
349
+ "outputSchema": {
350
+ "type": "object",
351
+ "properties": {
352
+ "ids": {
353
+ "type": "array",
354
+ "items": {
355
+ "type": "integer",
356
+ "minimum": 1,
357
+ "description": "Record ID."
358
+ }
359
+ }
360
+ },
361
+ "additionalProperties": false,
362
+ "required": [
363
+ "ids"
364
+ ],
365
+ "description": "Matching record IDs."
366
+ }
367
+ },
368
+ {
369
+ "id": "odoo.search_count",
370
+ "service": "odoo",
371
+ "name": "search_count",
372
+ "description": "Count Odoo records matching a domain.",
373
+ "operationType": "read",
374
+ "requiredScopes": [],
375
+ "providerPermissions": [],
376
+ "inputSchema": {
377
+ "type": "object",
378
+ "properties": {
379
+ "model": {
380
+ "type": "string",
381
+ "minLength": 1,
382
+ "description": "Technical model name, such as res.partner or sale.order.",
383
+ "pattern": "\\S"
384
+ },
385
+ "domain": {
386
+ "type": "array",
387
+ "items": {
388
+ "description": "A domain condition array or prefix operator: &, |, !."
389
+ },
390
+ "description": "Odoo domain in JSON form, for example [[\"is_company\", \"=\", true]]. Use [] to match all records."
391
+ },
392
+ "context": {
393
+ "type": "object",
394
+ "additionalProperties": true,
395
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
396
+ }
397
+ },
398
+ "additionalProperties": false,
399
+ "required": [
400
+ "model",
401
+ "domain"
402
+ ],
403
+ "description": "Records to count."
404
+ },
405
+ "outputSchema": {
406
+ "type": "object",
407
+ "properties": {
408
+ "count": {
409
+ "type": "integer",
410
+ "minimum": 0,
411
+ "description": "Record count."
412
+ }
413
+ },
414
+ "additionalProperties": false,
415
+ "required": [
416
+ "count"
417
+ ],
418
+ "description": "Number of matching records."
419
+ }
420
+ },
421
+ {
422
+ "id": "odoo.search_read",
423
+ "service": "odoo",
424
+ "name": "search_read",
425
+ "description": "Search and read Odoo records in one ORM call.",
426
+ "operationType": "read",
427
+ "requiredScopes": [],
428
+ "providerPermissions": [],
429
+ "inputSchema": {
430
+ "type": "object",
431
+ "properties": {
432
+ "model": {
433
+ "type": "string",
434
+ "minLength": 1,
435
+ "description": "Technical model name, such as res.partner or sale.order.",
436
+ "pattern": "\\S"
437
+ },
438
+ "domain": {
439
+ "type": "array",
440
+ "items": {
441
+ "description": "A domain condition array or prefix operator: &, |, !."
442
+ },
443
+ "description": "Odoo domain in JSON form, for example [[\"is_company\", \"=\", true]]. Use [] to match all records."
444
+ },
445
+ "fields": {
446
+ "type": "array",
447
+ "items": {
448
+ "type": "string",
449
+ "minLength": 1
450
+ },
451
+ "description": "Field names to return. Omit to use Odoo's default field selection."
452
+ },
453
+ "limit": {
454
+ "type": "integer",
455
+ "minimum": 1,
456
+ "description": "Maximum records to return. Defaults to 100.",
457
+ "default": 100
458
+ },
459
+ "offset": {
460
+ "type": "integer",
461
+ "minimum": 0,
462
+ "description": "Number of matching records to skip."
463
+ },
464
+ "order": {
465
+ "type": "string",
466
+ "minLength": 1,
467
+ "description": "Sort expression, such as name asc, id asc.",
468
+ "pattern": "\\S"
469
+ },
470
+ "context": {
471
+ "type": "object",
472
+ "additionalProperties": true,
473
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
474
+ }
475
+ },
476
+ "additionalProperties": false,
477
+ "required": [
478
+ "model",
479
+ "domain"
480
+ ],
481
+ "description": "Search criteria and fields to return."
482
+ },
483
+ "outputSchema": {
484
+ "type": "object",
485
+ "properties": {
486
+ "records": {
487
+ "type": "array",
488
+ "items": {
489
+ "type": "object",
490
+ "additionalProperties": true,
491
+ "description": "An Odoo record. Relational fields retain Odoo's JSON representation."
492
+ }
493
+ }
494
+ },
495
+ "additionalProperties": false,
496
+ "required": [
497
+ "records"
498
+ ],
499
+ "description": "Matching records with model-specific fields."
500
+ }
501
+ },
502
+ {
503
+ "id": "odoo.unlink",
504
+ "service": "odoo",
505
+ "name": "unlink",
506
+ "description": "Delete one or more Odoo records.",
507
+ "operationType": "destructive",
508
+ "requiredScopes": [],
509
+ "providerPermissions": [],
510
+ "inputSchema": {
511
+ "type": "object",
512
+ "properties": {
513
+ "model": {
514
+ "type": "string",
515
+ "minLength": 1,
516
+ "description": "Technical model name, such as res.partner or sale.order.",
517
+ "pattern": "\\S"
518
+ },
519
+ "ids": {
520
+ "type": "array",
521
+ "items": {
522
+ "type": "integer",
523
+ "minimum": 1,
524
+ "description": "Record ID."
525
+ },
526
+ "description": "IDs of the records to operate on.",
527
+ "minItems": 1
528
+ },
529
+ "context": {
530
+ "type": "object",
531
+ "additionalProperties": true,
532
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
533
+ }
534
+ },
535
+ "additionalProperties": false,
536
+ "required": [
537
+ "model",
538
+ "ids"
539
+ ],
540
+ "description": "Records to delete."
541
+ },
542
+ "outputSchema": {
543
+ "type": "object",
544
+ "properties": {
545
+ "success": {
546
+ "type": "boolean",
547
+ "description": "Whether Odoo reported success."
548
+ }
549
+ },
550
+ "additionalProperties": false,
551
+ "required": [
552
+ "success"
553
+ ],
554
+ "description": "Deletion result."
555
+ }
556
+ },
557
+ {
558
+ "id": "odoo.write",
559
+ "service": "odoo",
560
+ "name": "write",
561
+ "description": "Update fields on one or more Odoo records. Relational commands may delete related records.",
562
+ "operationType": "destructive",
563
+ "requiredScopes": [],
564
+ "providerPermissions": [],
565
+ "inputSchema": {
566
+ "type": "object",
567
+ "properties": {
568
+ "model": {
569
+ "type": "string",
570
+ "minLength": 1,
571
+ "description": "Technical model name, such as res.partner or sale.order.",
572
+ "pattern": "\\S"
573
+ },
574
+ "ids": {
575
+ "type": "array",
576
+ "items": {
577
+ "type": "integer",
578
+ "minimum": 1,
579
+ "description": "Record ID."
580
+ },
581
+ "description": "IDs of the records to operate on.",
582
+ "minItems": 1
583
+ },
584
+ "values": {
585
+ "type": "object",
586
+ "additionalProperties": true,
587
+ "description": "Field values to update, including any relational command arrays."
588
+ },
589
+ "context": {
590
+ "type": "object",
591
+ "additionalProperties": true,
592
+ "description": "Odoo context, such as lang, tz, or allowed_company_ids."
593
+ }
594
+ },
595
+ "additionalProperties": false,
596
+ "required": [
597
+ "model",
598
+ "ids",
599
+ "values"
600
+ ],
601
+ "description": "Records and values to update."
602
+ },
603
+ "outputSchema": {
604
+ "type": "object",
605
+ "properties": {
606
+ "success": {
607
+ "type": "boolean",
608
+ "description": "Whether Odoo reported success."
609
+ }
610
+ },
611
+ "additionalProperties": false,
612
+ "required": [
613
+ "success"
614
+ ],
615
+ "description": "Update result."
616
+ }
617
+ }
618
+ ]
619
+ }