@littlebearapps/australian-history-mcp 0.6.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 (467) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +502 -0
  3. package/dist/clients/datagovau_client.d.ts +61 -0
  4. package/dist/clients/datagovau_client.d.ts.map +1 -0
  5. package/dist/clients/datagovau_client.js +421 -0
  6. package/dist/clients/datagovau_client.js.map +1 -0
  7. package/dist/clients/prov_client.d.ts +64 -0
  8. package/dist/clients/prov_client.d.ts.map +1 -0
  9. package/dist/clients/prov_client.js +393 -0
  10. package/dist/clients/prov_client.js.map +1 -0
  11. package/dist/clients/trove_client.d.ts +77 -0
  12. package/dist/clients/trove_client.d.ts.map +1 -0
  13. package/dist/clients/trove_client.js +374 -0
  14. package/dist/clients/trove_client.js.map +1 -0
  15. package/dist/core/base-client.d.ts +49 -0
  16. package/dist/core/base-client.d.ts.map +1 -0
  17. package/dist/core/base-client.js +116 -0
  18. package/dist/core/base-client.js.map +1 -0
  19. package/dist/core/base-source.d.ts +45 -0
  20. package/dist/core/base-source.d.ts.map +1 -0
  21. package/dist/core/base-source.js +19 -0
  22. package/dist/core/base-source.js.map +1 -0
  23. package/dist/core/harvest-runner.d.ts +26 -0
  24. package/dist/core/harvest-runner.d.ts.map +1 -0
  25. package/dist/core/harvest-runner.js +82 -0
  26. package/dist/core/harvest-runner.js.map +1 -0
  27. package/dist/core/index.d.ts +10 -0
  28. package/dist/core/index.d.ts.map +1 -0
  29. package/dist/core/index.js +14 -0
  30. package/dist/core/index.js.map +1 -0
  31. package/dist/core/types.d.ts +80 -0
  32. package/dist/core/types.d.ts.map +1 -0
  33. package/dist/core/types.js +52 -0
  34. package/dist/core/types.js.map +1 -0
  35. package/dist/index.d.ts +21 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +103 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/registry.d.ts +65 -0
  40. package/dist/registry.d.ts.map +1 -0
  41. package/dist/registry.js +112 -0
  42. package/dist/registry.js.map +1 -0
  43. package/dist/sources/acmi/client.d.ts +47 -0
  44. package/dist/sources/acmi/client.d.ts.map +1 -0
  45. package/dist/sources/acmi/client.js +131 -0
  46. package/dist/sources/acmi/client.js.map +1 -0
  47. package/dist/sources/acmi/index.d.ts +12 -0
  48. package/dist/sources/acmi/index.d.ts.map +1 -0
  49. package/dist/sources/acmi/index.js +35 -0
  50. package/dist/sources/acmi/index.js.map +1 -0
  51. package/dist/sources/acmi/tools/get-constellation.d.ts +6 -0
  52. package/dist/sources/acmi/tools/get-constellation.d.ts.map +1 -0
  53. package/dist/sources/acmi/tools/get-constellation.js +53 -0
  54. package/dist/sources/acmi/tools/get-constellation.js.map +1 -0
  55. package/dist/sources/acmi/tools/get-creator.d.ts +6 -0
  56. package/dist/sources/acmi/tools/get-creator.d.ts.map +1 -0
  57. package/dist/sources/acmi/tools/get-creator.js +52 -0
  58. package/dist/sources/acmi/tools/get-creator.js.map +1 -0
  59. package/dist/sources/acmi/tools/get-work.d.ts +6 -0
  60. package/dist/sources/acmi/tools/get-work.d.ts.map +1 -0
  61. package/dist/sources/acmi/tools/get-work.js +103 -0
  62. package/dist/sources/acmi/tools/get-work.js.map +1 -0
  63. package/dist/sources/acmi/tools/harvest.d.ts +6 -0
  64. package/dist/sources/acmi/tools/harvest.d.ts.map +1 -0
  65. package/dist/sources/acmi/tools/harvest.js +95 -0
  66. package/dist/sources/acmi/tools/harvest.js.map +1 -0
  67. package/dist/sources/acmi/tools/list-constellations.d.ts +6 -0
  68. package/dist/sources/acmi/tools/list-constellations.d.ts.map +1 -0
  69. package/dist/sources/acmi/tools/list-constellations.js +44 -0
  70. package/dist/sources/acmi/tools/list-constellations.js.map +1 -0
  71. package/dist/sources/acmi/tools/list-creators.d.ts +6 -0
  72. package/dist/sources/acmi/tools/list-creators.d.ts.map +1 -0
  73. package/dist/sources/acmi/tools/list-creators.js +46 -0
  74. package/dist/sources/acmi/tools/list-creators.js.map +1 -0
  75. package/dist/sources/acmi/tools/search-works.d.ts +6 -0
  76. package/dist/sources/acmi/tools/search-works.d.ts.map +1 -0
  77. package/dist/sources/acmi/tools/search-works.js +73 -0
  78. package/dist/sources/acmi/tools/search-works.js.map +1 -0
  79. package/dist/sources/acmi/types.d.ts +135 -0
  80. package/dist/sources/acmi/types.d.ts.map +1 -0
  81. package/dist/sources/acmi/types.js +5 -0
  82. package/dist/sources/acmi/types.js.map +1 -0
  83. package/dist/sources/ala/client.d.ts +79 -0
  84. package/dist/sources/ala/client.d.ts.map +1 -0
  85. package/dist/sources/ala/client.js +556 -0
  86. package/dist/sources/ala/client.js.map +1 -0
  87. package/dist/sources/ala/index.d.ts +12 -0
  88. package/dist/sources/ala/index.d.ts.map +1 -0
  89. package/dist/sources/ala/index.js +37 -0
  90. package/dist/sources/ala/index.js.map +1 -0
  91. package/dist/sources/ala/tools/get-species-list.d.ts +6 -0
  92. package/dist/sources/ala/tools/get-species-list.d.ts.map +1 -0
  93. package/dist/sources/ala/tools/get-species-list.js +56 -0
  94. package/dist/sources/ala/tools/get-species-list.js.map +1 -0
  95. package/dist/sources/ala/tools/get-species.d.ts +6 -0
  96. package/dist/sources/ala/tools/get-species.d.ts.map +1 -0
  97. package/dist/sources/ala/tools/get-species.js +81 -0
  98. package/dist/sources/ala/tools/get-species.js.map +1 -0
  99. package/dist/sources/ala/tools/harvest.d.ts +6 -0
  100. package/dist/sources/ala/tools/harvest.d.ts.map +1 -0
  101. package/dist/sources/ala/tools/harvest.js +133 -0
  102. package/dist/sources/ala/tools/harvest.js.map +1 -0
  103. package/dist/sources/ala/tools/list-species-lists.d.ts +6 -0
  104. package/dist/sources/ala/tools/list-species-lists.d.ts.map +1 -0
  105. package/dist/sources/ala/tools/list-species-lists.js +60 -0
  106. package/dist/sources/ala/tools/list-species-lists.js.map +1 -0
  107. package/dist/sources/ala/tools/match-name.d.ts +6 -0
  108. package/dist/sources/ala/tools/match-name.d.ts.map +1 -0
  109. package/dist/sources/ala/tools/match-name.js +66 -0
  110. package/dist/sources/ala/tools/match-name.js.map +1 -0
  111. package/dist/sources/ala/tools/search-images.d.ts +6 -0
  112. package/dist/sources/ala/tools/search-images.d.ts.map +1 -0
  113. package/dist/sources/ala/tools/search-images.js +64 -0
  114. package/dist/sources/ala/tools/search-images.js.map +1 -0
  115. package/dist/sources/ala/tools/search-occurrences.d.ts +6 -0
  116. package/dist/sources/ala/tools/search-occurrences.d.ts.map +1 -0
  117. package/dist/sources/ala/tools/search-occurrences.js +134 -0
  118. package/dist/sources/ala/tools/search-occurrences.js.map +1 -0
  119. package/dist/sources/ala/tools/search-species.d.ts +6 -0
  120. package/dist/sources/ala/tools/search-species.d.ts.map +1 -0
  121. package/dist/sources/ala/tools/search-species.js +68 -0
  122. package/dist/sources/ala/tools/search-species.js.map +1 -0
  123. package/dist/sources/ala/types.d.ts +255 -0
  124. package/dist/sources/ala/types.d.ts.map +1 -0
  125. package/dist/sources/ala/types.js +7 -0
  126. package/dist/sources/ala/types.js.map +1 -0
  127. package/dist/sources/datagovau/client.d.ts +68 -0
  128. package/dist/sources/datagovau/client.d.ts.map +1 -0
  129. package/dist/sources/datagovau/client.js +344 -0
  130. package/dist/sources/datagovau/client.js.map +1 -0
  131. package/dist/sources/datagovau/index.d.ts +12 -0
  132. package/dist/sources/datagovau/index.d.ts.map +1 -0
  133. package/dist/sources/datagovau/index.js +37 -0
  134. package/dist/sources/datagovau/index.js.map +1 -0
  135. package/dist/sources/datagovau/tools/autocomplete.d.ts +6 -0
  136. package/dist/sources/datagovau/tools/autocomplete.d.ts.map +1 -0
  137. package/dist/sources/datagovau/tools/autocomplete.js +49 -0
  138. package/dist/sources/datagovau/tools/autocomplete.js.map +1 -0
  139. package/dist/sources/datagovau/tools/browse.d.ts +25 -0
  140. package/dist/sources/datagovau/tools/browse.d.ts.map +1 -0
  141. package/dist/sources/datagovau/tools/browse.js +205 -0
  142. package/dist/sources/datagovau/tools/browse.js.map +1 -0
  143. package/dist/sources/datagovau/tools/dataset.d.ts +17 -0
  144. package/dist/sources/datagovau/tools/dataset.d.ts.map +1 -0
  145. package/dist/sources/datagovau/tools/dataset.js +177 -0
  146. package/dist/sources/datagovau/tools/dataset.js.map +1 -0
  147. package/dist/sources/datagovau/tools/harvest.d.ts +6 -0
  148. package/dist/sources/datagovau/tools/harvest.d.ts.map +1 -0
  149. package/dist/sources/datagovau/tools/harvest.js +99 -0
  150. package/dist/sources/datagovau/tools/harvest.js.map +1 -0
  151. package/dist/sources/datagovau/tools/search.d.ts +6 -0
  152. package/dist/sources/datagovau/tools/search.d.ts.map +1 -0
  153. package/dist/sources/datagovau/tools/search.js +85 -0
  154. package/dist/sources/datagovau/tools/search.js.map +1 -0
  155. package/dist/sources/datagovau/types.d.ts +81 -0
  156. package/dist/sources/datagovau/types.d.ts.map +1 -0
  157. package/dist/sources/datagovau/types.js +5 -0
  158. package/dist/sources/datagovau/types.js.map +1 -0
  159. package/dist/sources/ga-hap/client.d.ts +65 -0
  160. package/dist/sources/ga-hap/client.d.ts.map +1 -0
  161. package/dist/sources/ga-hap/client.js +247 -0
  162. package/dist/sources/ga-hap/client.js.map +1 -0
  163. package/dist/sources/ga-hap/index.d.ts +12 -0
  164. package/dist/sources/ga-hap/index.d.ts.map +1 -0
  165. package/dist/sources/ga-hap/index.js +23 -0
  166. package/dist/sources/ga-hap/index.js.map +1 -0
  167. package/dist/sources/ga-hap/tools/get-photo.d.ts +6 -0
  168. package/dist/sources/ga-hap/tools/get-photo.d.ts.map +1 -0
  169. package/dist/sources/ga-hap/tools/get-photo.js +89 -0
  170. package/dist/sources/ga-hap/tools/get-photo.js.map +1 -0
  171. package/dist/sources/ga-hap/tools/harvest.d.ts +6 -0
  172. package/dist/sources/ga-hap/tools/harvest.d.ts.map +1 -0
  173. package/dist/sources/ga-hap/tools/harvest.js +87 -0
  174. package/dist/sources/ga-hap/tools/harvest.js.map +1 -0
  175. package/dist/sources/ga-hap/tools/search.d.ts +6 -0
  176. package/dist/sources/ga-hap/tools/search.d.ts.map +1 -0
  177. package/dist/sources/ga-hap/tools/search.js +97 -0
  178. package/dist/sources/ga-hap/tools/search.js.map +1 -0
  179. package/dist/sources/ga-hap/types.d.ts +178 -0
  180. package/dist/sources/ga-hap/types.d.ts.map +1 -0
  181. package/dist/sources/ga-hap/types.js +30 -0
  182. package/dist/sources/ga-hap/types.js.map +1 -0
  183. package/dist/sources/iiif/client.d.ts +37 -0
  184. package/dist/sources/iiif/client.d.ts.map +1 -0
  185. package/dist/sources/iiif/client.js +142 -0
  186. package/dist/sources/iiif/client.js.map +1 -0
  187. package/dist/sources/iiif/index.d.ts +18 -0
  188. package/dist/sources/iiif/index.d.ts.map +1 -0
  189. package/dist/sources/iiif/index.js +31 -0
  190. package/dist/sources/iiif/index.js.map +1 -0
  191. package/dist/sources/iiif/tools/get-image-url.d.ts +9 -0
  192. package/dist/sources/iiif/tools/get-image-url.d.ts.map +1 -0
  193. package/dist/sources/iiif/tools/get-image-url.js +101 -0
  194. package/dist/sources/iiif/tools/get-image-url.js.map +1 -0
  195. package/dist/sources/iiif/tools/get-manifest.d.ts +9 -0
  196. package/dist/sources/iiif/tools/get-manifest.d.ts.map +1 -0
  197. package/dist/sources/iiif/tools/get-manifest.js +87 -0
  198. package/dist/sources/iiif/tools/get-manifest.js.map +1 -0
  199. package/dist/sources/iiif/types.d.ts +123 -0
  200. package/dist/sources/iiif/types.d.ts.map +1 -0
  201. package/dist/sources/iiif/types.js +26 -0
  202. package/dist/sources/iiif/types.js.map +1 -0
  203. package/dist/sources/museums-victoria/client.d.ts +64 -0
  204. package/dist/sources/museums-victoria/client.d.ts.map +1 -0
  205. package/dist/sources/museums-victoria/client.js +358 -0
  206. package/dist/sources/museums-victoria/client.js.map +1 -0
  207. package/dist/sources/museums-victoria/index.d.ts +12 -0
  208. package/dist/sources/museums-victoria/index.d.ts.map +1 -0
  209. package/dist/sources/museums-victoria/index.js +30 -0
  210. package/dist/sources/museums-victoria/index.js.map +1 -0
  211. package/dist/sources/museums-victoria/tools/harvest.d.ts +6 -0
  212. package/dist/sources/museums-victoria/tools/harvest.d.ts.map +1 -0
  213. package/dist/sources/museums-victoria/tools/harvest.js +120 -0
  214. package/dist/sources/museums-victoria/tools/harvest.js.map +1 -0
  215. package/dist/sources/museums-victoria/tools/records.d.ts +21 -0
  216. package/dist/sources/museums-victoria/tools/records.d.ts.map +1 -0
  217. package/dist/sources/museums-victoria/tools/records.js +225 -0
  218. package/dist/sources/museums-victoria/tools/records.js.map +1 -0
  219. package/dist/sources/museums-victoria/tools/search.d.ts +6 -0
  220. package/dist/sources/museums-victoria/tools/search.d.ts.map +1 -0
  221. package/dist/sources/museums-victoria/tools/search.js +147 -0
  222. package/dist/sources/museums-victoria/tools/search.js.map +1 -0
  223. package/dist/sources/museums-victoria/types.d.ts +153 -0
  224. package/dist/sources/museums-victoria/types.d.ts.map +1 -0
  225. package/dist/sources/museums-victoria/types.js +5 -0
  226. package/dist/sources/museums-victoria/types.js.map +1 -0
  227. package/dist/sources/nma/client.d.ts +52 -0
  228. package/dist/sources/nma/client.d.ts.map +1 -0
  229. package/dist/sources/nma/client.js +175 -0
  230. package/dist/sources/nma/client.js.map +1 -0
  231. package/dist/sources/nma/index.d.ts +12 -0
  232. package/dist/sources/nma/index.d.ts.map +1 -0
  233. package/dist/sources/nma/index.js +39 -0
  234. package/dist/sources/nma/index.js.map +1 -0
  235. package/dist/sources/nma/tools/get-media.d.ts +6 -0
  236. package/dist/sources/nma/tools/get-media.d.ts.map +1 -0
  237. package/dist/sources/nma/tools/get-media.js +58 -0
  238. package/dist/sources/nma/tools/get-media.js.map +1 -0
  239. package/dist/sources/nma/tools/get-object.d.ts +6 -0
  240. package/dist/sources/nma/tools/get-object.d.ts.map +1 -0
  241. package/dist/sources/nma/tools/get-object.js +83 -0
  242. package/dist/sources/nma/tools/get-object.js.map +1 -0
  243. package/dist/sources/nma/tools/get-party.d.ts +6 -0
  244. package/dist/sources/nma/tools/get-party.d.ts.map +1 -0
  245. package/dist/sources/nma/tools/get-party.js +63 -0
  246. package/dist/sources/nma/tools/get-party.js.map +1 -0
  247. package/dist/sources/nma/tools/get-place.d.ts +6 -0
  248. package/dist/sources/nma/tools/get-place.d.ts.map +1 -0
  249. package/dist/sources/nma/tools/get-place.js +50 -0
  250. package/dist/sources/nma/tools/get-place.js.map +1 -0
  251. package/dist/sources/nma/tools/harvest.d.ts +6 -0
  252. package/dist/sources/nma/tools/harvest.d.ts.map +1 -0
  253. package/dist/sources/nma/tools/harvest.js +91 -0
  254. package/dist/sources/nma/tools/harvest.js.map +1 -0
  255. package/dist/sources/nma/tools/search-media.d.ts +6 -0
  256. package/dist/sources/nma/tools/search-media.d.ts.map +1 -0
  257. package/dist/sources/nma/tools/search-media.js +66 -0
  258. package/dist/sources/nma/tools/search-media.js.map +1 -0
  259. package/dist/sources/nma/tools/search-objects.d.ts +6 -0
  260. package/dist/sources/nma/tools/search-objects.d.ts.map +1 -0
  261. package/dist/sources/nma/tools/search-objects.js +70 -0
  262. package/dist/sources/nma/tools/search-objects.js.map +1 -0
  263. package/dist/sources/nma/tools/search-parties.d.ts +6 -0
  264. package/dist/sources/nma/tools/search-parties.d.ts.map +1 -0
  265. package/dist/sources/nma/tools/search-parties.js +64 -0
  266. package/dist/sources/nma/tools/search-parties.js.map +1 -0
  267. package/dist/sources/nma/tools/search-places.d.ts +6 -0
  268. package/dist/sources/nma/tools/search-places.d.ts.map +1 -0
  269. package/dist/sources/nma/tools/search-places.js +53 -0
  270. package/dist/sources/nma/tools/search-places.js.map +1 -0
  271. package/dist/sources/nma/types.d.ts +135 -0
  272. package/dist/sources/nma/types.d.ts.map +1 -0
  273. package/dist/sources/nma/types.js +5 -0
  274. package/dist/sources/nma/types.js.map +1 -0
  275. package/dist/sources/pm-transcripts/client.d.ts +39 -0
  276. package/dist/sources/pm-transcripts/client.d.ts.map +1 -0
  277. package/dist/sources/pm-transcripts/client.js +192 -0
  278. package/dist/sources/pm-transcripts/client.js.map +1 -0
  279. package/dist/sources/pm-transcripts/index.d.ts +13 -0
  280. package/dist/sources/pm-transcripts/index.d.ts.map +1 -0
  281. package/dist/sources/pm-transcripts/index.js +23 -0
  282. package/dist/sources/pm-transcripts/index.js.map +1 -0
  283. package/dist/sources/pm-transcripts/tools/get-transcript.d.ts +6 -0
  284. package/dist/sources/pm-transcripts/tools/get-transcript.d.ts.map +1 -0
  285. package/dist/sources/pm-transcripts/tools/get-transcript.js +52 -0
  286. package/dist/sources/pm-transcripts/tools/get-transcript.js.map +1 -0
  287. package/dist/sources/pm-transcripts/tools/harvest.d.ts +9 -0
  288. package/dist/sources/pm-transcripts/tools/harvest.d.ts.map +1 -0
  289. package/dist/sources/pm-transcripts/tools/harvest.js +213 -0
  290. package/dist/sources/pm-transcripts/tools/harvest.js.map +1 -0
  291. package/dist/sources/pm-transcripts/types.d.ts +54 -0
  292. package/dist/sources/pm-transcripts/types.d.ts.map +1 -0
  293. package/dist/sources/pm-transcripts/types.js +8 -0
  294. package/dist/sources/pm-transcripts/types.js.map +1 -0
  295. package/dist/sources/prov/client.d.ts +46 -0
  296. package/dist/sources/prov/client.d.ts.map +1 -0
  297. package/dist/sources/prov/client.js +297 -0
  298. package/dist/sources/prov/client.js.map +1 -0
  299. package/dist/sources/prov/index.d.ts +12 -0
  300. package/dist/sources/prov/index.d.ts.map +1 -0
  301. package/dist/sources/prov/index.js +31 -0
  302. package/dist/sources/prov/index.js.map +1 -0
  303. package/dist/sources/prov/tools/get-agency.d.ts +6 -0
  304. package/dist/sources/prov/tools/get-agency.d.ts.map +1 -0
  305. package/dist/sources/prov/tools/get-agency.js +49 -0
  306. package/dist/sources/prov/tools/get-agency.js.map +1 -0
  307. package/dist/sources/prov/tools/get-series.d.ts +6 -0
  308. package/dist/sources/prov/tools/get-series.d.ts.map +1 -0
  309. package/dist/sources/prov/tools/get-series.js +51 -0
  310. package/dist/sources/prov/tools/get-series.js.map +1 -0
  311. package/dist/sources/prov/tools/harvest.d.ts +6 -0
  312. package/dist/sources/prov/tools/harvest.d.ts.map +1 -0
  313. package/dist/sources/prov/tools/harvest.js +112 -0
  314. package/dist/sources/prov/tools/harvest.js.map +1 -0
  315. package/dist/sources/prov/tools/images.d.ts +9 -0
  316. package/dist/sources/prov/tools/images.d.ts.map +1 -0
  317. package/dist/sources/prov/tools/images.js +67 -0
  318. package/dist/sources/prov/tools/images.js.map +1 -0
  319. package/dist/sources/prov/tools/search.d.ts +6 -0
  320. package/dist/sources/prov/tools/search.d.ts.map +1 -0
  321. package/dist/sources/prov/tools/search.js +103 -0
  322. package/dist/sources/prov/tools/search.js.map +1 -0
  323. package/dist/sources/prov/types.d.ts +75 -0
  324. package/dist/sources/prov/types.d.ts.map +1 -0
  325. package/dist/sources/prov/types.js +31 -0
  326. package/dist/sources/prov/types.js.map +1 -0
  327. package/dist/sources/trove/client.d.ts +128 -0
  328. package/dist/sources/trove/client.d.ts.map +1 -0
  329. package/dist/sources/trove/client.js +1008 -0
  330. package/dist/sources/trove/client.js.map +1 -0
  331. package/dist/sources/trove/index.d.ts +12 -0
  332. package/dist/sources/trove/index.d.ts.map +1 -0
  333. package/dist/sources/trove/index.js +53 -0
  334. package/dist/sources/trove/index.js.map +1 -0
  335. package/dist/sources/trove/tools/get-contributor.d.ts +6 -0
  336. package/dist/sources/trove/tools/get-contributor.d.ts.map +1 -0
  337. package/dist/sources/trove/tools/get-contributor.js +54 -0
  338. package/dist/sources/trove/tools/get-contributor.js.map +1 -0
  339. package/dist/sources/trove/tools/get-list.d.ts +6 -0
  340. package/dist/sources/trove/tools/get-list.d.ts.map +1 -0
  341. package/dist/sources/trove/tools/get-list.js +95 -0
  342. package/dist/sources/trove/tools/get-list.js.map +1 -0
  343. package/dist/sources/trove/tools/get-magazine-title.d.ts +6 -0
  344. package/dist/sources/trove/tools/get-magazine-title.d.ts.map +1 -0
  345. package/dist/sources/trove/tools/get-magazine-title.js +96 -0
  346. package/dist/sources/trove/tools/get-magazine-title.js.map +1 -0
  347. package/dist/sources/trove/tools/get-person.d.ts +6 -0
  348. package/dist/sources/trove/tools/get-person.d.ts.map +1 -0
  349. package/dist/sources/trove/tools/get-person.js +64 -0
  350. package/dist/sources/trove/tools/get-person.js.map +1 -0
  351. package/dist/sources/trove/tools/get-work.d.ts +6 -0
  352. package/dist/sources/trove/tools/get-work.d.ts.map +1 -0
  353. package/dist/sources/trove/tools/get-work.js +104 -0
  354. package/dist/sources/trove/tools/get-work.js.map +1 -0
  355. package/dist/sources/trove/tools/harvest.d.ts +6 -0
  356. package/dist/sources/trove/tools/harvest.d.ts.map +1 -0
  357. package/dist/sources/trove/tools/harvest.js +127 -0
  358. package/dist/sources/trove/tools/harvest.js.map +1 -0
  359. package/dist/sources/trove/tools/list-contributors.d.ts +6 -0
  360. package/dist/sources/trove/tools/list-contributors.d.ts.map +1 -0
  361. package/dist/sources/trove/tools/list-contributors.js +59 -0
  362. package/dist/sources/trove/tools/list-contributors.js.map +1 -0
  363. package/dist/sources/trove/tools/list-magazine-titles.d.ts +6 -0
  364. package/dist/sources/trove/tools/list-magazine-titles.d.ts.map +1 -0
  365. package/dist/sources/trove/tools/list-magazine-titles.js +42 -0
  366. package/dist/sources/trove/tools/list-magazine-titles.js.map +1 -0
  367. package/dist/sources/trove/tools/newspaper.d.ts +17 -0
  368. package/dist/sources/trove/tools/newspaper.d.ts.map +1 -0
  369. package/dist/sources/trove/tools/newspaper.js +210 -0
  370. package/dist/sources/trove/tools/newspaper.js.map +1 -0
  371. package/dist/sources/trove/tools/search-people.d.ts +6 -0
  372. package/dist/sources/trove/tools/search-people.d.ts.map +1 -0
  373. package/dist/sources/trove/tools/search-people.js +72 -0
  374. package/dist/sources/trove/tools/search-people.js.map +1 -0
  375. package/dist/sources/trove/tools/search.d.ts +6 -0
  376. package/dist/sources/trove/tools/search.d.ts.map +1 -0
  377. package/dist/sources/trove/tools/search.js +219 -0
  378. package/dist/sources/trove/tools/search.js.map +1 -0
  379. package/dist/sources/trove/types.d.ts +257 -0
  380. package/dist/sources/trove/types.d.ts.map +1 -0
  381. package/dist/sources/trove/types.js +38 -0
  382. package/dist/sources/trove/types.js.map +1 -0
  383. package/dist/sources/vhd/client.d.ts +47 -0
  384. package/dist/sources/vhd/client.d.ts.map +1 -0
  385. package/dist/sources/vhd/client.js +158 -0
  386. package/dist/sources/vhd/client.js.map +1 -0
  387. package/dist/sources/vhd/index.d.ts +12 -0
  388. package/dist/sources/vhd/index.d.ts.map +1 -0
  389. package/dist/sources/vhd/index.js +39 -0
  390. package/dist/sources/vhd/index.js.map +1 -0
  391. package/dist/sources/vhd/tools/get-place.d.ts +6 -0
  392. package/dist/sources/vhd/tools/get-place.d.ts.map +1 -0
  393. package/dist/sources/vhd/tools/get-place.js +71 -0
  394. package/dist/sources/vhd/tools/get-place.js.map +1 -0
  395. package/dist/sources/vhd/tools/get-shipwreck.d.ts +6 -0
  396. package/dist/sources/vhd/tools/get-shipwreck.d.ts.map +1 -0
  397. package/dist/sources/vhd/tools/get-shipwreck.js +60 -0
  398. package/dist/sources/vhd/tools/get-shipwreck.js.map +1 -0
  399. package/dist/sources/vhd/tools/harvest.d.ts +6 -0
  400. package/dist/sources/vhd/tools/harvest.d.ts.map +1 -0
  401. package/dist/sources/vhd/tools/harvest.js +109 -0
  402. package/dist/sources/vhd/tools/harvest.js.map +1 -0
  403. package/dist/sources/vhd/tools/list-architectural-styles.d.ts +6 -0
  404. package/dist/sources/vhd/tools/list-architectural-styles.d.ts.map +1 -0
  405. package/dist/sources/vhd/tools/list-architectural-styles.js +33 -0
  406. package/dist/sources/vhd/tools/list-architectural-styles.js.map +1 -0
  407. package/dist/sources/vhd/tools/list-municipalities.d.ts +6 -0
  408. package/dist/sources/vhd/tools/list-municipalities.d.ts.map +1 -0
  409. package/dist/sources/vhd/tools/list-municipalities.js +33 -0
  410. package/dist/sources/vhd/tools/list-municipalities.js.map +1 -0
  411. package/dist/sources/vhd/tools/list-periods.d.ts +6 -0
  412. package/dist/sources/vhd/tools/list-periods.d.ts.map +1 -0
  413. package/dist/sources/vhd/tools/list-periods.js +33 -0
  414. package/dist/sources/vhd/tools/list-periods.js.map +1 -0
  415. package/dist/sources/vhd/tools/list-themes.d.ts +6 -0
  416. package/dist/sources/vhd/tools/list-themes.d.ts.map +1 -0
  417. package/dist/sources/vhd/tools/list-themes.js +34 -0
  418. package/dist/sources/vhd/tools/list-themes.js.map +1 -0
  419. package/dist/sources/vhd/tools/search-places.d.ts +6 -0
  420. package/dist/sources/vhd/tools/search-places.d.ts.map +1 -0
  421. package/dist/sources/vhd/tools/search-places.js +71 -0
  422. package/dist/sources/vhd/tools/search-places.js.map +1 -0
  423. package/dist/sources/vhd/tools/search-shipwrecks.d.ts +6 -0
  424. package/dist/sources/vhd/tools/search-shipwrecks.d.ts.map +1 -0
  425. package/dist/sources/vhd/tools/search-shipwrecks.js +52 -0
  426. package/dist/sources/vhd/tools/search-shipwrecks.js.map +1 -0
  427. package/dist/sources/vhd/types.d.ts +179 -0
  428. package/dist/sources/vhd/types.d.ts.map +1 -0
  429. package/dist/sources/vhd/types.js +5 -0
  430. package/dist/sources/vhd/types.js.map +1 -0
  431. package/dist/tools/datagovau_browse.d.ts +96 -0
  432. package/dist/tools/datagovau_browse.d.ts.map +1 -0
  433. package/dist/tools/datagovau_browse.js +297 -0
  434. package/dist/tools/datagovau_browse.js.map +1 -0
  435. package/dist/tools/datagovau_dataset.d.ts +79 -0
  436. package/dist/tools/datagovau_dataset.d.ts.map +1 -0
  437. package/dist/tools/datagovau_dataset.js +246 -0
  438. package/dist/tools/datagovau_dataset.js.map +1 -0
  439. package/dist/tools/datagovau_search.d.ts +58 -0
  440. package/dist/tools/datagovau_search.d.ts.map +1 -0
  441. package/dist/tools/datagovau_search.js +112 -0
  442. package/dist/tools/datagovau_search.js.map +1 -0
  443. package/dist/tools/harvest.d.ts +175 -0
  444. package/dist/tools/harvest.d.ts.map +1 -0
  445. package/dist/tools/harvest.js +426 -0
  446. package/dist/tools/harvest.js.map +1 -0
  447. package/dist/tools/prov_images.d.ts +38 -0
  448. package/dist/tools/prov_images.d.ts.map +1 -0
  449. package/dist/tools/prov_images.js +87 -0
  450. package/dist/tools/prov_images.js.map +1 -0
  451. package/dist/tools/prov_search.d.ts +60 -0
  452. package/dist/tools/prov_search.d.ts.map +1 -0
  453. package/dist/tools/prov_search.js +131 -0
  454. package/dist/tools/prov_search.js.map +1 -0
  455. package/dist/tools/trove_newspaper.d.ts +100 -0
  456. package/dist/tools/trove_newspaper.d.ts.map +1 -0
  457. package/dist/tools/trove_newspaper.js +282 -0
  458. package/dist/tools/trove_newspaper.js.map +1 -0
  459. package/dist/tools/trove_search.d.ts +62 -0
  460. package/dist/tools/trove_search.d.ts.map +1 -0
  461. package/dist/tools/trove_search.js +143 -0
  462. package/dist/tools/trove_search.js.map +1 -0
  463. package/dist/types.d.ts +231 -0
  464. package/dist/types.d.ts.map +1 -0
  465. package/dist/types.js +5 -0
  466. package/dist/types.js.map +1 -0
  467. package/package.json +73 -0
