@mcp-z/mcp-sheets 1.0.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 (363) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +181 -0
  3. package/bin/server.js +5 -0
  4. package/dist/cjs/constants.d.cts +7 -0
  5. package/dist/cjs/constants.d.ts +7 -0
  6. package/dist/cjs/constants.js +18 -0
  7. package/dist/cjs/constants.js.map +1 -0
  8. package/dist/cjs/index.d.cts +8 -0
  9. package/dist/cjs/index.d.ts +8 -0
  10. package/dist/cjs/index.js +314 -0
  11. package/dist/cjs/index.js.map +1 -0
  12. package/dist/cjs/lib/create-store.d.cts +2 -0
  13. package/dist/cjs/lib/create-store.d.ts +2 -0
  14. package/dist/cjs/lib/create-store.js +166 -0
  15. package/dist/cjs/lib/create-store.js.map +1 -0
  16. package/dist/cjs/mcp/index.d.cts +3 -0
  17. package/dist/cjs/mcp/index.d.ts +3 -0
  18. package/dist/cjs/mcp/index.js +66 -0
  19. package/dist/cjs/mcp/index.js.map +1 -0
  20. package/dist/cjs/mcp/prompts/a1-notation.d.cts +19 -0
  21. package/dist/cjs/mcp/prompts/a1-notation.d.ts +19 -0
  22. package/dist/cjs/mcp/prompts/a1-notation.js +169 -0
  23. package/dist/cjs/mcp/prompts/a1-notation.js.map +1 -0
  24. package/dist/cjs/mcp/prompts/index.d.cts +1 -0
  25. package/dist/cjs/mcp/prompts/index.d.ts +1 -0
  26. package/dist/cjs/mcp/prompts/index.js +17 -0
  27. package/dist/cjs/mcp/prompts/index.js.map +1 -0
  28. package/dist/cjs/mcp/resources/index.d.cts +1 -0
  29. package/dist/cjs/mcp/resources/index.d.ts +1 -0
  30. package/dist/cjs/mcp/resources/index.js +17 -0
  31. package/dist/cjs/mcp/resources/index.js.map +1 -0
  32. package/dist/cjs/mcp/resources/spreadsheet.d.cts +2 -0
  33. package/dist/cjs/mcp/resources/spreadsheet.d.ts +2 -0
  34. package/dist/cjs/mcp/resources/spreadsheet.js +258 -0
  35. package/dist/cjs/mcp/resources/spreadsheet.js.map +1 -0
  36. package/dist/cjs/mcp/tools/cells-format.d.cts +144 -0
  37. package/dist/cjs/mcp/tools/cells-format.d.ts +144 -0
  38. package/dist/cjs/mcp/tools/cells-format.js +484 -0
  39. package/dist/cjs/mcp/tools/cells-format.js.map +1 -0
  40. package/dist/cjs/mcp/tools/chart-create.d.cts +94 -0
  41. package/dist/cjs/mcp/tools/chart-create.d.ts +94 -0
  42. package/dist/cjs/mcp/tools/chart-create.js +575 -0
  43. package/dist/cjs/mcp/tools/chart-create.js.map +1 -0
  44. package/dist/cjs/mcp/tools/columns-get.d.cts +55 -0
  45. package/dist/cjs/mcp/tools/columns-get.d.ts +55 -0
  46. package/dist/cjs/mcp/tools/columns-get.js +289 -0
  47. package/dist/cjs/mcp/tools/columns-get.js.map +1 -0
  48. package/dist/cjs/mcp/tools/columns-update.d.cts +86 -0
  49. package/dist/cjs/mcp/tools/columns-update.d.ts +86 -0
  50. package/dist/cjs/mcp/tools/columns-update.js +482 -0
  51. package/dist/cjs/mcp/tools/columns-update.js.map +1 -0
  52. package/dist/cjs/mcp/tools/csv-get-columns.d.cts +43 -0
  53. package/dist/cjs/mcp/tools/csv-get-columns.d.ts +43 -0
  54. package/dist/cjs/mcp/tools/csv-get-columns.js +386 -0
  55. package/dist/cjs/mcp/tools/csv-get-columns.js.map +1 -0
  56. package/dist/cjs/mcp/tools/dimensions-batch-update.d.cts +118 -0
  57. package/dist/cjs/mcp/tools/dimensions-batch-update.d.ts +118 -0
  58. package/dist/cjs/mcp/tools/dimensions-batch-update.js +504 -0
  59. package/dist/cjs/mcp/tools/dimensions-batch-update.js.map +1 -0
  60. package/dist/cjs/mcp/tools/dimensions-move.d.cts +86 -0
  61. package/dist/cjs/mcp/tools/dimensions-move.d.ts +86 -0
  62. package/dist/cjs/mcp/tools/dimensions-move.js +359 -0
  63. package/dist/cjs/mcp/tools/dimensions-move.js.map +1 -0
  64. package/dist/cjs/mcp/tools/index.d.cts +26 -0
  65. package/dist/cjs/mcp/tools/index.d.ts +26 -0
  66. package/dist/cjs/mcp/tools/index.js +122 -0
  67. package/dist/cjs/mcp/tools/index.js.map +1 -0
  68. package/dist/cjs/mcp/tools/lib/dimension-operations.d.cts +48 -0
  69. package/dist/cjs/mcp/tools/lib/dimension-operations.d.ts +48 -0
  70. package/dist/cjs/mcp/tools/lib/dimension-operations.js +177 -0
  71. package/dist/cjs/mcp/tools/lib/dimension-operations.js.map +1 -0
  72. package/dist/cjs/mcp/tools/rows-append.d.cts +58 -0
  73. package/dist/cjs/mcp/tools/rows-append.d.ts +58 -0
  74. package/dist/cjs/mcp/tools/rows-append.js +335 -0
  75. package/dist/cjs/mcp/tools/rows-append.js.map +1 -0
  76. package/dist/cjs/mcp/tools/rows-csv-append.d.cts +67 -0
  77. package/dist/cjs/mcp/tools/rows-csv-append.d.ts +67 -0
  78. package/dist/cjs/mcp/tools/rows-csv-append.js +859 -0
  79. package/dist/cjs/mcp/tools/rows-csv-append.js.map +1 -0
  80. package/dist/cjs/mcp/tools/rows-get.d.cts +56 -0
  81. package/dist/cjs/mcp/tools/rows-get.d.ts +56 -0
  82. package/dist/cjs/mcp/tools/rows-get.js +292 -0
  83. package/dist/cjs/mcp/tools/rows-get.js.map +1 -0
  84. package/dist/cjs/mcp/tools/sheet-copy-to.d.cts +68 -0
  85. package/dist/cjs/mcp/tools/sheet-copy-to.d.ts +68 -0
  86. package/dist/cjs/mcp/tools/sheet-copy-to.js +341 -0
  87. package/dist/cjs/mcp/tools/sheet-copy-to.js.map +1 -0
  88. package/dist/cjs/mcp/tools/sheet-copy.d.cts +80 -0
  89. package/dist/cjs/mcp/tools/sheet-copy.d.ts +80 -0
  90. package/dist/cjs/mcp/tools/sheet-copy.js +394 -0
  91. package/dist/cjs/mcp/tools/sheet-copy.js.map +1 -0
  92. package/dist/cjs/mcp/tools/sheet-create.d.cts +56 -0
  93. package/dist/cjs/mcp/tools/sheet-create.d.ts +56 -0
  94. package/dist/cjs/mcp/tools/sheet-create.js +283 -0
  95. package/dist/cjs/mcp/tools/sheet-create.js.map +1 -0
  96. package/dist/cjs/mcp/tools/sheet-delete.d.cts +62 -0
  97. package/dist/cjs/mcp/tools/sheet-delete.d.ts +62 -0
  98. package/dist/cjs/mcp/tools/sheet-delete.js +341 -0
  99. package/dist/cjs/mcp/tools/sheet-delete.js.map +1 -0
  100. package/dist/cjs/mcp/tools/sheet-find.d.cts +48 -0
  101. package/dist/cjs/mcp/tools/sheet-find.d.ts +48 -0
  102. package/dist/cjs/mcp/tools/sheet-find.js +261 -0
  103. package/dist/cjs/mcp/tools/sheet-find.js.map +1 -0
  104. package/dist/cjs/mcp/tools/sheet-rename.d.cts +60 -0
  105. package/dist/cjs/mcp/tools/sheet-rename.d.ts +60 -0
  106. package/dist/cjs/mcp/tools/sheet-rename.js +305 -0
  107. package/dist/cjs/mcp/tools/sheet-rename.js.map +1 -0
  108. package/dist/cjs/mcp/tools/spreadsheet-copy.d.cts +58 -0
  109. package/dist/cjs/mcp/tools/spreadsheet-copy.d.ts +58 -0
  110. package/dist/cjs/mcp/tools/spreadsheet-copy.js +319 -0
  111. package/dist/cjs/mcp/tools/spreadsheet-copy.js.map +1 -0
  112. package/dist/cjs/mcp/tools/spreadsheet-create.d.cts +52 -0
  113. package/dist/cjs/mcp/tools/spreadsheet-create.d.ts +52 -0
  114. package/dist/cjs/mcp/tools/spreadsheet-create.js +270 -0
  115. package/dist/cjs/mcp/tools/spreadsheet-create.js.map +1 -0
  116. package/dist/cjs/mcp/tools/spreadsheet-find.d.cts +58 -0
  117. package/dist/cjs/mcp/tools/spreadsheet-find.d.ts +58 -0
  118. package/dist/cjs/mcp/tools/spreadsheet-find.js +334 -0
  119. package/dist/cjs/mcp/tools/spreadsheet-find.js.map +1 -0
  120. package/dist/cjs/mcp/tools/spreadsheet-rename.d.cts +56 -0
  121. package/dist/cjs/mcp/tools/spreadsheet-rename.d.ts +56 -0
  122. package/dist/cjs/mcp/tools/spreadsheet-rename.js +289 -0
  123. package/dist/cjs/mcp/tools/spreadsheet-rename.js.map +1 -0
  124. package/dist/cjs/mcp/tools/validation-set.d.cts +144 -0
  125. package/dist/cjs/mcp/tools/validation-set.d.ts +144 -0
  126. package/dist/cjs/mcp/tools/validation-set.js +564 -0
  127. package/dist/cjs/mcp/tools/validation-set.js.map +1 -0
  128. package/dist/cjs/mcp/tools/values-batch-update.d.cts +102 -0
  129. package/dist/cjs/mcp/tools/values-batch-update.d.ts +102 -0
  130. package/dist/cjs/mcp/tools/values-batch-update.js +409 -0
  131. package/dist/cjs/mcp/tools/values-batch-update.js.map +1 -0
  132. package/dist/cjs/mcp/tools/values-clear.d.cts +56 -0
  133. package/dist/cjs/mcp/tools/values-clear.d.ts +56 -0
  134. package/dist/cjs/mcp/tools/values-clear.js +308 -0
  135. package/dist/cjs/mcp/tools/values-clear.js.map +1 -0
  136. package/dist/cjs/mcp/tools/values-csv-update.d.cts +75 -0
  137. package/dist/cjs/mcp/tools/values-csv-update.d.ts +75 -0
  138. package/dist/cjs/mcp/tools/values-csv-update.js +500 -0
  139. package/dist/cjs/mcp/tools/values-csv-update.js.map +1 -0
  140. package/dist/cjs/mcp/tools/values-replace.d.cts +68 -0
  141. package/dist/cjs/mcp/tools/values-replace.d.ts +68 -0
  142. package/dist/cjs/mcp/tools/values-replace.js +378 -0
  143. package/dist/cjs/mcp/tools/values-replace.js.map +1 -0
  144. package/dist/cjs/mcp/tools/values-search.d.cts +74 -0
  145. package/dist/cjs/mcp/tools/values-search.d.ts +74 -0
  146. package/dist/cjs/mcp/tools/values-search.js +470 -0
  147. package/dist/cjs/mcp/tools/values-search.js.map +1 -0
  148. package/dist/cjs/package.json +1 -0
  149. package/dist/cjs/schemas/index.d.cts +14 -0
  150. package/dist/cjs/schemas/index.d.ts +14 -0
  151. package/dist/cjs/schemas/index.js +64 -0
  152. package/dist/cjs/schemas/index.js.map +1 -0
  153. package/dist/cjs/setup/config.d.cts +44 -0
  154. package/dist/cjs/setup/config.d.ts +44 -0
  155. package/dist/cjs/setup/config.js +201 -0
  156. package/dist/cjs/setup/config.js.map +1 -0
  157. package/dist/cjs/setup/http.d.cts +8 -0
  158. package/dist/cjs/setup/http.d.ts +8 -0
  159. package/dist/cjs/setup/http.js +260 -0
  160. package/dist/cjs/setup/http.js.map +1 -0
  161. package/dist/cjs/setup/index.d.cts +5 -0
  162. package/dist/cjs/setup/index.d.ts +5 -0
  163. package/dist/cjs/setup/index.js +46 -0
  164. package/dist/cjs/setup/index.js.map +1 -0
  165. package/dist/cjs/setup/oauth-google.d.cts +54 -0
  166. package/dist/cjs/setup/oauth-google.d.ts +54 -0
  167. package/dist/cjs/setup/oauth-google.js +332 -0
  168. package/dist/cjs/setup/oauth-google.js.map +1 -0
  169. package/dist/cjs/setup/runtime.d.cts +10 -0
  170. package/dist/cjs/setup/runtime.d.ts +10 -0
  171. package/dist/cjs/setup/runtime.js +353 -0
  172. package/dist/cjs/setup/runtime.js.map +1 -0
  173. package/dist/cjs/setup/stdio.d.cts +7 -0
  174. package/dist/cjs/setup/stdio.d.ts +7 -0
  175. package/dist/cjs/setup/stdio.js +239 -0
  176. package/dist/cjs/setup/stdio.js.map +1 -0
  177. package/dist/cjs/spreadsheet/column-utilities.d.cts +1 -0
  178. package/dist/cjs/spreadsheet/column-utilities.d.ts +1 -0
  179. package/dist/cjs/spreadsheet/column-utilities.js +21 -0
  180. package/dist/cjs/spreadsheet/column-utilities.js.map +1 -0
  181. package/dist/cjs/spreadsheet/csv-streaming.d.cts +19 -0
  182. package/dist/cjs/spreadsheet/csv-streaming.d.ts +19 -0
  183. package/dist/cjs/spreadsheet/csv-streaming.js +188 -0
  184. package/dist/cjs/spreadsheet/csv-streaming.js.map +1 -0
  185. package/dist/cjs/spreadsheet/data-operations.d.cts +115 -0
  186. package/dist/cjs/spreadsheet/data-operations.d.ts +115 -0
  187. package/dist/cjs/spreadsheet/data-operations.js +1515 -0
  188. package/dist/cjs/spreadsheet/data-operations.js.map +1 -0
  189. package/dist/cjs/spreadsheet/deduplication-utils.d.cts +31 -0
  190. package/dist/cjs/spreadsheet/deduplication-utils.d.ts +31 -0
  191. package/dist/cjs/spreadsheet/deduplication-utils.js +65 -0
  192. package/dist/cjs/spreadsheet/deduplication-utils.js.map +1 -0
  193. package/dist/cjs/spreadsheet/range-operations.d.cts +184 -0
  194. package/dist/cjs/spreadsheet/range-operations.d.ts +184 -0
  195. package/dist/cjs/spreadsheet/range-operations.js +672 -0
  196. package/dist/cjs/spreadsheet/range-operations.js.map +1 -0
  197. package/dist/cjs/spreadsheet/sheet-operations.d.cts +30 -0
  198. package/dist/cjs/spreadsheet/sheet-operations.d.ts +30 -0
  199. package/dist/cjs/spreadsheet/sheet-operations.js +811 -0
  200. package/dist/cjs/spreadsheet/sheet-operations.js.map +1 -0
  201. package/dist/cjs/spreadsheet/spreadsheet-management.d.cts +21 -0
  202. package/dist/cjs/spreadsheet/spreadsheet-management.d.ts +21 -0
  203. package/dist/cjs/spreadsheet/spreadsheet-management.js +310 -0
  204. package/dist/cjs/spreadsheet/spreadsheet-management.js.map +1 -0
  205. package/dist/cjs/types.d.cts +53 -0
  206. package/dist/cjs/types.d.ts +53 -0
  207. package/dist/cjs/types.js +5 -0
  208. package/dist/cjs/types.js.map +1 -0
  209. package/dist/esm/constants.d.ts +7 -0
  210. package/dist/esm/constants.js +7 -0
  211. package/dist/esm/constants.js.map +1 -0
  212. package/dist/esm/index.d.ts +8 -0
  213. package/dist/esm/index.js +34 -0
  214. package/dist/esm/index.js.map +1 -0
  215. package/dist/esm/lib/create-store.d.ts +2 -0
  216. package/dist/esm/lib/create-store.js +6 -0
  217. package/dist/esm/lib/create-store.js.map +1 -0
  218. package/dist/esm/mcp/index.d.ts +3 -0
  219. package/dist/esm/mcp/index.js +6 -0
  220. package/dist/esm/mcp/index.js.map +1 -0
  221. package/dist/esm/mcp/prompts/a1-notation.d.ts +19 -0
  222. package/dist/esm/mcp/prompts/a1-notation.js +49 -0
  223. package/dist/esm/mcp/prompts/a1-notation.js.map +1 -0
  224. package/dist/esm/mcp/prompts/index.d.ts +1 -0
  225. package/dist/esm/mcp/prompts/index.js +1 -0
  226. package/dist/esm/mcp/prompts/index.js.map +1 -0
  227. package/dist/esm/mcp/resources/index.d.ts +1 -0
  228. package/dist/esm/mcp/resources/index.js +1 -0
  229. package/dist/esm/mcp/resources/index.js.map +1 -0
  230. package/dist/esm/mcp/resources/spreadsheet.d.ts +2 -0
  231. package/dist/esm/mcp/resources/spreadsheet.js +88 -0
  232. package/dist/esm/mcp/resources/spreadsheet.js.map +1 -0
  233. package/dist/esm/mcp/tools/cells-format.d.ts +144 -0
  234. package/dist/esm/mcp/tools/cells-format.js +288 -0
  235. package/dist/esm/mcp/tools/cells-format.js.map +1 -0
  236. package/dist/esm/mcp/tools/chart-create.d.ts +94 -0
  237. package/dist/esm/mcp/tools/chart-create.js +408 -0
  238. package/dist/esm/mcp/tools/chart-create.js.map +1 -0
  239. package/dist/esm/mcp/tools/columns-get.d.ts +55 -0
  240. package/dist/esm/mcp/tools/columns-get.js +113 -0
  241. package/dist/esm/mcp/tools/columns-get.js.map +1 -0
  242. package/dist/esm/mcp/tools/columns-update.d.ts +86 -0
  243. package/dist/esm/mcp/tools/columns-update.js +296 -0
  244. package/dist/esm/mcp/tools/columns-update.js.map +1 -0
  245. package/dist/esm/mcp/tools/csv-get-columns.d.ts +43 -0
  246. package/dist/esm/mcp/tools/csv-get-columns.js +95 -0
  247. package/dist/esm/mcp/tools/csv-get-columns.js.map +1 -0
  248. package/dist/esm/mcp/tools/dimensions-batch-update.d.ts +118 -0
  249. package/dist/esm/mcp/tools/dimensions-batch-update.js +321 -0
  250. package/dist/esm/mcp/tools/dimensions-batch-update.js.map +1 -0
  251. package/dist/esm/mcp/tools/dimensions-move.d.ts +86 -0
  252. package/dist/esm/mcp/tools/dimensions-move.js +183 -0
  253. package/dist/esm/mcp/tools/dimensions-move.js.map +1 -0
  254. package/dist/esm/mcp/tools/index.d.ts +26 -0
  255. package/dist/esm/mcp/tools/index.js +26 -0
  256. package/dist/esm/mcp/tools/index.js.map +1 -0
  257. package/dist/esm/mcp/tools/lib/dimension-operations.d.ts +48 -0
  258. package/dist/esm/mcp/tools/lib/dimension-operations.js +93 -0
  259. package/dist/esm/mcp/tools/lib/dimension-operations.js.map +1 -0
  260. package/dist/esm/mcp/tools/rows-append.d.ts +58 -0
  261. package/dist/esm/mcp/tools/rows-append.js +151 -0
  262. package/dist/esm/mcp/tools/rows-append.js.map +1 -0
  263. package/dist/esm/mcp/tools/rows-csv-append.d.ts +67 -0
  264. package/dist/esm/mcp/tools/rows-csv-append.js +342 -0
  265. package/dist/esm/mcp/tools/rows-csv-append.js.map +1 -0
  266. package/dist/esm/mcp/tools/rows-get.d.ts +56 -0
  267. package/dist/esm/mcp/tools/rows-get.js +116 -0
  268. package/dist/esm/mcp/tools/rows-get.js.map +1 -0
  269. package/dist/esm/mcp/tools/sheet-copy-to.d.ts +68 -0
  270. package/dist/esm/mcp/tools/sheet-copy-to.js +156 -0
  271. package/dist/esm/mcp/tools/sheet-copy-to.js.map +1 -0
  272. package/dist/esm/mcp/tools/sheet-copy.d.ts +80 -0
  273. package/dist/esm/mcp/tools/sheet-copy.js +177 -0
  274. package/dist/esm/mcp/tools/sheet-copy.js.map +1 -0
  275. package/dist/esm/mcp/tools/sheet-create.d.ts +56 -0
  276. package/dist/esm/mcp/tools/sheet-create.js +110 -0
  277. package/dist/esm/mcp/tools/sheet-create.js.map +1 -0
  278. package/dist/esm/mcp/tools/sheet-delete.d.ts +62 -0
  279. package/dist/esm/mcp/tools/sheet-delete.js +125 -0
  280. package/dist/esm/mcp/tools/sheet-delete.js.map +1 -0
  281. package/dist/esm/mcp/tools/sheet-find.d.ts +48 -0
  282. package/dist/esm/mcp/tools/sheet-find.js +90 -0
  283. package/dist/esm/mcp/tools/sheet-find.js.map +1 -0
  284. package/dist/esm/mcp/tools/sheet-rename.d.ts +60 -0
  285. package/dist/esm/mcp/tools/sheet-rename.js +128 -0
  286. package/dist/esm/mcp/tools/sheet-rename.js.map +1 -0
  287. package/dist/esm/mcp/tools/spreadsheet-copy.d.ts +58 -0
  288. package/dist/esm/mcp/tools/spreadsheet-copy.js +117 -0
  289. package/dist/esm/mcp/tools/spreadsheet-copy.js.map +1 -0
  290. package/dist/esm/mcp/tools/spreadsheet-create.d.ts +52 -0
  291. package/dist/esm/mcp/tools/spreadsheet-create.js +97 -0
  292. package/dist/esm/mcp/tools/spreadsheet-create.js.map +1 -0
  293. package/dist/esm/mcp/tools/spreadsheet-find.d.ts +58 -0
  294. package/dist/esm/mcp/tools/spreadsheet-find.js +113 -0
  295. package/dist/esm/mcp/tools/spreadsheet-find.js.map +1 -0
  296. package/dist/esm/mcp/tools/spreadsheet-rename.d.ts +56 -0
  297. package/dist/esm/mcp/tools/spreadsheet-rename.js +112 -0
  298. package/dist/esm/mcp/tools/spreadsheet-rename.js.map +1 -0
  299. package/dist/esm/mcp/tools/validation-set.d.ts +144 -0
  300. package/dist/esm/mcp/tools/validation-set.js +366 -0
  301. package/dist/esm/mcp/tools/validation-set.js.map +1 -0
  302. package/dist/esm/mcp/tools/values-batch-update.d.ts +102 -0
  303. package/dist/esm/mcp/tools/values-batch-update.js +224 -0
  304. package/dist/esm/mcp/tools/values-batch-update.js.map +1 -0
  305. package/dist/esm/mcp/tools/values-clear.d.ts +56 -0
  306. package/dist/esm/mcp/tools/values-clear.js +131 -0
  307. package/dist/esm/mcp/tools/values-clear.js.map +1 -0
  308. package/dist/esm/mcp/tools/values-csv-update.d.ts +75 -0
  309. package/dist/esm/mcp/tools/values-csv-update.js +202 -0
  310. package/dist/esm/mcp/tools/values-csv-update.js.map +1 -0
  311. package/dist/esm/mcp/tools/values-replace.d.ts +68 -0
  312. package/dist/esm/mcp/tools/values-replace.js +171 -0
  313. package/dist/esm/mcp/tools/values-replace.js.map +1 -0
  314. package/dist/esm/mcp/tools/values-search.d.ts +74 -0
  315. package/dist/esm/mcp/tools/values-search.js +229 -0
  316. package/dist/esm/mcp/tools/values-search.js.map +1 -0
  317. package/dist/esm/package.json +1 -0
  318. package/dist/esm/schemas/index.d.ts +14 -0
  319. package/dist/esm/schemas/index.js +35 -0
  320. package/dist/esm/schemas/index.js.map +1 -0
  321. package/dist/esm/setup/config.d.ts +44 -0
  322. package/dist/esm/setup/config.js +151 -0
  323. package/dist/esm/setup/config.js.map +1 -0
  324. package/dist/esm/setup/http.d.ts +8 -0
  325. package/dist/esm/setup/http.js +54 -0
  326. package/dist/esm/setup/http.js.map +1 -0
  327. package/dist/esm/setup/index.d.ts +5 -0
  328. package/dist/esm/setup/index.js +5 -0
  329. package/dist/esm/setup/index.js.map +1 -0
  330. package/dist/esm/setup/oauth-google.d.ts +54 -0
  331. package/dist/esm/setup/oauth-google.js +142 -0
  332. package/dist/esm/setup/oauth-google.js.map +1 -0
  333. package/dist/esm/setup/runtime.d.ts +10 -0
  334. package/dist/esm/setup/runtime.js +84 -0
  335. package/dist/esm/setup/runtime.js.map +1 -0
  336. package/dist/esm/setup/stdio.d.ts +7 -0
  337. package/dist/esm/setup/stdio.js +38 -0
  338. package/dist/esm/setup/stdio.js.map +1 -0
  339. package/dist/esm/spreadsheet/column-utilities.d.ts +1 -0
  340. package/dist/esm/spreadsheet/column-utilities.js +10 -0
  341. package/dist/esm/spreadsheet/column-utilities.js.map +1 -0
  342. package/dist/esm/spreadsheet/csv-streaming.d.ts +19 -0
  343. package/dist/esm/spreadsheet/csv-streaming.js +43 -0
  344. package/dist/esm/spreadsheet/csv-streaming.js.map +1 -0
  345. package/dist/esm/spreadsheet/data-operations.d.ts +115 -0
  346. package/dist/esm/spreadsheet/data-operations.js +712 -0
  347. package/dist/esm/spreadsheet/data-operations.js.map +1 -0
  348. package/dist/esm/spreadsheet/deduplication-utils.d.ts +31 -0
  349. package/dist/esm/spreadsheet/deduplication-utils.js +54 -0
  350. package/dist/esm/spreadsheet/deduplication-utils.js.map +1 -0
  351. package/dist/esm/spreadsheet/range-operations.d.ts +184 -0
  352. package/dist/esm/spreadsheet/range-operations.js +591 -0
  353. package/dist/esm/spreadsheet/range-operations.js.map +1 -0
  354. package/dist/esm/spreadsheet/sheet-operations.d.ts +30 -0
  355. package/dist/esm/spreadsheet/sheet-operations.js +359 -0
  356. package/dist/esm/spreadsheet/sheet-operations.js.map +1 -0
  357. package/dist/esm/spreadsheet/spreadsheet-management.d.ts +21 -0
  358. package/dist/esm/spreadsheet/spreadsheet-management.js +73 -0
  359. package/dist/esm/spreadsheet/spreadsheet-management.js.map +1 -0
  360. package/dist/esm/types.d.ts +53 -0
  361. package/dist/esm/types.js +1 -0
  362. package/dist/esm/types.js.map +1 -0
  363. package/package.json +108 -0
