@wentorai/research-plugins 1.1.0 → 1.2.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 (261) hide show
  1. package/README.md +18 -18
  2. package/curated/analysis/README.md +12 -1
  3. package/curated/domains/README.md +48 -1
  4. package/curated/literature/README.md +46 -1
  5. package/curated/research/README.md +16 -1
  6. package/curated/tools/README.md +20 -1
  7. package/curated/writing/README.md +13 -1
  8. package/mcp-configs/academic-db/alphafold-mcp.json +20 -0
  9. package/mcp-configs/academic-db/brightspace-mcp.json +21 -0
  10. package/mcp-configs/academic-db/climatiq-mcp.json +20 -0
  11. package/mcp-configs/academic-db/gibs-mcp.json +20 -0
  12. package/mcp-configs/academic-db/gis-mcp-server.json +22 -0
  13. package/mcp-configs/academic-db/google-earth-engine-mcp.json +21 -0
  14. package/mcp-configs/academic-db/m4-clinical-mcp.json +21 -0
  15. package/mcp-configs/academic-db/medical-mcp.json +21 -0
  16. package/mcp-configs/academic-db/nexonco-mcp.json +20 -0
  17. package/mcp-configs/academic-db/omop-mcp.json +20 -0
  18. package/mcp-configs/academic-db/onekgpd-mcp.json +20 -0
  19. package/mcp-configs/academic-db/openedu-mcp.json +20 -0
  20. package/mcp-configs/academic-db/opengenes-mcp.json +20 -0
  21. package/mcp-configs/academic-db/openstax-mcp.json +21 -0
  22. package/mcp-configs/academic-db/openstreetmap-mcp.json +21 -0
  23. package/mcp-configs/academic-db/opentargets-mcp.json +21 -0
  24. package/mcp-configs/academic-db/pdb-mcp.json +21 -0
  25. package/mcp-configs/academic-db/smithsonian-mcp.json +20 -0
  26. package/mcp-configs/ai-platform/magi-researchers.json +21 -0
  27. package/mcp-configs/ai-platform/mcp-academic-researcher.json +22 -0
  28. package/mcp-configs/ai-platform/open-paper-machine.json +21 -0
  29. package/mcp-configs/ai-platform/paper-intelligence.json +21 -0
  30. package/mcp-configs/ai-platform/paper-reader.json +21 -0
  31. package/mcp-configs/ai-platform/paperdebugger.json +21 -0
  32. package/mcp-configs/browser/exa-mcp.json +20 -0
  33. package/mcp-configs/browser/mcp-searxng.json +21 -0
  34. package/mcp-configs/browser/mcp-webresearch.json +20 -0
  35. package/mcp-configs/communication/discourse-mcp.json +21 -0
  36. package/mcp-configs/data-platform/automl-stat-mcp.json +21 -0
  37. package/mcp-configs/data-platform/jefferson-stats-mcp.json +22 -0
  38. package/mcp-configs/data-platform/mcp-excel-server.json +21 -0
  39. package/mcp-configs/data-platform/mcp-stata.json +21 -0
  40. package/mcp-configs/data-platform/mcpstack-jupyter.json +21 -0
  41. package/mcp-configs/data-platform/ml-mcp.json +21 -0
  42. package/mcp-configs/data-platform/nasdaq-data-link-mcp.json +20 -0
  43. package/mcp-configs/data-platform/numpy-mcp.json +21 -0
  44. package/mcp-configs/dev-platform/geogebra-mcp.json +21 -0
  45. package/mcp-configs/dev-platform/latex-mcp-server.json +21 -0
  46. package/mcp-configs/dev-platform/manim-mcp.json +20 -0
  47. package/mcp-configs/dev-platform/mcp-echarts.json +20 -0
  48. package/mcp-configs/dev-platform/panel-viz-mcp.json +20 -0
  49. package/mcp-configs/dev-platform/paperbanana.json +20 -0
  50. package/mcp-configs/dev-platform/texflow-mcp.json +20 -0
  51. package/mcp-configs/dev-platform/texmcp.json +20 -0
  52. package/mcp-configs/dev-platform/typst-mcp.json +21 -0
  53. package/mcp-configs/dev-platform/vizro-mcp.json +20 -0
  54. package/mcp-configs/note-knowledge/local-faiss-mcp.json +21 -0
  55. package/mcp-configs/note-knowledge/mcp-memory-service.json +21 -0
  56. package/mcp-configs/note-knowledge/mcp-obsidian.json +23 -0
  57. package/mcp-configs/note-knowledge/mcp-ragdocs.json +20 -0
  58. package/mcp-configs/note-knowledge/mcp-summarizer.json +21 -0
  59. package/mcp-configs/note-knowledge/mediawiki-mcp.json +21 -0
  60. package/mcp-configs/note-knowledge/openzim-mcp.json +20 -0
  61. package/mcp-configs/note-knowledge/zettelkasten-mcp.json +21 -0
  62. package/mcp-configs/reference-mgr/academic-paper-mcp-http.json +20 -0
  63. package/mcp-configs/reference-mgr/academix.json +20 -0
  64. package/mcp-configs/reference-mgr/arxiv-research-mcp.json +21 -0
  65. package/mcp-configs/reference-mgr/google-scholar-abstract-mcp.json +19 -0
  66. package/mcp-configs/reference-mgr/google-scholar-mcp.json +20 -0
  67. package/mcp-configs/reference-mgr/mcp-paperswithcode.json +21 -0
  68. package/mcp-configs/reference-mgr/mcp-scholarly.json +20 -0
  69. package/mcp-configs/reference-mgr/mcp-simple-arxiv.json +20 -0
  70. package/mcp-configs/reference-mgr/mcp-simple-pubmed.json +20 -0
  71. package/mcp-configs/reference-mgr/mcp-zotero.json +21 -0
  72. package/mcp-configs/reference-mgr/mendeley-mcp.json +20 -0
  73. package/mcp-configs/reference-mgr/ncbi-mcp-server.json +22 -0
  74. package/mcp-configs/reference-mgr/onecite.json +21 -0
  75. package/mcp-configs/reference-mgr/paper-search-mcp.json +21 -0
  76. package/mcp-configs/reference-mgr/pubmed-search-mcp.json +21 -0
  77. package/mcp-configs/reference-mgr/scholar-mcp.json +21 -0
  78. package/mcp-configs/reference-mgr/scholar-multi-mcp.json +21 -0
  79. package/mcp-configs/reference-mgr/seerai.json +21 -0
  80. package/mcp-configs/reference-mgr/semantic-scholar-fastmcp.json +21 -0
  81. package/mcp-configs/reference-mgr/sourcelibrary.json +20 -0
  82. package/openclaw.plugin.json +2 -2
  83. package/package.json +2 -2
  84. package/skills/analysis/dataviz/citation-map-guide/SKILL.md +184 -0
  85. package/skills/analysis/dataviz/data-visualization-principles/SKILL.md +171 -0
  86. package/skills/analysis/econometrics/econml-causal-guide/SKILL.md +2 -2
  87. package/skills/analysis/econometrics/empirical-paper-analysis/SKILL.md +192 -0
  88. package/skills/analysis/econometrics/mostly-harmless-guide/SKILL.md +2 -2
  89. package/skills/analysis/econometrics/panel-data-regression-workflow/SKILL.md +267 -0
  90. package/skills/analysis/econometrics/python-causality-guide/SKILL.md +2 -2
  91. package/skills/analysis/econometrics/stata-reference-guide/SKILL.md +293 -0
  92. package/skills/analysis/statistics/general-statistics-guide/SKILL.md +226 -0
  93. package/skills/analysis/statistics/infiagent-benchmark-guide/SKILL.md +106 -0
  94. package/skills/analysis/wrangling/claude-data-analysis-guide/SKILL.md +100 -0
  95. package/skills/analysis/wrangling/open-data-scientist-guide/SKILL.md +197 -0
  96. package/skills/analysis/wrangling/streamline-analyst-guide/SKILL.md +119 -0
  97. package/skills/domains/ai-ml/ai-agent-papers-guide/SKILL.md +146 -0
  98. package/skills/domains/ai-ml/anomaly-detection-papers-guide/SKILL.md +167 -0
  99. package/skills/domains/ai-ml/autonomous-agents-papers-guide/SKILL.md +178 -0
  100. package/skills/domains/ai-ml/domain-adaptation-papers-guide/SKILL.md +173 -0
  101. package/skills/domains/ai-ml/generative-ai-guide/SKILL.md +2 -2
  102. package/skills/domains/ai-ml/graph-learning-papers-guide/SKILL.md +125 -0
  103. package/skills/domains/ai-ml/kolmogorov-arnold-networks-guide/SKILL.md +185 -0
  104. package/skills/domains/ai-ml/npcpy-research-guide/SKILL.md +137 -0
  105. package/skills/domains/ai-ml/responsible-ai-guide/SKILL.md +126 -0
  106. package/skills/domains/ai-ml/vmas-simulator-guide/SKILL.md +129 -0
  107. package/skills/domains/biomedical/clawbio-guide/SKILL.md +167 -0
  108. package/skills/domains/biomedical/clinical-dialogue-agents-guide/SKILL.md +145 -0
  109. package/skills/domains/biomedical/ena-sequence-api/SKILL.md +175 -0
  110. package/skills/domains/biomedical/genomas-guide/SKILL.md +126 -0
  111. package/skills/domains/biomedical/genotex-benchmark-guide/SKILL.md +125 -0
  112. package/skills/domains/biomedical/med-researcher-guide/SKILL.md +161 -0
  113. package/skills/domains/biomedical/med-researcher-r1-guide/SKILL.md +146 -0
  114. package/skills/domains/biomedical/ncbi-blast-api/SKILL.md +195 -0
  115. package/skills/domains/biomedical/ncbi-datasets-api/SKILL.md +220 -0
  116. package/skills/domains/biomedical/quickgo-api/SKILL.md +181 -0
  117. package/skills/domains/business/xpert-bi-guide/SKILL.md +84 -0
  118. package/skills/domains/chemistry/cactus-cheminformatics-guide/SKILL.md +89 -0
  119. package/skills/domains/chemistry/chemeagle-guide/SKILL.md +147 -0
  120. package/skills/domains/chemistry/chemgraph-agent-guide/SKILL.md +120 -0
  121. package/skills/domains/cs/ai-security-papers-guide/SKILL.md +103 -0
  122. package/skills/domains/cs/code-llm-papers-guide/SKILL.md +131 -0
  123. package/skills/domains/cs/gaussian-splatting-papers-guide/SKILL.md +158 -0
  124. package/skills/domains/cs/llm-aiops-guide/SKILL.md +70 -0
  125. package/skills/domains/cs/software-heritage-api/SKILL.md +200 -0
  126. package/skills/domains/economics/nber-working-papers-api/SKILL.md +177 -0
  127. package/skills/domains/economics/repec-economics-api/SKILL.md +188 -0
  128. package/skills/domains/education/academic-study-methods/SKILL.md +228 -0
  129. package/skills/domains/education/edumcp-guide/SKILL.md +74 -0
  130. package/skills/domains/education/open-syllabus-api/SKILL.md +171 -0
  131. package/skills/domains/finance/akshare-finance-data/SKILL.md +207 -0
  132. package/skills/domains/finance/finsight-research-guide/SKILL.md +113 -0
  133. package/skills/domains/finance/options-analytics-agent-guide/SKILL.md +117 -0
  134. package/skills/domains/geoscience/pangaea-data-api/SKILL.md +197 -0
  135. package/skills/domains/humanities/digital-humanities-methods/SKILL.md +232 -0
  136. package/skills/domains/law/caselaw-access-api/SKILL.md +149 -0
  137. package/skills/domains/law/legal-agent-skills-guide/SKILL.md +132 -0
  138. package/skills/domains/law/legal-research-methods/SKILL.md +190 -0
  139. package/skills/domains/law/opencontracts-guide/SKILL.md +168 -0
  140. package/skills/domains/math/lean-theorem-proving-guide/SKILL.md +140 -0
  141. package/skills/domains/pharma/madd-drug-discovery-guide/SKILL.md +153 -0
  142. package/skills/domains/social-science/ipums-microdata-api/SKILL.md +211 -0
  143. package/skills/domains/social-science/sociology-research-methods/SKILL.md +181 -0
  144. package/skills/literature/discovery/arxiv-paper-monitoring/SKILL.md +233 -0
  145. package/skills/literature/discovery/papers-we-love-guide/SKILL.md +169 -0
  146. package/skills/literature/discovery/zotero-arxiv-daily-guide/SKILL.md +2 -2
  147. package/skills/literature/fulltext/bioc-pmc-api/SKILL.md +146 -0
  148. package/skills/literature/fulltext/dataverse-api/SKILL.md +215 -0
  149. package/skills/literature/fulltext/hal-archive-api/SKILL.md +218 -0
  150. package/skills/literature/fulltext/osf-api/SKILL.md +212 -0
  151. package/skills/literature/fulltext/pmc-ftp-bulk-download/SKILL.md +182 -0
  152. package/skills/literature/fulltext/zotero-ai-butler-guide/SKILL.md +166 -0
  153. package/skills/literature/fulltext/zotero-scihub-guide/SKILL.md +168 -0
  154. package/skills/literature/metadata/bibliometrix-guide/SKILL.md +164 -0
  155. package/skills/literature/metadata/crossref-event-data-api/SKILL.md +183 -0
  156. package/skills/literature/metadata/doi-content-negotiation/SKILL.md +202 -0
  157. package/skills/literature/metadata/orkg-api/SKILL.md +153 -0
  158. package/skills/literature/metadata/plumx-metrics-api/SKILL.md +188 -0
  159. package/skills/literature/metadata/ror-organization-api/SKILL.md +208 -0
  160. package/skills/literature/metadata/sophosia-reference-guide/SKILL.md +110 -0
  161. package/skills/literature/metadata/viaf-authority-api/SKILL.md +209 -0
  162. package/skills/literature/metadata/zoplicate-dedup-guide/SKILL.md +147 -0
  163. package/skills/literature/metadata/zotero-actions-tags-guide/SKILL.md +212 -0
  164. package/skills/literature/metadata/zotmoov-guide/SKILL.md +120 -0
  165. package/skills/literature/metadata/zutilo-guide/SKILL.md +140 -0
  166. package/skills/literature/search/arxiv-cli-tools/SKILL.md +172 -0
  167. package/skills/literature/search/arxiv-osiris/SKILL.md +199 -0
  168. package/skills/literature/search/base-academic-search/SKILL.md +196 -0
  169. package/skills/literature/search/chatpaper-guide/SKILL.md +2 -2
  170. package/skills/literature/search/citeseerx-api/SKILL.md +183 -0
  171. package/skills/literature/search/deepgit-search-guide/SKILL.md +2 -2
  172. package/skills/literature/search/eric-education-api/SKILL.md +199 -0
  173. package/skills/literature/search/findpapers-guide/SKILL.md +177 -0
  174. package/skills/literature/search/ieee-xplore-api/SKILL.md +177 -0
  175. package/skills/literature/search/lens-scholarly-api/SKILL.md +211 -0
  176. package/skills/literature/search/multi-database-literature-search/SKILL.md +198 -0
  177. package/skills/literature/search/open-library-api/SKILL.md +196 -0
  178. package/skills/literature/search/open-semantic-search-guide/SKILL.md +190 -0
  179. package/skills/literature/search/openaire-api/SKILL.md +141 -0
  180. package/skills/literature/search/paper-search-mcp-guide/SKILL.md +107 -0
  181. package/skills/literature/search/papers-chat-guide/SKILL.md +194 -0
  182. package/skills/literature/search/pasa-paper-search-guide/SKILL.md +2 -2
  183. package/skills/literature/search/plos-open-access-api/SKILL.md +203 -0
  184. package/skills/literature/search/scielo-api/SKILL.md +182 -0
  185. package/skills/literature/search/share-research-api/SKILL.md +129 -0
  186. package/skills/literature/search/worldcat-search-api/SKILL.md +224 -0
  187. package/skills/research/automation/aim-experiment-guide/SKILL.md +2 -2
  188. package/skills/research/automation/claude-academic-workflow-guide/SKILL.md +202 -0
  189. package/skills/research/automation/coexist-ai-guide/SKILL.md +149 -0
  190. package/skills/research/automation/datagen-research-guide/SKILL.md +2 -2
  191. package/skills/research/automation/foam-agent-guide/SKILL.md +203 -0
  192. package/skills/research/automation/kedro-pipeline-guide/SKILL.md +2 -2
  193. package/skills/research/automation/mle-agent-guide/SKILL.md +2 -2
  194. package/skills/research/automation/paper-to-agent-guide/SKILL.md +2 -2
  195. package/skills/research/deep-research/auto-deep-research-guide/SKILL.md +2 -2
  196. package/skills/research/deep-research/cognitive-kernel-guide/SKILL.md +200 -0
  197. package/skills/research/deep-research/corvus-research-guide/SKILL.md +132 -0
  198. package/skills/research/deep-research/in-depth-research-guide/SKILL.md +205 -0
  199. package/skills/research/deep-research/kosmos-scientist-guide/SKILL.md +185 -0
  200. package/skills/research/deep-research/llm-scientific-discovery-guide/SKILL.md +178 -0
  201. package/skills/research/deep-research/open-researcher-guide/SKILL.md +138 -0
  202. package/skills/research/methodology/claude-scientific-guide/SKILL.md +2 -2
  203. package/skills/research/methodology/parsifal-slr-guide/SKILL.md +154 -0
  204. package/skills/research/methodology/research-pipeline-units-guide/SKILL.md +169 -0
  205. package/skills/research/methodology/slr-automation-guide/SKILL.md +235 -0
  206. package/skills/research/paper-review/latte-review-guide/SKILL.md +175 -0
  207. package/skills/research/paper-review/paper-critique-framework/SKILL.md +181 -0
  208. package/skills/tools/code-exec/contextplus-mcp-guide/SKILL.md +110 -0
  209. package/skills/tools/diagram/clawphd-guide/SKILL.md +149 -0
  210. package/skills/tools/diagram/kroki-diagram-api/SKILL.md +198 -0
  211. package/skills/tools/diagram/scientific-graphical-abstract/SKILL.md +201 -0
  212. package/skills/tools/document/docsgpt-guide/SKILL.md +2 -2
  213. package/skills/tools/document/md2pdf-xelatex/SKILL.md +212 -0
  214. package/skills/tools/document/openpaper-guide/SKILL.md +232 -0
  215. package/skills/tools/document/weknora-guide/SKILL.md +216 -0
  216. package/skills/tools/document/zotero-addon-market-guide/SKILL.md +108 -0
  217. package/skills/tools/document/zotero-night-theme-guide/SKILL.md +142 -0
  218. package/skills/tools/document/zotero-style-guide/SKILL.md +217 -0
  219. package/skills/tools/knowledge-graph/graphiti-guide/SKILL.md +2 -2
  220. package/skills/tools/knowledge-graph/mimir-memory-guide/SKILL.md +135 -0
  221. package/skills/tools/knowledge-graph/notero-zotero-notion-guide/SKILL.md +187 -0
  222. package/skills/tools/knowledge-graph/open-webui-tools-guide/SKILL.md +156 -0
  223. package/skills/tools/knowledge-graph/openspg-guide/SKILL.md +210 -0
  224. package/skills/tools/knowledge-graph/paperpile-notion-guide/SKILL.md +84 -0
  225. package/skills/tools/knowledge-graph/zotero-markdb-connect-guide/SKILL.md +162 -0
  226. package/skills/tools/ocr-translate/latex-translation-guide/SKILL.md +176 -0
  227. package/skills/tools/ocr-translate/math-equation-renderer/SKILL.md +198 -0
  228. package/skills/tools/ocr-translate/pdf-math-translate-guide/SKILL.md +2 -2
  229. package/skills/tools/ocr-translate/zotero-pdf-translate-guide/SKILL.md +2 -2
  230. package/skills/tools/ocr-translate/zotero-pdf2zh-guide/SKILL.md +2 -2
  231. package/skills/writing/citation/academic-citation-manager-guide/SKILL.md +182 -0
  232. package/skills/writing/citation/citation-assistant-skill/SKILL.md +192 -0
  233. package/skills/writing/citation/jabref-reference-guide/SKILL.md +2 -2
  234. package/skills/writing/citation/jasminum-zotero-guide/SKILL.md +2 -2
  235. package/skills/writing/citation/mendeley-api/SKILL.md +231 -0
  236. package/skills/writing/citation/obsidian-citation-guide/SKILL.md +2 -2
  237. package/skills/writing/citation/obsidian-zotero-guide/SKILL.md +2 -2
  238. package/skills/writing/citation/onecite-reference-guide/SKILL.md +168 -0
  239. package/skills/writing/citation/papersgpt-zotero-guide/SKILL.md +2 -2
  240. package/skills/writing/citation/papis-cli-guide/SKILL.md +2 -2
  241. package/skills/writing/citation/zotero-better-bibtex-guide/SKILL.md +2 -2
  242. package/skills/writing/citation/zotero-better-notes-guide/SKILL.md +2 -2
  243. package/skills/writing/citation/zotero-gpt-guide/SKILL.md +2 -2
  244. package/skills/writing/citation/zotero-mcp-guide/SKILL.md +2 -2
  245. package/skills/writing/citation/zotero-mdnotes-guide/SKILL.md +2 -2
  246. package/skills/writing/citation/zotero-reference-guide/SKILL.md +2 -2
  247. package/skills/writing/citation/zotfile-attachment-guide/SKILL.md +2 -2
  248. package/skills/writing/composition/opendraft-thesis-guide/SKILL.md +200 -0
  249. package/skills/writing/composition/paper-debugger-guide/SKILL.md +2 -2
  250. package/skills/writing/composition/paperforge-guide/SKILL.md +205 -0
  251. package/skills/writing/composition/research-paper-writer/SKILL.md +226 -0
  252. package/skills/writing/composition/scientific-writing-resources/SKILL.md +2 -2
  253. package/skills/writing/latex/academic-writing-latex/SKILL.md +285 -0
  254. package/skills/writing/latex/latex-drawing-collection/SKILL.md +2 -2
  255. package/skills/writing/latex/latex-templates-collection/SKILL.md +2 -2
  256. package/skills/writing/polish/chinese-text-humanizer/SKILL.md +140 -0
  257. package/skills/writing/templates/arxiv-preprint-template/SKILL.md +184 -0
  258. package/skills/writing/templates/elegant-paper-template/SKILL.md +141 -0
  259. package/skills/writing/templates/novathesis-guide/SKILL.md +2 -2
  260. package/skills/writing/templates/sjtuthesis-guide/SKILL.md +2 -2
  261. package/skills/writing/templates/thuthesis-guide/SKILL.md +2 -2