@@ -0,0 +1,426 @@
1
+ /**
2
+ * Harvest Tools - Bulk download records from PROV, Trove, and data.gov.au
3
+ */
4
+ import { provClient } from '../clients/prov_client.js';
5
+ import { createTroveClient } from '../clients/trove_client.js';
6
+ import { dataGovAUClient } from '../clients/datagovau_client.js';
7
+ // ============================================================================
8
+ // PROV Harvest
9
+ // ============================================================================
10
+ export const provHarvestSchema = {
11
+ name: 'prov_harvest',
12
+ description: `Bulk download records from the PROV (Public Record Office Victoria) collection.
13
+
14
+ Use this for batch harvesting of:
15
+ - Historical photographs
16
+ - Maps and plans
17
+ - Government files and records
18
+ - Council meeting minutes
19
+
20
+ Returns paginated results for large datasets.`,
21
+ inputSchema: {
22
+ type: 'object',
23
+ properties: {
24
+ query: {
25
+ type: 'string',
26
+ description: 'Search text',
27
+ },
28
+ series: {
29
+ type: 'string',
30
+ description: 'VPRS series number',
31
+ },
32
+ agency: {
33
+ type: 'string',
34
+ description: 'VA agency number',
35
+ },
36
+ recordForm: {
37
+ type: 'string',
38
+ description: 'Type of record (e.g., "Photograph or Image", "File", "Volume")',
39
+ enum: [
40
+ 'Photograph or Image',
41
+ 'Map, Plan, or Drawing',
42
+ 'File',
43
+ 'Volume',
44
+ 'Document',
45
+ 'Card',
46
+ 'Object',
47
+ 'Moving Image',
48
+ 'Sound Recording',
49
+ ],
50
+ },
51
+ dateFrom: {
52
+ type: 'string',
53
+ description: 'Start date (YYYY-MM-DD)',
54
+ },
55
+ dateTo: {
56
+ type: 'string',
57
+ description: 'End date (YYYY-MM-DD)',
58
+ },
59
+ digitisedOnly: {
60
+ type: 'boolean',
61
+ description: 'Only digitised records',
62
+ default: false,
63
+ },
64
+ maxRecords: {
65
+ type: 'number',
66
+ description: 'Maximum records to harvest (1-1000)',
67
+ default: 100,
68
+ },
69
+ startFrom: {
70
+ type: 'number',
71
+ description: 'Offset for pagination',
72
+ default: 0,
73
+ },
74
+ },
75
+ required: [],
76
+ },
77
+ };
78
+ export async function executePROVHarvest(input) {
79
+ try {
80
+ if (!input.query && !input.series && !input.agency) {
81
+ return {
82
+ content: [{
83
+ type: 'text',
84
+ text: JSON.stringify({
85
+ error: 'At least one of query, series, or agency is required',
86
+ }),
87
+ }],
88
+ isError: true,
89
+ };
90
+ }
91
+ const maxRecords = Math.min(input.maxRecords ?? 100, 1000);
92
+ const batchSize = 100;
93
+ let start = input.startFrom ?? 0;
94
+ const allRecords = [];
95
+ let totalAvailable = 0;
96
+ // Harvest in batches
97
+ while (allRecords.length < maxRecords) {
98
+ const remaining = maxRecords - allRecords.length;
99
+ const rows = Math.min(batchSize, remaining);
100
+ const result = await provClient.search({
101
+ query: input.query,
102
+ series: input.series,
103
+ agency: input.agency,
104
+ recordForm: input.recordForm,
105
+ startDate: input.dateFrom,
106
+ endDate: input.dateTo,
107
+ digitisedOnly: input.digitisedOnly ?? false,
108
+ rows,
109
+ start,
110
+ });
111
+ totalAvailable = result.totalResults;
112
+ allRecords.push(...result.records);
113
+ // Stop if no more results
114
+ if (result.records.length < rows) {
115
+ break;
116
+ }
117
+ start += rows;
118
+ }
119
+ const hasMore = allRecords.length < totalAvailable;
120
+ const nextOffset = hasMore ? start.toString() : undefined;
121
+ return {
122
+ content: [{
123
+ type: 'text',
124
+ text: JSON.stringify({
125
+ source: 'prov',
126
+ harvested: allRecords.length,
127
+ totalAvailable,
128
+ hasMore,
129
+ nextOffset,
130
+ records: allRecords.map((r) => ({
131
+ id: r.id,
132
+ title: r.title,
133
+ series: r.series,
134
+ agency: r.agency,
135
+ recordForm: r.recordForm,
136
+ dateRange: r.startDate && r.endDate
137
+ ? `${r.startDate} - ${r.endDate}`
138
+ : r.startDate || r.endDate,
139
+ digitised: r.digitised,
140
+ url: r.url,
141
+ })),
142
+ }, null, 2),
143
+ }],
144
+ };
145
+ }
146
+ catch (error) {
147
+ return {
148
+ content: [{
149
+ type: 'text',
150
+ text: JSON.stringify({
151
+ error: error instanceof Error ? error.message : 'Unknown error',
152
+ }),
153
+ }],
154
+ isError: true,
155
+ };
156
+ }
157
+ }
158
+ // ============================================================================
159
+ // Trove Harvest
160
+ // ============================================================================
161
+ export const troveHarvestSchema = {
162
+ name: 'trove_harvest',
163
+ description: `Bulk download records from Trove (National Library of Australia).
164
+
165
+ Use this for batch harvesting of:
166
+ - Newspaper articles for a topic/date range
167
+ - Historical images and maps
168
+ - Government publications
169
+ - Research materials
170
+
171
+ Uses stable cursor-based pagination for reliable harvesting.`,
172
+ inputSchema: {
173
+ type: 'object',
174
+ properties: {
175
+ query: {
176
+ type: 'string',
177
+ description: 'Search terms',
178
+ },
179
+ category: {
180
+ type: 'string',
181
+ description: 'Content category',
182
+ enum: ['all', 'newspaper', 'gazette', 'magazine', 'image', 'book', 'diary', 'music', 'research'],
183
+ default: 'all',
184
+ },
185
+ state: {
186
+ type: 'string',
187
+ description: 'Filter by state (newspapers)',
188
+ enum: ['vic', 'nsw', 'qld', 'sa', 'wa', 'tas', 'nt', 'act', 'national'],
189
+ },
190
+ dateFrom: {
191
+ type: 'string',
192
+ description: 'Start date (YYYY)',
193
+ },
194
+ dateTo: {
195
+ type: 'string',
196
+ description: 'End date (YYYY)',
197
+ },
198
+ format: {
199
+ type: 'string',
200
+ description: 'Format filter (e.g., "Photograph", "Map")',
201
+ },
202
+ maxRecords: {
203
+ type: 'number',
204
+ description: 'Maximum records to harvest (1-1000)',
205
+ default: 100,
206
+ },
207
+ cursor: {
208
+ type: 'string',
209
+ description: 'Pagination cursor from previous harvest',
210
+ },
211
+ includeFullText: {
212
+ type: 'boolean',
213
+ description: 'Include article text (newspapers only)',
214
+ default: false,
215
+ },
216
+ },
217
+ required: ['query'],
218
+ },
219
+ };
220
+ export async function executeTroveHarvest(input) {
221
+ try {
222
+ const client = createTroveClient();
223
+ if (!client.hasApiKey()) {
224
+ return {
225
+ content: [{
226
+ type: 'text',
227
+ text: JSON.stringify({
228
+ error: 'TROVE_API_KEY not configured',
229
+ }),
230
+ }],
231
+ isError: true,
232
+ };
233
+ }
234
+ const maxRecords = Math.min(input.maxRecords ?? 100, 1000);
235
+ const batchSize = 100; // Trove max per request
236
+ let cursor = input.cursor ?? '*';
237
+ const allRecords = [];
238
+ let totalAvailable = 0;
239
+ // Harvest in batches using bulk harvest mode
240
+ while (allRecords.length < maxRecords) {
241
+ const remaining = maxRecords - allRecords.length;
242
+ const limit = Math.min(batchSize, remaining);
243
+ const result = await client.search({
244
+ query: input.query,
245
+ category: input.category ?? 'all',
246
+ state: input.state,
247
+ dateFrom: input.dateFrom,
248
+ dateTo: input.dateTo,
249
+ format: input.format,
250
+ limit,
251
+ start: cursor,
252
+ bulkHarvest: true,
253
+ includeFullText: input.includeFullText,
254
+ });
255
+ totalAvailable = result.totalResults;
256
+ allRecords.push(...result.records);
257
+ // Stop if no more results or no next cursor
258
+ if (!result.nextStart || result.records.length < limit) {
259
+ cursor = result.nextStart ?? '';
260
+ break;
261
+ }
262
+ cursor = result.nextStart;
263
+ }
264
+ const hasMore = allRecords.length < totalAvailable;
265
+ const nextCursor = cursor && hasMore ? cursor : undefined;
266
+ return {
267
+ content: [{
268
+ type: 'text',
269
+ text: JSON.stringify({
270
+ source: 'trove',
271
+ harvested: allRecords.length,
272
+ totalAvailable,
273
+ hasMore,
274
+ nextCursor,
275
+ records: allRecords.map((r) => {
276
+ if ('heading' in r) {
277
+ return {
278
+ type: 'article',
279
+ id: r.id,
280
+ heading: r.heading,
281
+ newspaper: r.title,
282
+ date: r.date,
283
+ url: r.troveUrl,
284
+ };
285
+ }
286
+ else {
287
+ return {
288
+ type: 'work',
289
+ id: r.id,
290
+ title: r.title,
291
+ format: r.type,
292
+ issued: r.issued,
293
+ url: r.troveUrl,
294
+ };
295
+ }
296
+ }),
297
+ }, null, 2),
298
+ }],
299
+ };
300
+ }
301
+ catch (error) {
302
+ return {
303
+ content: [{
304
+ type: 'text',
305
+ text: JSON.stringify({
306
+ error: error instanceof Error ? error.message : 'Unknown error',
307
+ }),
308
+ }],
309
+ isError: true,
310
+ };
311
+ }
312
+ }
313
+ // ============================================================================
314
+ // data.gov.au Harvest
315
+ // ============================================================================
316
+ export const dataGovAUHarvestSchema = {
317
+ name: 'datagovau_harvest',
318
+ description: `Bulk download dataset metadata from data.gov.au.
319
+
320
+ Use this for batch harvesting of:
321
+ - Dataset metadata from specific organisations
322
+ - Datasets matching search criteria
323
+ - Datasets with specific formats or tags
324
+
325
+ Returns paginated results for large datasets.`,
326
+ inputSchema: {
327
+ type: 'object',
328
+ properties: {
329
+ query: {
330
+ type: 'string',
331
+ description: 'Search keywords',
332
+ },
333
+ organization: {
334
+ type: 'string',
335
+ description: 'Filter by organisation slug',
336
+ },
337
+ format: {
338
+ type: 'string',
339
+ description: 'Filter by resource format (e.g., "CSV", "JSON")',
340
+ },
341
+ tags: {
342
+ type: 'array',
343
+ items: { type: 'string' },
344
+ description: 'Filter by tags',
345
+ },
346
+ maxRecords: {
347
+ type: 'number',
348
+ description: 'Maximum datasets to harvest (1-1000)',
349
+ default: 100,
350
+ },
351
+ startFrom: {
352
+ type: 'number',
353
+ description: 'Offset for pagination',
354
+ default: 0,
355
+ },
356
+ },
357
+ required: [],
358
+ },
359
+ };
360
+ export async function executeDataGovAUHarvest(input) {
361
+ try {
362
+ const maxRecords = Math.min(input.maxRecords ?? 100, 1000);
363
+ const batchSize = 100;
364
+ let offset = input.startFrom ?? 0;
365
+ const allDatasets = [];
366
+ let totalAvailable = 0;
367
+ // Harvest in batches
368
+ while (allDatasets.length < maxRecords) {
369
+ const remaining = maxRecords - allDatasets.length;
370
+ const limit = Math.min(batchSize, remaining);
371
+ const result = await dataGovAUClient.search({
372
+ query: input.query,
373
+ organization: input.organization,
374
+ format: input.format,
375
+ tags: input.tags,
376
+ limit,
377
+ offset,
378
+ sort: 'metadata_modified desc',
379
+ });
380
+ totalAvailable = result.count;
381
+ allDatasets.push(...result.datasets);
382
+ // Stop if no more results
383
+ if (result.datasets.length < limit) {
384
+ break;
385
+ }
386
+ offset += limit;
387
+ }
388
+ const hasMore = allDatasets.length < totalAvailable;
389
+ const nextOffset = hasMore ? offset : undefined;
390
+ return {
391
+ content: [{
392
+ type: 'text',
393
+ text: JSON.stringify({
394
+ source: 'datagovau',
395
+ harvested: allDatasets.length,
396
+ totalAvailable,
397
+ hasMore,
398
+ nextOffset,
399
+ datasets: allDatasets.map((d) => ({
400
+ id: d.id,
401
+ name: d.name,
402
+ title: d.title,
403
+ organization: d.organization?.title,
404
+ resourceCount: d.resources?.length ?? 0,
405
+ formats: [...new Set((d.resources ?? []).map((r) => r.format))],
406
+ license: d.licenseTitle || d.licenseId,
407
+ modified: d.metadataModified,
408
+ url: `https://data.gov.au/dataset/${d.name}`,
409
+ })),
410
+ }, null, 2),
411
+ }],
412
+ };
413
+ }
414
+ catch (error) {
415
+ return {
416
+ content: [{
417
+ type: 'text',
418
+ text: JSON.stringify({
419
+ error: error instanceof Error ? error.message : 'Unknown error',
420
+ }),
421
+ }],
422
+ isError: true,
423
+ };
424
+ }
425
+ }
426
+ //# sourceMappingURL=harvest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harvest.js","sourceRoot":"","sources":["../../src/tools/harvest.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGjE,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE;;;;;;;;8CAQ+B;IAC5C,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,aAAa;aAC3B;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oBAAoB;aAClC;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kBAAkB;aAChC;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gEAAgE;gBAC7E,IAAI,EAAE;oBACJ,qBAAqB;oBACrB,uBAAuB;oBACvB,MAAM;oBACN,QAAQ;oBACR,UAAU;oBACV,MAAM;oBACN,QAAQ;oBACR,cAAc;oBACd,iBAAiB;iBAClB;aACF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;aACvC;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uBAAuB;aACrC;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,wBAAwB;gBACrC,OAAO,EAAE,KAAK;aACf;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qCAAqC;gBAClD,OAAO,EAAE,GAAG;aACb;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uBAAuB;gBACpC,OAAO,EAAE,CAAC;aACX;SACF;QACD,QAAQ,EAAE,EAAE;KACb;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAUxC;IACC,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACnD,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,KAAK,EAAE,sDAAsD;yBAC9D,CAAC;qBACH,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,GAAG,CAAC;QACtB,IAAI,KAAK,GAAG,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;QACjC,MAAM,UAAU,GAAU,EAAE,CAAC;QAC7B,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,qBAAqB;QACrB,OAAO,UAAU,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;YACjD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAE5C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC;gBACrC,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,SAAS,EAAE,KAAK,CAAC,QAAQ;gBACzB,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK;gBAC3C,IAAI;gBACJ,KAAK;aACN,CAAC,CAAC;YAEH,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnC,0BAA0B;YAC1B,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;gBACjC,MAAM;YACR,CAAC;YAED,KAAK,IAAI,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,cAAc,CAAC;QACnD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1D,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,MAAM,EAAE,MAAM;wBACd,SAAS,EAAE,UAAU,CAAC,MAAM;wBAC5B,cAAc;wBACd,OAAO;wBACP,UAAU;wBACV,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;4BACnC,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,KAAK,EAAE,CAAC,CAAC,KAAK;4BACd,MAAM,EAAE,CAAC,CAAC,MAAM;4BAChB,MAAM,EAAE,CAAC,CAAC,MAAM;4BAChB,UAAU,EAAE,CAAC,CAAC,UAAU;4BACxB,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO;gCACjC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,OAAO,EAAE;gCACjC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO;4BAC5B,SAAS,EAAE,CAAC,CAAC,SAAS;4BACtB,GAAG,EAAE,CAAC,CAAC,GAAG;yBACX,CAAC,CAAC;qBACJ,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAChE,CAAC;iBACH,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE;;;;;;;;6DAQ8C;IAC3D,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,cAAc;aAC5B;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC;gBAChG,OAAO,EAAE,KAAK;aACf;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC;aACxE;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mBAAmB;aACjC;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iBAAiB;aAC/B;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2CAA2C;aACzD;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qCAAqC;gBAClD,OAAO,EAAE,GAAG;aACb;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yCAAyC;aACvD;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,wCAAwC;gBACrD,OAAO,EAAE,KAAK;aACf;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,KAUzC;IACC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;QAEnC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;YACxB,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,KAAK,EAAE,8BAA8B;yBACtC,CAAC;qBACH,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,wBAAwB;QAC/C,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;QACjC,MAAM,UAAU,GAAU,EAAE,CAAC;QAC7B,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,6CAA6C;QAC7C,OAAO,UAAU,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;YACjD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAE7C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;gBACjC,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,QAAQ,EAAG,KAAK,CAAC,QAA0B,IAAI,KAAK;gBACpD,KAAK,EAAE,KAAK,CAAC,KAAmB;gBAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,KAAK;gBACL,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,IAAI;gBACjB,eAAe,EAAE,KAAK,CAAC,eAAe;aACvC,CAAC,CAAC;YAEH,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnC,4CAA4C;YAC5C,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;gBACvD,MAAM,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;gBAChC,MAAM;YACR,CAAC;YAED,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;QAC5B,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,cAAc,CAAC;QACnD,MAAM,UAAU,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1D,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,MAAM,EAAE,OAAO;wBACf,SAAS,EAAE,UAAU,CAAC,MAAM;wBAC5B,cAAc;wBACd,OAAO;wBACP,UAAU;wBACV,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;4BACjC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;gCACnB,OAAO;oCACL,IAAI,EAAE,SAAS;oCACf,EAAE,EAAE,CAAC,CAAC,EAAE;oCACR,OAAO,EAAE,CAAC,CAAC,OAAO;oCAClB,SAAS,EAAE,CAAC,CAAC,KAAK;oCAClB,IAAI,EAAE,CAAC,CAAC,IAAI;oCACZ,GAAG,EAAE,CAAC,CAAC,QAAQ;iCAChB,CAAC;4BACJ,CAAC;iCAAM,CAAC;gCACN,OAAO;oCACL,IAAI,EAAE,MAAM;oCACZ,EAAE,EAAE,CAAC,CAAC,EAAE;oCACR,KAAK,EAAE,CAAC,CAAC,KAAK;oCACd,MAAM,EAAE,CAAC,CAAC,IAAI;oCACd,MAAM,EAAE,CAAC,CAAC,MAAM;oCAChB,GAAG,EAAE,CAAC,CAAC,QAAQ;iCAChB,CAAC;4BACJ,CAAC;wBACH,CAAC,CAAC;qBACH,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAChE,CAAC;iBACH,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE;;;;;;;8CAO+B;IAC5C,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iBAAiB;aAC/B;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iDAAiD;aAC/D;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,gBAAgB;aAC9B;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sCAAsC;gBACnD,OAAO,EAAE,GAAG;aACb;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uBAAuB;gBACpC,OAAO,EAAE,CAAC;aACX;SACF;QACD,QAAQ,EAAE,EAAE;KACb;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,KAO7C;IACC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,GAAG,CAAC;QACtB,IAAI,MAAM,GAAG,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;QAClC,MAAM,WAAW,GAAU,EAAE,CAAC;QAC9B,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,qBAAqB;QACrB,OAAO,WAAW,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC;YAClD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAE7C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC;gBAC1C,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK;gBACL,MAAM;gBACN,IAAI,EAAE,wBAAwB;aAC/B,CAAC,CAAC;YAEH,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;YAErC,0BAA0B;YAC1B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;gBACnC,MAAM;YACR,CAAC;YAED,MAAM,IAAI,KAAK,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,GAAG,cAAc,CAAC;QACpD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAEhD,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,MAAM,EAAE,WAAW;wBACnB,SAAS,EAAE,WAAW,CAAC,MAAM;wBAC7B,cAAc;wBACd,OAAO;wBACP,UAAU;wBACV,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;4BACrC,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,KAAK,EAAE,CAAC,CAAC,KAAK;4BACd,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,KAAK;4BACnC,aAAa,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;4BACvC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;4BACpE,OAAO,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,SAAS;4BACtC,QAAQ,EAAE,CAAC,CAAC,gBAAgB;4BAC5B,GAAG,EAAE,+BAA+B,CAAC,CAAC,IAAI,EAAE;yBAC7C,CAAC,CAAC;qBACJ,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAChE,CAAC;iBACH,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * PROV IIIF Image Extraction Tool
3
+ *
4
+ * Fetches and parses IIIF manifests from PROV to extract
5
+ * downloadable image URLs in different sizes.
6
+ */
7
+ import type { MCPToolResponse } from '../types.js';
8
+ export declare const provGetImagesSchema: {
9
+ name: string;
10
+ description: string;
11
+ inputSchema: {
12
+ type: string;
13
+ properties: {
14
+ manifestUrl: {
15
+ type: string;
16
+ description: string;
17
+ };
18
+ pages: {
19
+ type: string;
20
+ description: string;
21
+ };
22
+ size: {
23
+ type: string;
24
+ enum: string[];
25
+ description: string;
26
+ };
27
+ };
28
+ required: string[];
29
+ };
30
+ };
31
+ interface PROVGetImagesArgs {
32
+ manifestUrl: string;
33
+ pages?: string;
34
+ size?: 'thumbnail' | 'medium' | 'full' | 'all';
35
+ }
36
+ export declare function executePROVGetImages(args: PROVGetImagesArgs): Promise<MCPToolResponse>;
37
+ export {};
38
+ //# sourceMappingURL=prov_images.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prov_images.d.ts","sourceRoot":"","sources":["../../src/tools/prov_images.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAOnD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;CA4B/B,CAAC;AAMF,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;CAChD;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,eAAe,CAAC,CAgD1B"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * PROV IIIF Image Extraction Tool
3
+ *
4
+ * Fetches and parses IIIF manifests from PROV to extract
5
+ * downloadable image URLs in different sizes.
6
+ */
7
+ import { provClient } from '../clients/prov_client.js';
8
+ // ============================================================================
9
+ // Tool Schema
10
+ // ============================================================================
11
+ export const provGetImagesSchema = {
12
+ name: 'prov_get_images',
13
+ description: `Extract image URLs from a PROV digitised record.
14
+
15
+ Fetches the IIIF manifest and returns downloadable URLs for each page
16
+ in three sizes: thumbnail (200px), medium (800px), and full resolution.
17
+
18
+ Returns URLs that can be opened directly in a browser or downloaded.
19
+ Use the 'pages' parameter to limit which pages are returned.`,
20
+ inputSchema: {
21
+ type: 'object',
22
+ properties: {
23
+ manifestUrl: {
24
+ type: 'string',
25
+ description: 'The IIIF manifest URL from a PROV search result (iiifManifest field)',
26
+ },
27
+ pages: {
28
+ type: 'string',
29
+ description: 'Optional page filter. Examples: "1-5" for pages 1-5, "1,3,7" for specific pages, "1-3,7,10-12" for mixed ranges',
30
+ },
31
+ size: {
32
+ type: 'string',
33
+ enum: ['thumbnail', 'medium', 'full', 'all'],
34
+ description: 'Which size URLs to return. Default: "all"',
35
+ },
36
+ },
37
+ required: ['manifestUrl'],
38
+ },
39
+ };
40
+ export async function executePROVGetImages(args) {
41
+ try {
42
+ const result = await provClient.getImages(args.manifestUrl, {
43
+ pageRange: args.pages,
44
+ });
45
+ // Filter to requested size(s)
46
+ const size = args.size ?? 'all';
47
+ const images = result.images.map((img) => {
48
+ if (size === 'all') {
49
+ return img;
50
+ }
51
+ return {
52
+ page: img.page,
53
+ label: img.label,
54
+ url: img[size],
55
+ };
56
+ });
57
+ const output = {
58
+ source: 'prov',
59
+ manifestUrl: result.manifestUrl,
60
+ title: result.title,
61
+ description: result.description,
62
+ totalPages: result.totalPages,
63
+ returnedPages: images.length,
64
+ size: size,
65
+ images,
66
+ };
67
+ return {
68
+ content: [{
69
+ type: 'text',
70
+ text: JSON.stringify(output, null, 2),
71
+ }],
72
+ };
73
+ }
74
+ catch (error) {
75
+ return {
76
+ content: [{
77
+ type: 'text',
78
+ text: JSON.stringify({
79
+ error: error instanceof Error ? error.message : 'Unknown error',
80
+ manifestUrl: args.manifestUrl,
81
+ }),
82
+ }],
83
+ isError: true,
84
+ };
85
+ }
86
+ }
87
+ //# sourceMappingURL=prov_images.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prov_images.js","sourceRoot":"","sources":["../../src/tools/prov_images.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE;;;;;;6DAM8C;IAC3D,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;aACpF;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iHAAiH;aAC/H;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;gBAC5C,WAAW,EAAE,2CAA2C;aACzD;SACF;QACD,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;CACF,CAAC;AAYF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAuB;IAEvB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE;YAC1D,SAAS,EAAE,IAAI,CAAC,KAAK;SACtB,CAAC,CAAC;QAEH,8BAA8B;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACvC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,OAAO,GAAG,CAAC;YACb,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;aACf,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,aAAa,EAAE,MAAM,CAAC,MAAM;YAC5B,IAAI,EAAE,IAAI;YACV,MAAM;SACP,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;iBACtC,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;wBAC/D,WAAW,EAAE,IAAI,CAAC,WAAW;qBAC9B,CAAC;iBACH,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * PROV Search Tool - Search the Public Record Office Victoria collection
3
+ */
4
+ import type { MCPToolResponse } from '../types.js';
5
+ export declare const provSearchSchema: {
6
+ name: string;
7
+ description: string;
8
+ inputSchema: {
9
+ type: "object";
10
+ properties: {
11
+ query: {
12
+ type: string;
13
+ description: string;
14
+ };
15
+ series: {
16
+ type: string;
17
+ description: string;
18
+ };
19
+ agency: {
20
+ type: string;
21
+ description: string;
22
+ };
23
+ recordForm: {
24
+ type: string;
25
+ description: string;
26
+ enum: string[];
27
+ };
28
+ dateFrom: {
29
+ type: string;
30
+ description: string;
31
+ };
32
+ dateTo: {
33
+ type: string;
34
+ description: string;
35
+ };
36
+ digitisedOnly: {
37
+ type: string;
38
+ description: string;
39
+ default: boolean;
40
+ };
41
+ limit: {
42
+ type: string;
43
+ description: string;
44
+ default: number;
45
+ };
46
+ };
47
+ required: never[];
48
+ };
49
+ };
50
+ export declare function executePROVSearch(input: {
51
+ query?: string;
52
+ series?: string;
53
+ agency?: string;
54
+ recordForm?: string;
55
+ dateFrom?: string;
56
+ dateTo?: string;
57
+ digitisedOnly?: boolean;
58
+ limit?: number;
59
+ }): Promise<MCPToolResponse>;
60
+ //# sourceMappingURL=prov_search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prov_search.d.ts","sourceRoot":"","sources":["../../src/tools/prov_search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAErE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8D5B,CAAC;AAEF,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,eAAe,CAAC,CAgE3B"}