@@ -0,0 +1,48 @@
1
+ export declare const DEFAULT_APPEND_COUNT = 1;
2
+ export declare const DEFAULT_ROW_COUNT = 1000;
3
+ export declare const DEFAULT_COLUMN_COUNT = 26;
4
+ export declare const MAX_ROW_COUNT = 10000000;
5
+ export declare const MAX_COLUMN_COUNT = 18278;
6
+ export type DimensionOperation = 'insertDimension' | 'deleteDimension' | 'appendDimension';
7
+ export type DimensionType = 'ROWS' | 'COLUMNS';
8
+ export interface DimensionRequest {
9
+ operation: DimensionOperation;
10
+ dimension: DimensionType;
11
+ startIndex: number;
12
+ endIndex?: number;
13
+ inheritFromBefore?: boolean;
14
+ }
15
+ export declare function sortOperations(requests: DimensionRequest[]): DimensionRequest[];
16
+ export declare function buildDimensionRequest(operation: DimensionRequest, sheetId: number): {
17
+ insertDimension: {
18
+ range: {
19
+ endIndex: number;
20
+ sheetId: number;
21
+ dimension: DimensionType;
22
+ startIndex: number;
23
+ };
24
+ inheritFromBefore: boolean;
25
+ };
26
+ deleteDimension?: undefined;
27
+ appendDimension?: undefined;
28
+ } | {
29
+ deleteDimension: {
30
+ range: {
31
+ endIndex: number;
32
+ sheetId: number;
33
+ dimension: DimensionType;
34
+ startIndex: number;
35
+ };
36
+ };
37
+ insertDimension?: undefined;
38
+ appendDimension?: undefined;
39
+ } | {
40
+ appendDimension: {
41
+ sheetId: number;
42
+ dimension: DimensionType;
43
+ length: number;
44
+ };
45
+ insertDimension?: undefined;
46
+ deleteDimension?: undefined;
47
+ };
48
+ export declare function calculateAffectedCount(operation: DimensionRequest): number;
@@ -0,0 +1,48 @@
1
+ export declare const DEFAULT_APPEND_COUNT = 1;
2
+ export declare const DEFAULT_ROW_COUNT = 1000;
3
+ export declare const DEFAULT_COLUMN_COUNT = 26;
4
+ export declare const MAX_ROW_COUNT = 10000000;
5
+ export declare const MAX_COLUMN_COUNT = 18278;
6
+ export type DimensionOperation = 'insertDimension' | 'deleteDimension' | 'appendDimension';
7
+ export type DimensionType = 'ROWS' | 'COLUMNS';
8
+ export interface DimensionRequest {
9
+ operation: DimensionOperation;
10
+ dimension: DimensionType;
11
+ startIndex: number;
12
+ endIndex?: number;
13
+ inheritFromBefore?: boolean;
14
+ }
15
+ export declare function sortOperations(requests: DimensionRequest[]): DimensionRequest[];
16
+ export declare function buildDimensionRequest(operation: DimensionRequest, sheetId: number): {
17
+ insertDimension: {
18
+ range: {
19
+ endIndex: number;
20
+ sheetId: number;
21
+ dimension: DimensionType;
22
+ startIndex: number;
23
+ };
24
+ inheritFromBefore: boolean;
25
+ };
26
+ deleteDimension?: undefined;
27
+ appendDimension?: undefined;
28
+ } | {
29
+ deleteDimension: {
30
+ range: {
31
+ endIndex: number;
32
+ sheetId: number;
33
+ dimension: DimensionType;
34
+ startIndex: number;
35
+ };
36
+ };
37
+ insertDimension?: undefined;
38
+ appendDimension?: undefined;
39
+ } | {
40
+ appendDimension: {
41
+ sheetId: number;
42
+ dimension: DimensionType;
43
+ length: number;
44
+ };
45
+ insertDimension?: undefined;
46
+ deleteDimension?: undefined;
47
+ };
48
+ export declare function calculateAffectedCount(operation: DimensionRequest): number;
@@ -0,0 +1,177 @@
1
+ // Google Sheets dimension constants
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get DEFAULT_APPEND_COUNT () {
14
+ return DEFAULT_APPEND_COUNT;
15
+ },
16
+ get DEFAULT_COLUMN_COUNT () {
17
+ return DEFAULT_COLUMN_COUNT;
18
+ },
19
+ get DEFAULT_ROW_COUNT () {
20
+ return DEFAULT_ROW_COUNT;
21
+ },
22
+ get MAX_COLUMN_COUNT () {
23
+ return MAX_COLUMN_COUNT;
24
+ },
25
+ get MAX_ROW_COUNT () {
26
+ return MAX_ROW_COUNT;
27
+ },
28
+ get buildDimensionRequest () {
29
+ return buildDimensionRequest;
30
+ },
31
+ get calculateAffectedCount () {
32
+ return calculateAffectedCount;
33
+ },
34
+ get sortOperations () {
35
+ return sortOperations;
36
+ }
37
+ });
38
+ function _array_like_to_array(arr, len) {
39
+ if (len == null || len > arr.length) len = arr.length;
40
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
41
+ return arr2;
42
+ }
43
+ function _array_without_holes(arr) {
44
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
45
+ }
46
+ function _define_property(obj, key, value) {
47
+ if (key in obj) {
48
+ Object.defineProperty(obj, key, {
49
+ value: value,
50
+ enumerable: true,
51
+ configurable: true,
52
+ writable: true
53
+ });
54
+ } else {
55
+ obj[key] = value;
56
+ }
57
+ return obj;
58
+ }
59
+ function _iterable_to_array(iter) {
60
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
61
+ }
62
+ function _non_iterable_spread() {
63
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
64
+ }
65
+ function _object_spread(target) {
66
+ for(var i = 1; i < arguments.length; i++){
67
+ var source = arguments[i] != null ? arguments[i] : {};
68
+ var ownKeys = Object.keys(source);
69
+ if (typeof Object.getOwnPropertySymbols === "function") {
70
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
71
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
72
+ }));
73
+ }
74
+ ownKeys.forEach(function(key) {
75
+ _define_property(target, key, source[key]);
76
+ });
77
+ }
78
+ return target;
79
+ }
80
+ function _to_consumable_array(arr) {
81
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
82
+ }
83
+ function _unsupported_iterable_to_array(o, minLen) {
84
+ if (!o) return;
85
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
86
+ var n = Object.prototype.toString.call(o).slice(8, -1);
87
+ if (n === "Object" && o.constructor) n = o.constructor.name;
88
+ if (n === "Map" || n === "Set") return Array.from(n);
89
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
90
+ }
91
+ var DEFAULT_APPEND_COUNT = 1; // Default number of rows/columns to append
92
+ var DEFAULT_ROW_COUNT = 1000; // Google Sheets default for new sheets
93
+ var DEFAULT_COLUMN_COUNT = 26; // Google Sheets default for new sheets (A-Z)
94
+ var MAX_ROW_COUNT = 10000000; // Google Sheets maximum
95
+ var MAX_COLUMN_COUNT = 18278; // Google Sheets maximum (ZZZ in base-26)
96
+ function sortOperations(requests) {
97
+ // Sort by: 1) operation type (delete -> insert -> append), 2) proper index ordering to prevent conflicts
98
+ return _to_consumable_array(requests).sort(function(a, b) {
99
+ // Operation type priority: deleteDimension (0), insertDimension (1), appendDimension (2)
100
+ var operationPriority = {
101
+ deleteDimension: 0,
102
+ insertDimension: 1,
103
+ appendDimension: 2
104
+ };
105
+ var aPriority = operationPriority[a.operation];
106
+ var bPriority = operationPriority[b.operation];
107
+ if (aPriority !== bPriority) {
108
+ return aPriority - bPriority;
109
+ }
110
+ // Within same operation type, sort by appropriate index
111
+ if (a.operation === 'deleteDimension') {
112
+ var _a_endIndex, _b_endIndex;
113
+ // For deletes, process higher START indices first to avoid index shifting issues
114
+ // This ensures we delete from the end towards the beginning
115
+ var aStart = a.startIndex;
116
+ var bStart = b.startIndex;
117
+ if (aStart !== bStart) {
118
+ return bStart - aStart; // Higher start index first
119
+ }
120
+ // If start indices are equal, process higher end index first for consistency
121
+ var aEnd = (_a_endIndex = a.endIndex) !== null && _a_endIndex !== void 0 ? _a_endIndex : a.startIndex + 1;
122
+ var bEnd = (_b_endIndex = b.endIndex) !== null && _b_endIndex !== void 0 ? _b_endIndex : b.startIndex + 1;
123
+ return bEnd - aEnd;
124
+ }
125
+ // For inserts and appends, process lower indices first
126
+ // This ensures we modify from the beginning towards the end
127
+ return a.startIndex - b.startIndex;
128
+ });
129
+ }
130
+ function buildDimensionRequest(operation, sheetId) {
131
+ var operationType = operation.operation, dimension = operation.dimension, startIndex = operation.startIndex, endIndex = operation.endIndex, inheritFromBefore = operation.inheritFromBefore;
132
+ var dimensionRange = _object_spread({
133
+ sheetId: sheetId,
134
+ dimension: dimension,
135
+ startIndex: startIndex
136
+ }, endIndex !== undefined && {
137
+ endIndex: endIndex
138
+ });
139
+ switch(operationType){
140
+ case 'insertDimension':
141
+ return {
142
+ insertDimension: {
143
+ range: dimensionRange,
144
+ inheritFromBefore: inheritFromBefore !== null && inheritFromBefore !== void 0 ? inheritFromBefore : false
145
+ }
146
+ };
147
+ case 'deleteDimension':
148
+ return {
149
+ deleteDimension: {
150
+ range: dimensionRange
151
+ }
152
+ };
153
+ case 'appendDimension':
154
+ return {
155
+ appendDimension: {
156
+ sheetId: sheetId,
157
+ dimension: dimension,
158
+ length: DEFAULT_APPEND_COUNT
159
+ }
160
+ };
161
+ default:
162
+ throw new Error("Unsupported operation type: ".concat(operationType));
163
+ }
164
+ }
165
+ function calculateAffectedCount(operation) {
166
+ var operationType = operation.operation, startIndex = operation.startIndex, endIndex = operation.endIndex;
167
+ switch(operationType){
168
+ case 'insertDimension':
169
+ case 'deleteDimension':
170
+ return endIndex !== undefined ? endIndex - startIndex : 1;
171
+ case 'appendDimension':
172
+ return DEFAULT_APPEND_COUNT;
173
+ default:
174
+ return 0;
175
+ }
176
+ }
177
+ /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/Projects/ai/mcp-z/servers/mcp-sheets/src/mcp/tools/lib/dimension-operations.ts"],"sourcesContent":["// Google Sheets dimension constants\nexport const DEFAULT_APPEND_COUNT = 1; // Default number of rows/columns to append\nexport const DEFAULT_ROW_COUNT = 1000; // Google Sheets default for new sheets\nexport const DEFAULT_COLUMN_COUNT = 26; // Google Sheets default for new sheets (A-Z)\nexport const MAX_ROW_COUNT = 10000000; // Google Sheets maximum\nexport const MAX_COLUMN_COUNT = 18278; // Google Sheets maximum (ZZZ in base-26)\n\n// Type definitions for dimension operations\nexport type DimensionOperation = 'insertDimension' | 'deleteDimension' | 'appendDimension';\nexport type DimensionType = 'ROWS' | 'COLUMNS';\n\nexport interface DimensionRequest {\n operation: DimensionOperation;\n dimension: DimensionType;\n startIndex: number;\n endIndex?: number;\n inheritFromBefore?: boolean;\n}\n\n// Helper function to sort operations for optimal execution order\nexport function sortOperations(requests: DimensionRequest[]): DimensionRequest[] {\n // Sort by: 1) operation type (delete -> insert -> append), 2) proper index ordering to prevent conflicts\n return [...requests].sort((a, b) => {\n // Operation type priority: deleteDimension (0), insertDimension (1), appendDimension (2)\n const operationPriority = {\n deleteDimension: 0,\n insertDimension: 1,\n appendDimension: 2,\n };\n\n const aPriority = operationPriority[a.operation];\n const bPriority = operationPriority[b.operation];\n\n if (aPriority !== bPriority) {\n return aPriority - bPriority;\n }\n\n // Within same operation type, sort by appropriate index\n if (a.operation === 'deleteDimension') {\n // For deletes, process higher START indices first to avoid index shifting issues\n // This ensures we delete from the end towards the beginning\n const aStart = a.startIndex;\n const bStart = b.startIndex;\n if (aStart !== bStart) {\n return bStart - aStart; // Higher start index first\n }\n // If start indices are equal, process higher end index first for consistency\n const aEnd = a.endIndex ?? a.startIndex + 1;\n const bEnd = b.endIndex ?? b.startIndex + 1;\n return bEnd - aEnd;\n }\n // For inserts and appends, process lower indices first\n // This ensures we modify from the beginning towards the end\n return a.startIndex - b.startIndex;\n });\n}\n\n// Helper function to build Google Sheets API dimension request\nexport function buildDimensionRequest(operation: DimensionRequest, sheetId: number) {\n const { operation: operationType, dimension, startIndex, endIndex, inheritFromBefore } = operation;\n\n const dimensionRange = {\n sheetId,\n dimension,\n startIndex,\n ...(endIndex !== undefined && { endIndex }),\n };\n\n switch (operationType) {\n case 'insertDimension':\n return {\n insertDimension: {\n range: dimensionRange,\n inheritFromBefore: inheritFromBefore ?? false,\n },\n };\n case 'deleteDimension':\n return {\n deleteDimension: {\n range: dimensionRange,\n },\n };\n case 'appendDimension':\n return {\n appendDimension: {\n sheetId,\n dimension,\n length: DEFAULT_APPEND_COUNT,\n },\n };\n default:\n throw new Error(`Unsupported operation type: ${operationType}`);\n }\n}\n\n// Helper function to calculate affected count for each operation\nexport function calculateAffectedCount(operation: DimensionRequest): number {\n const { operation: operationType, startIndex, endIndex } = operation;\n\n switch (operationType) {\n case 'insertDimension':\n case 'deleteDimension':\n return endIndex !== undefined ? endIndex - startIndex : 1;\n case 'appendDimension':\n return DEFAULT_APPEND_COUNT;\n default:\n return 0;\n }\n}\n"],"names":["DEFAULT_APPEND_COUNT","DEFAULT_COLUMN_COUNT","DEFAULT_ROW_COUNT","MAX_COLUMN_COUNT","MAX_ROW_COUNT","buildDimensionRequest","calculateAffectedCount","sortOperations","requests","sort","a","b","operationPriority","deleteDimension","insertDimension","appendDimension","aPriority","operation","bPriority","aStart","startIndex","bStart","aEnd","endIndex","bEnd","sheetId","operationType","dimension","inheritFromBefore","dimensionRange","undefined","range","length","Error"],"mappings":"AAAA,oCAAoC;;;;;;;;;;;;QACvBA;eAAAA;;QAEAC;eAAAA;;QADAC;eAAAA;;QAGAC;eAAAA;;QADAC;eAAAA;;QAsDGC;eAAAA;;QAsCAC;eAAAA;;QA5EAC;eAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnBT,IAAMP,uBAAuB,GAAG,2CAA2C;AAC3E,IAAME,oBAAoB,MAAM,uCAAuC;AACvE,IAAMD,uBAAuB,IAAI,6CAA6C;AAC9E,IAAMG,gBAAgB,UAAU,wBAAwB;AACxD,IAAMD,mBAAmB,OAAO,yCAAyC;AAezE,SAASI,eAAeC,QAA4B;IACzD,yGAAyG;IACzG,OAAO,AAAC,qBAAGA,UAAUC,IAAI,CAAC,SAACC,GAAGC;QAC5B,yFAAyF;QACzF,IAAMC,oBAAoB;YACxBC,iBAAiB;YACjBC,iBAAiB;YACjBC,iBAAiB;QACnB;QAEA,IAAMC,YAAYJ,iBAAiB,CAACF,EAAEO,SAAS,CAAC;QAChD,IAAMC,YAAYN,iBAAiB,CAACD,EAAEM,SAAS,CAAC;QAEhD,IAAID,cAAcE,WAAW;YAC3B,OAAOF,YAAYE;QACrB;QAEA,wDAAwD;QACxD,IAAIR,EAAEO,SAAS,KAAK,mBAAmB;gBASxBP,aACAC;YATb,iFAAiF;YACjF,4DAA4D;YAC5D,IAAMQ,SAAST,EAAEU,UAAU;YAC3B,IAAMC,SAASV,EAAES,UAAU;YAC3B,IAAID,WAAWE,QAAQ;gBACrB,OAAOA,SAASF,QAAQ,2BAA2B;YACrD;YACA,6EAA6E;YAC7E,IAAMG,QAAOZ,cAAAA,EAAEa,QAAQ,cAAVb,yBAAAA,cAAcA,EAAEU,UAAU,GAAG;YAC1C,IAAMI,QAAOb,cAAAA,EAAEY,QAAQ,cAAVZ,yBAAAA,cAAcA,EAAES,UAAU,GAAG;YAC1C,OAAOI,OAAOF;QAChB;QACA,uDAAuD;QACvD,4DAA4D;QAC5D,OAAOZ,EAAEU,UAAU,GAAGT,EAAES,UAAU;IACpC;AACF;AAGO,SAASf,sBAAsBY,SAA2B,EAAEQ,OAAe;IAChF,IAAQR,AAAWS,gBAAsET,UAAjFA,WAA0BU,YAAuDV,UAAvDU,WAAWP,aAA4CH,UAA5CG,YAAYG,WAAgCN,UAAhCM,UAAUK,oBAAsBX,UAAtBW;IAEnE,IAAMC,iBAAiB;QACrBJ,SAAAA;QACAE,WAAAA;QACAP,YAAAA;OACIG,aAAaO,aAAa;QAAEP,UAAAA;IAAS;IAG3C,OAAQG;QACN,KAAK;YACH,OAAO;gBACLZ,iBAAiB;oBACfiB,OAAOF;oBACPD,iBAAiB,EAAEA,8BAAAA,+BAAAA,oBAAqB;gBAC1C;YACF;QACF,KAAK;YACH,OAAO;gBACLf,iBAAiB;oBACfkB,OAAOF;gBACT;YACF;QACF,KAAK;YACH,OAAO;gBACLd,iBAAiB;oBACfU,SAAAA;oBACAE,WAAAA;oBACAK,QAAQhC;gBACV;YACF;QACF;YACE,MAAM,IAAIiC,MAAM,AAAC,+BAA4C,OAAdP;IACnD;AACF;AAGO,SAASpB,uBAAuBW,SAA2B;IAChE,IAAQA,AAAWS,gBAAwCT,UAAnDA,WAA0BG,aAAyBH,UAAzBG,YAAYG,WAAaN,UAAbM;IAE9C,OAAQG;QACN,KAAK;QACL,KAAK;YACH,OAAOH,aAAaO,YAAYP,WAAWH,aAAa;QAC1D,KAAK;YACH,OAAOpB;QACT;YACE,OAAO;IACX;AACF"}
@@ -0,0 +1,58 @@
1
+ import type { EnrichedExtra } from '@mcp-z/oauth-google';
2
+ import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
3
+ import { z } from 'zod';
4
+ declare const inputSchema: z.ZodObject<{
5
+ id: z.ZodString;
6
+ gid: z.ZodCoercedString<unknown>;
7
+ rows: z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>>>;
8
+ headers: z.ZodOptional<z.ZodArray<z.ZodString>>;
9
+ deduplicateBy: z.ZodOptional<z.ZodArray<z.ZodString>>;
10
+ }, z.core.$strip>;
11
+ declare const outputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
12
+ type: z.ZodLiteral<"success">;
13
+ id: z.ZodString;
14
+ gid: z.ZodString;
15
+ sheetTitle: z.ZodString;
16
+ updatedRows: z.ZodNumber;
17
+ rowsSkipped: z.ZodOptional<z.ZodNumber>;
18
+ sheetUrl: z.ZodOptional<z.ZodString>;
19
+ }, z.core.$strip>, z.ZodObject<{
20
+ type: z.ZodLiteral<"auth_required">;
21
+ provider: z.ZodString;
22
+ message: z.ZodString;
23
+ url: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>], "type">;
25
+ export type Input = z.infer<typeof inputSchema>;
26
+ export type Output = z.infer<typeof outputSchema>;
27
+ declare function handler({ id, gid, rows, headers, deduplicateBy }: Input, extra: EnrichedExtra): Promise<CallToolResult>;
28
+ export default function createTool(): {
29
+ name: string;
30
+ config: {
31
+ readonly description: "Add new rows to the bottom of an existing sheet with smart header handling and optional deduplication. BEST FOR: Structured database operations where spreadsheet has headers defining schema and rows represent records.";
32
+ readonly inputSchema: z.ZodObject<{
33
+ id: z.ZodString;
34
+ gid: z.ZodCoercedString<unknown>;
35
+ rows: z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>>>;
36
+ headers: z.ZodOptional<z.ZodArray<z.ZodString>>;
37
+ deduplicateBy: z.ZodOptional<z.ZodArray<z.ZodString>>;
38
+ }, z.core.$strip>;
39
+ readonly outputSchema: z.ZodObject<{
40
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
41
+ type: z.ZodLiteral<"success">;
42
+ id: z.ZodString;
43
+ gid: z.ZodString;
44
+ sheetTitle: z.ZodString;
45
+ updatedRows: z.ZodNumber;
46
+ rowsSkipped: z.ZodOptional<z.ZodNumber>;
47
+ sheetUrl: z.ZodOptional<z.ZodString>;
48
+ }, z.core.$strip>, z.ZodObject<{
49
+ type: z.ZodLiteral<"auth_required">;
50
+ provider: z.ZodString;
51
+ message: z.ZodString;
52
+ url: z.ZodOptional<z.ZodString>;
53
+ }, z.core.$strip>], "type">;
54
+ }, z.core.$strip>;
55
+ };
56
+ handler: typeof handler;
57
+ };
58
+ export {};
@@ -0,0 +1,58 @@
1
+ import type { EnrichedExtra } from '@mcp-z/oauth-google';
2
+ import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
3
+ import { z } from 'zod';
4
+ declare const inputSchema: z.ZodObject<{
5
+ id: z.ZodString;
6
+ gid: z.ZodCoercedString<unknown>;
7
+ rows: z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>>>;
8
+ headers: z.ZodOptional<z.ZodArray<z.ZodString>>;
9
+ deduplicateBy: z.ZodOptional<z.ZodArray<z.ZodString>>;
10
+ }, z.core.$strip>;
11
+ declare const outputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
12
+ type: z.ZodLiteral<"success">;
13
+ id: z.ZodString;
14
+ gid: z.ZodString;
15
+ sheetTitle: z.ZodString;
16
+ updatedRows: z.ZodNumber;
17
+ rowsSkipped: z.ZodOptional<z.ZodNumber>;
18
+ sheetUrl: z.ZodOptional<z.ZodString>;
19
+ }, z.core.$strip>, z.ZodObject<{
20
+ type: z.ZodLiteral<"auth_required">;
21
+ provider: z.ZodString;
22
+ message: z.ZodString;
23
+ url: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>], "type">;
25
+ export type Input = z.infer<typeof inputSchema>;
26
+ export type Output = z.infer<typeof outputSchema>;
27
+ declare function handler({ id, gid, rows, headers, deduplicateBy }: Input, extra: EnrichedExtra): Promise<CallToolResult>;
28
+ export default function createTool(): {
29
+ name: string;
30
+ config: {
31
+ readonly description: "Add new rows to the bottom of an existing sheet with smart header handling and optional deduplication. BEST FOR: Structured database operations where spreadsheet has headers defining schema and rows represent records.";
32
+ readonly inputSchema: z.ZodObject<{
33
+ id: z.ZodString;
34
+ gid: z.ZodCoercedString<unknown>;
35
+ rows: z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>>>;
36
+ headers: z.ZodOptional<z.ZodArray<z.ZodString>>;
37
+ deduplicateBy: z.ZodOptional<z.ZodArray<z.ZodString>>;
38
+ }, z.core.$strip>;
39
+ readonly outputSchema: z.ZodObject<{
40
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
41
+ type: z.ZodLiteral<"success">;
42
+ id: z.ZodString;
43
+ gid: z.ZodString;
44
+ sheetTitle: z.ZodString;
45
+ updatedRows: z.ZodNumber;
46
+ rowsSkipped: z.ZodOptional<z.ZodNumber>;
47
+ sheetUrl: z.ZodOptional<z.ZodString>;
48
+ }, z.core.$strip>, z.ZodObject<{
49
+ type: z.ZodLiteral<"auth_required">;
50
+ provider: z.ZodString;
51
+ message: z.ZodString;
52
+ url: z.ZodOptional<z.ZodString>;
53
+ }, z.core.$strip>], "type">;
54
+ }, z.core.$strip>;
55
+ };
56
+ handler: typeof handler;
57
+ };
58
+ export {};