@@ -0,0 +1,215 @@
1
+ ---
2
+ name: dataverse-api
3
+ description: "Deposit and discover research datasets via Harvard Dataverse API"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🗄️"
7
+ category: "literature"
8
+ subcategory: "fulltext"
9
+ keywords: ["Dataverse", "research data", "data repository", "Harvard", "dataset deposit", "data sharing"]
10
+ source: "https://dataverse.org/"
11
+ ---
12
+
13
+ # Harvard Dataverse API
14
+
15
+ ## Overview
16
+
17
+ Dataverse is an open-source research data repository platform developed by Harvard IQSS, hosting 150K+ datasets across 80+ installations worldwide. The Harvard Dataverse alone has 130K+ datasets covering social science, natural science, and humanities. The API supports search, metadata retrieval, file download, and dataset deposit. Free, no authentication for read access.
18
+
19
+ ## API Endpoints
20
+
21
+ ### Base URL
22
+
23
+ ```
24
+ https://dataverse.harvard.edu/api
25
+ ```
26
+
27
+ ### Search
28
+
29
+ ```bash
30
+ # Search datasets
31
+ curl "https://dataverse.harvard.edu/api/search?q=climate+change&type=dataset&per_page=20"
32
+
33
+ # Search files within datasets
34
+ curl "https://dataverse.harvard.edu/api/search?q=temperature+data&type=file&per_page=20"
35
+
36
+ # Filter by subject
37
+ curl "https://dataverse.harvard.edu/api/search?q=survey+data&type=dataset&\
38
+ fq=subject_ss:\"Social Sciences\""
39
+
40
+ # Filter by publication date
41
+ curl "https://dataverse.harvard.edu/api/search?q=genomics&type=dataset&\
42
+ fq=dateSort:[2024-01-01T00:00:00Z TO *]"
43
+
44
+ # Sort by relevance or date
45
+ curl "https://dataverse.harvard.edu/api/search?q=machine+learning&type=dataset&\
46
+ sort=date&order=desc"
47
+ ```
48
+
49
+ ### Get Dataset Metadata
50
+
51
+ ```bash
52
+ # By persistent ID (DOI)
53
+ curl "https://dataverse.harvard.edu/api/datasets/:persistentId/?persistentId=doi:10.7910/DVN/EXAMPLE"
54
+
55
+ # By dataset ID
56
+ curl "https://dataverse.harvard.edu/api/datasets/12345"
57
+
58
+ # Get dataset versions
59
+ curl "https://dataverse.harvard.edu/api/datasets/:persistentId/versions?persistentId=doi:10.7910/DVN/EXAMPLE"
60
+ ```
61
+
62
+ ### Download Files
63
+
64
+ ```bash
65
+ # Download a specific file by ID
66
+ curl -O "https://dataverse.harvard.edu/api/access/datafile/67890"
67
+
68
+ # Download with original format
69
+ curl -O "https://dataverse.harvard.edu/api/access/datafile/67890?format=original"
70
+
71
+ # Download all files in a dataset (as zip)
72
+ curl -O "https://dataverse.harvard.edu/api/access/dataset/:persistentId/?persistentId=doi:10.7910/DVN/EXAMPLE"
73
+ ```
74
+
75
+ ### Query Parameters (Search)
76
+
77
+ | Parameter | Description | Example |
78
+ |-----------|-------------|---------|
79
+ | `q` | Search query | `q=voter+turnout` |
80
+ | `type` | Item type | `dataset`, `file`, `dataverse` |
81
+ | `per_page` | Results per page (max 1000) | `per_page=50` |
82
+ | `start` | Pagination offset | `start=50` |
83
+ | `sort` | Sort field | `name`, `date` |
84
+ | `order` | Sort order | `asc`, `desc` |
85
+ | `fq` | Filter query (Solr) | `fq=subject_ss:"Medicine"` |
86
+
87
+ ## Response Structure
88
+
89
+ ```json
90
+ {
91
+ "status": "OK",
92
+ "data": {
93
+ "q": "climate change",
94
+ "total_count": 2450,
95
+ "items": [
96
+ {
97
+ "name": "Global Temperature Dataset 2024",
98
+ "type": "dataset",
99
+ "url": "https://doi.org/10.7910/DVN/EXAMPLE",
100
+ "global_id": "doi:10.7910/DVN/EXAMPLE",
101
+ "description": "Monthly global temperature anomalies...",
102
+ "published_at": "2024-03-15",
103
+ "publisher": "Harvard Dataverse",
104
+ "subjects": ["Earth and Environmental Sciences"],
105
+ "fileCount": 12,
106
+ "citation": "Smith, J. (2024). Global Temperature Dataset..."
107
+ }
108
+ ]
109
+ }
110
+ }
111
+ ```
112
+
113
+ ## Python Usage
114
+
115
+ ```python
116
+ import requests
117
+
118
+ BASE_URL = "https://dataverse.harvard.edu/api"
119
+
120
+
121
+ def search_datasets(query: str, per_page: int = 20,
122
+ subject: str = None) -> list:
123
+ """Search Harvard Dataverse for datasets."""
124
+ params = {
125
+ "q": query,
126
+ "type": "dataset",
127
+ "per_page": per_page,
128
+ "sort": "date",
129
+ "order": "desc",
130
+ }
131
+ if subject:
132
+ params["fq"] = f'subject_ss:"{subject}"'
133
+
134
+ resp = requests.get(f"{BASE_URL}/search", params=params)
135
+ resp.raise_for_status()
136
+ data = resp.json()
137
+
138
+ results = []
139
+ for item in data.get("data", {}).get("items", []):
140
+ results.append({
141
+ "name": item.get("name"),
142
+ "doi": item.get("global_id"),
143
+ "description": item.get("description", "")[:300],
144
+ "published": item.get("published_at"),
145
+ "subjects": item.get("subjects", []),
146
+ "files": item.get("fileCount", 0),
147
+ "url": item.get("url"),
148
+ })
149
+ return results
150
+
151
+
152
+ def get_dataset_files(doi: str) -> list:
153
+ """List files in a dataset."""
154
+ resp = requests.get(
155
+ f"{BASE_URL}/datasets/:persistentId/",
156
+ params={"persistentId": doi},
157
+ )
158
+ resp.raise_for_status()
159
+ data = resp.json().get("data", {})
160
+
161
+ files = []
162
+ version = data.get("latestVersion", {})
163
+ for f in version.get("files", []):
164
+ df = f.get("dataFile", {})
165
+ files.append({
166
+ "id": df.get("id"),
167
+ "filename": df.get("filename"),
168
+ "size": df.get("filesize"),
169
+ "content_type": df.get("contentType"),
170
+ "md5": df.get("md5"),
171
+ })
172
+ return files
173
+
174
+
175
+ def download_file(file_id: int, output_path: str):
176
+ """Download a file from Dataverse."""
177
+ resp = requests.get(
178
+ f"{BASE_URL}/access/datafile/{file_id}",
179
+ stream=True,
180
+ )
181
+ resp.raise_for_status()
182
+ with open(output_path, "wb") as f:
183
+ for chunk in resp.iter_content(chunk_size=8192):
184
+ f.write(chunk)
185
+
186
+
187
+ # Example: find social science datasets
188
+ datasets = search_datasets("income inequality",
189
+ subject="Social Sciences")
190
+ for ds in datasets:
191
+ print(f"[{ds['published']}] {ds['name']} ({ds['files']} files)")
192
+ print(f" DOI: {ds['doi']}")
193
+
194
+ # Example: list files in a dataset
195
+ # files = get_dataset_files("doi:10.7910/DVN/EXAMPLE")
196
+ # for f in files:
197
+ # print(f" {f['filename']} ({f['size']} bytes)")
198
+ ```
199
+
200
+ ## Other Dataverse Installations
201
+
202
+ | Installation | URL | Focus |
203
+ |-------------|-----|-------|
204
+ | Harvard Dataverse | dataverse.harvard.edu | Multi-discipline |
205
+ | UNC Dataverse | dataverse.unc.edu | Social science |
206
+ | AUSSDA | data.aussda.at | Austrian social science |
207
+ | Borealis (Canada) | borealisdata.ca | Canadian research |
208
+ | DataverseNL | dataverse.nl | Dutch research |
209
+
210
+ ## References
211
+
212
+ - [Harvard Dataverse](https://dataverse.harvard.edu/)
213
+ - [Dataverse API Guide](https://guides.dataverse.org/en/latest/api/)
214
+ - [Dataverse Project](https://dataverse.org/)
215
+ - King, G. (2007). "An Introduction to the Dataverse Network." *Sociological Methods & Research* 36(2).
@@ -0,0 +1,218 @@
1
+ ---
2
+ name: hal-archive-api
3
+ description: "Access French and European research via the HAL open archive API"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🇫🇷"
7
+ category: "literature"
8
+ subcategory: "fulltext"
9
+ keywords: ["HAL", "French research", "open archive", "CNRS", "European research", "institutional repository"]
10
+ source: "https://api.archives-ouvertes.fr/"
11
+ ---
12
+
13
+ # HAL Open Archive API
14
+
15
+ ## Overview
16
+
17
+ HAL (Hyper Articles en Ligne) is France's national open archive for scholarly deposits. Managed by CNRS, it hosts 4M+ full-text documents from French research institutions and international collaborators. The API provides Solr-based search with full metadata, PDF links, and OAI-PMH harvesting. Free, no authentication required.
18
+
19
+ ## API Endpoints
20
+
21
+ ### Search API
22
+
23
+ ```bash
24
+ # Keyword search
25
+ curl "https://api.archives-ouvertes.fr/search/?q=machine+learning&rows=20&wt=json"
26
+
27
+ # Search specific fields
28
+ curl "https://api.archives-ouvertes.fr/search/?q=title_s:\"deep learning\"&wt=json"
29
+
30
+ # Filter by document type
31
+ curl "https://api.archives-ouvertes.fr/search/?q=neural+networks&\
32
+ fq=docType_s:ART&rows=20&wt=json"
33
+
34
+ # Filter by year and language
35
+ curl "https://api.archives-ouvertes.fr/search/?q=climate+change&\
36
+ fq=producedDateY_i:[2023 TO 2026]&fq=language_s:en&wt=json"
37
+
38
+ # Filter by institution
39
+ curl "https://api.archives-ouvertes.fr/search/?q=robotics&\
40
+ fq=structId_i:441569&wt=json"
41
+
42
+ # Return specific fields
43
+ curl "https://api.archives-ouvertes.fr/search/?q=CRISPR&\
44
+ fl=halId_s,title_s,authFullName_s,producedDateY_i,uri_s,files_s&wt=json"
45
+ ```
46
+
47
+ ### Search Fields
48
+
49
+ | Field | Description | Example |
50
+ |-------|-------------|---------|
51
+ | `title_s` | Title | `title_s:"attention mechanism"` |
52
+ | `authFullName_s` | Author name | `authFullName_s:"Yann LeCun"` |
53
+ | `abstract_s` | Abstract | `abstract_s:transformer` |
54
+ | `keyword_s` | Keywords | `keyword_s:"natural language"` |
55
+ | `producedDateY_i` | Year | `producedDateY_i:2024` |
56
+ | `docType_s` | Document type | `docType_s:ART` |
57
+ | `language_s` | Language | `language_s:en` |
58
+ | `domain_s` | Domain/subject | `domain_s:info.info-ai` |
59
+ | `journalTitle_s` | Journal name | `journalTitle_s:"Nature"` |
60
+ | `structId_i` | Institution ID | Lab/university ID |
61
+
62
+ ### Document Types
63
+
64
+ | Code | Type |
65
+ |------|------|
66
+ | `ART` | Journal article |
67
+ | `COMM` | Conference paper |
68
+ | `THESE` | PhD thesis |
69
+ | `HDR` | Habilitation thesis |
70
+ | `REPORT` | Report |
71
+ | `COUV` | Book chapter |
72
+ | `OUV` | Book |
73
+ | `POSTER` | Poster |
74
+ | `UNDEFINED` | Preprint/other |
75
+
76
+ ### Query Parameters
77
+
78
+ | Parameter | Description |
79
+ |-----------|-------------|
80
+ | `q` | Solr query |
81
+ | `fq` | Filter query |
82
+ | `fl` | Fields to return |
83
+ | `rows` | Results per page (max 10000) |
84
+ | `start` | Pagination offset |
85
+ | `sort` | Sort order (e.g., `producedDateY_i desc`) |
86
+ | `wt` | Format: `json`, `xml`, `csv` |
87
+
88
+ ## Response Structure
89
+
90
+ ```json
91
+ {
92
+ "response": {
93
+ "numFound": 12500,
94
+ "start": 0,
95
+ "docs": [
96
+ {
97
+ "halId_s": "hal-01234567",
98
+ "title_s": ["Deep Learning for Climate Modeling"],
99
+ "authFullName_s": ["Marie Dupont", "Jean Martin"],
100
+ "producedDateY_i": 2024,
101
+ "docType_s": "ART",
102
+ "journalTitle_s": "Environmental Modelling",
103
+ "uri_s": "https://hal.science/hal-01234567",
104
+ "files_s": ["https://hal.science/hal-01234567/document"],
105
+ "domain_s": ["sde.es", "info.info-ai"],
106
+ "abstract_s": ["We propose a novel deep learning approach..."],
107
+ "language_s": ["en"]
108
+ }
109
+ ]
110
+ }
111
+ }
112
+ ```
113
+
114
+ ## Python Usage
115
+
116
+ ```python
117
+ import requests
118
+
119
+ BASE_URL = "https://api.archives-ouvertes.fr/search/"
120
+
121
+
122
+ def search_hal(query: str, rows: int = 20,
123
+ doc_type: str = None, from_year: int = None,
124
+ language: str = None) -> list:
125
+ """Search HAL open archive."""
126
+ params = {
127
+ "q": query,
128
+ "wt": "json",
129
+ "rows": rows,
130
+ "fl": "halId_s,title_s,authFullName_s,producedDateY_i,"
131
+ "uri_s,files_s,docType_s,journalTitle_s,abstract_s",
132
+ "sort": "producedDateY_i desc",
133
+ }
134
+
135
+ fq = []
136
+ if doc_type:
137
+ fq.append(f"docType_s:{doc_type}")
138
+ if from_year:
139
+ fq.append(f"producedDateY_i:[{from_year} TO 2030]")
140
+ if language:
141
+ fq.append(f"language_s:{language}")
142
+ if fq:
143
+ params["fq"] = fq
144
+
145
+ resp = requests.get(BASE_URL, params=params)
146
+ resp.raise_for_status()
147
+ data = resp.json()
148
+
149
+ results = []
150
+ for doc in data.get("response", {}).get("docs", []):
151
+ title = doc.get("title_s", [""])[0] if isinstance(
152
+ doc.get("title_s"), list) else doc.get("title_s", "")
153
+ results.append({
154
+ "hal_id": doc.get("halId_s"),
155
+ "title": title,
156
+ "authors": doc.get("authFullName_s", []),
157
+ "year": doc.get("producedDateY_i"),
158
+ "type": doc.get("docType_s"),
159
+ "journal": doc.get("journalTitle_s"),
160
+ "url": doc.get("uri_s"),
161
+ "pdf": doc.get("files_s", [None])[0],
162
+ })
163
+ return results
164
+
165
+
166
+ def search_theses(topic: str, from_year: int = 2020) -> list:
167
+ """Find French PhD theses on a topic."""
168
+ return search_hal(topic, rows=50, doc_type="THESE",
169
+ from_year=from_year)
170
+
171
+
172
+ def get_institution_publications(struct_id: int,
173
+ from_year: int = 2023) -> list:
174
+ """Get publications from a specific institution."""
175
+ params = {
176
+ "q": "*:*",
177
+ "fq": [f"structId_i:{struct_id}",
178
+ f"producedDateY_i:[{from_year} TO 2030]"],
179
+ "wt": "json",
180
+ "rows": 100,
181
+ "fl": "halId_s,title_s,authFullName_s,producedDateY_i,docType_s",
182
+ "sort": "producedDateY_i desc",
183
+ }
184
+ resp = requests.get(BASE_URL, params=params)
185
+ resp.raise_for_status()
186
+ return resp.json().get("response", {}).get("docs", [])
187
+
188
+
189
+ # Example: find recent French AI research
190
+ papers = search_hal("intelligence artificielle", from_year=2024)
191
+ for p in papers:
192
+ pdf = " [PDF]" if p["pdf"] else ""
193
+ print(f"[{p['year']}] {p['title']}{pdf}")
194
+
195
+ # Example: find PhD theses on NLP
196
+ theses = search_theses("natural language processing")
197
+ for t in theses:
198
+ print(f"{t['title']} — {', '.join(t['authors'][:2])}")
199
+ ```
200
+
201
+ ## HAL Domains
202
+
203
+ | Code | Domain |
204
+ |------|--------|
205
+ | `info` | Computer Science |
206
+ | `math` | Mathematics |
207
+ | `phys` | Physics |
208
+ | `sde` | Environmental Sciences |
209
+ | `sdv` | Life Sciences |
210
+ | `shs` | Social Sciences & Humanities |
211
+ | `chim` | Chemistry |
212
+ | `spi` | Engineering Sciences |
213
+
214
+ ## References
215
+
216
+ - [HAL Open Archive](https://hal.science/)
217
+ - [HAL API Documentation](https://api.archives-ouvertes.fr/docs)
218
+ - [HAL Search Guide](https://doc.archives-ouvertes.fr/en/)
@@ -0,0 +1,212 @@
1
+ ---
2
+ name: osf-api
3
+ description: "Manage open science projects and preprints via the OSF REST API"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🔓"
7
+ category: "literature"
8
+ subcategory: "fulltext"
9
+ keywords: ["OSF", "Open Science Framework", "preprints", "open data", "reproducibility", "COS"]
10
+ source: "https://osf.io/"
11
+ ---
12
+
13
+ # OSF (Open Science Framework) API
14
+
15
+ ## Overview
16
+
17
+ The Open Science Framework by the Center for Open Science provides infrastructure for the entire research lifecycle — project management, file storage, preprint hosting, and registrations. The API enables search, project creation, file management, and preprint discovery across OSF Preprints, PsyArXiv, SocArXiv, and 25+ community preprint servers. Free, no auth for read access.
18
+
19
+ ## API Endpoints
20
+
21
+ ### Base URL
22
+
23
+ ```
24
+ https://api.osf.io/v2
25
+ ```
26
+
27
+ ### Search
28
+
29
+ ```bash
30
+ # Search across all OSF content
31
+ curl "https://api.osf.io/v2/search/?q=replication+crisis&page[size]=20"
32
+
33
+ # Search preprints
34
+ curl "https://api.osf.io/v2/preprints/?filter[q]=machine+learning&page[size]=20"
35
+
36
+ # Filter by preprint provider
37
+ curl "https://api.osf.io/v2/preprints/?filter[provider]=psyarxiv&filter[q]=cognitive+bias"
38
+
39
+ # Search registrations (pre-registered studies)
40
+ curl "https://api.osf.io/v2/registrations/?filter[q]=randomized+controlled+trial"
41
+ ```
42
+
43
+ ### Projects
44
+
45
+ ```bash
46
+ # Get public projects
47
+ curl "https://api.osf.io/v2/nodes/?filter[public]=true&filter[q]=neuroimaging"
48
+
49
+ # Get project details
50
+ curl "https://api.osf.io/v2/nodes/{node_id}/"
51
+
52
+ # Get project files
53
+ curl "https://api.osf.io/v2/nodes/{node_id}/files/"
54
+
55
+ # Get project contributors
56
+ curl "https://api.osf.io/v2/nodes/{node_id}/contributors/"
57
+ ```
58
+
59
+ ### Preprint Providers
60
+
61
+ | Provider | Filter | Disciplines |
62
+ |----------|--------|-------------|
63
+ | OSF Preprints | `osf` | Multidisciplinary |
64
+ | PsyArXiv | `psyarxiv` | Psychology |
65
+ | SocArXiv | `socarxiv` | Social sciences |
66
+ | EarthArXiv | `eartharxiv` | Earth sciences |
67
+ | BioHackrXiv | `biohackrxiv` | Bioinformatics |
68
+ | engrXiv | `engrxiv` | Engineering |
69
+ | MedArXiv | `medarxiv` | Medical sciences |
70
+ | NutriXiv | `nutrixiv` | Nutrition |
71
+
72
+ ### Query Parameters
73
+
74
+ | Parameter | Description | Example |
75
+ |-----------|-------------|---------|
76
+ | `filter[q]` | Text search | `filter[q]=open+data` |
77
+ | `filter[provider]` | Preprint server | `filter[provider]=psyarxiv` |
78
+ | `filter[subjects]` | Subject filter | Subject taxonomy ID |
79
+ | `filter[date_created]` | Date filter | `filter[date_created][gte]=2024-01-01` |
80
+ | `page[size]` | Results per page (max 100) | `page[size]=50` |
81
+ | `page` | Page number | `page=2` |
82
+
83
+ ## Response Structure (Preprint)
84
+
85
+ ```json
86
+ {
87
+ "data": [
88
+ {
89
+ "id": "abc12",
90
+ "type": "preprints",
91
+ "attributes": {
92
+ "title": "Replication of the Ego Depletion Effect",
93
+ "description": "We attempted to replicate...",
94
+ "date_created": "2024-06-15T10:00:00Z",
95
+ "date_published": "2024-06-16T08:00:00Z",
96
+ "doi": "10.31234/osf.io/abc12",
97
+ "is_published": true,
98
+ "subjects": [["Social and Behavioral Sciences", "Psychology"]],
99
+ "tags": ["replication", "ego depletion"]
100
+ },
101
+ "relationships": {
102
+ "contributors": {"links": {"related": {"href": "..."}}},
103
+ "primary_file": {"links": {"related": {"href": "..."}}}
104
+ }
105
+ }
106
+ ]
107
+ }
108
+ ```
109
+
110
+ ## Python Usage
111
+
112
+ ```python
113
+ import requests
114
+
115
+ BASE_URL = "https://api.osf.io/v2"
116
+
117
+
118
+ def search_preprints(query: str, provider: str = None,
119
+ page_size: int = 20) -> list:
120
+ """Search OSF preprints across providers."""
121
+ params = {
122
+ "filter[q]": query,
123
+ "page[size]": page_size,
124
+ }
125
+ if provider:
126
+ params["filter[provider]"] = provider
127
+
128
+ resp = requests.get(f"{BASE_URL}/preprints/", params=params)
129
+ resp.raise_for_status()
130
+ data = resp.json()
131
+
132
+ results = []
133
+ for item in data.get("data", []):
134
+ attrs = item.get("attributes", {})
135
+ results.append({
136
+ "id": item.get("id"),
137
+ "title": attrs.get("title"),
138
+ "description": (attrs.get("description") or "")[:300],
139
+ "doi": attrs.get("doi"),
140
+ "date": attrs.get("date_published", "")[:10],
141
+ "tags": attrs.get("tags", []),
142
+ "url": f"https://osf.io/{item.get('id')}/",
143
+ })
144
+ return results
145
+
146
+
147
+ def search_registrations(query: str,
148
+ page_size: int = 20) -> list:
149
+ """Search pre-registered studies on OSF."""
150
+ params = {
151
+ "filter[q]": query,
152
+ "page[size]": page_size,
153
+ }
154
+ resp = requests.get(f"{BASE_URL}/registrations/", params=params)
155
+ resp.raise_for_status()
156
+ data = resp.json()
157
+
158
+ results = []
159
+ for item in data.get("data", []):
160
+ attrs = item.get("attributes", {})
161
+ results.append({
162
+ "id": item.get("id"),
163
+ "title": attrs.get("title"),
164
+ "description": (attrs.get("description") or "")[:300],
165
+ "date_registered": attrs.get("date_registered", "")[:10],
166
+ "registration_schema": attrs.get("registration_supplement"),
167
+ })
168
+ return results
169
+
170
+
171
+ def get_project_files(node_id: str) -> list:
172
+ """List files in an OSF project."""
173
+ resp = requests.get(f"{BASE_URL}/nodes/{node_id}/files/")
174
+ resp.raise_for_status()
175
+ data = resp.json()
176
+
177
+ providers = []
178
+ for item in data.get("data", []):
179
+ attrs = item.get("attributes", {})
180
+ providers.append({
181
+ "provider": attrs.get("provider"),
182
+ "name": attrs.get("name"),
183
+ })
184
+ return providers
185
+
186
+
187
+ # Example: search psychology preprints
188
+ preprints = search_preprints("cognitive load", provider="psyarxiv")
189
+ for p in preprints[:5]:
190
+ print(f"[{p['date']}] {p['title']}")
191
+ print(f" DOI: {p['doi']}")
192
+
193
+ # Example: find pre-registered clinical trials
194
+ regs = search_registrations("randomized placebo")
195
+ for r in regs[:5]:
196
+ print(f"[{r['date_registered']}] {r['title']}")
197
+ ```
198
+
199
+ ## Use Cases
200
+
201
+ 1. **Preprint discovery**: Search across 25+ preprint servers
202
+ 2. **Pre-registration search**: Find registered study protocols
203
+ 3. **Open data access**: Download shared research datasets
204
+ 4. **Reproducibility**: Access materials, data, and code for published studies
205
+ 5. **Project management**: Programmatic project and file management
206
+
207
+ ## References
208
+
209
+ - [OSF](https://osf.io/)
210
+ - [OSF API Documentation](https://developer.osf.io/)
211
+ - [OSF Preprints](https://osf.io/preprints/)
212
+ - [Center for Open Science](https://cos.io/)