@wentorai/research-plugins 1.0.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.
- package/README.md +22 -22
- package/curated/analysis/README.md +82 -56
- package/curated/domains/README.md +225 -69
- package/curated/literature/README.md +115 -46
- package/curated/research/README.md +106 -58
- package/curated/tools/README.md +107 -87
- package/curated/writing/README.md +92 -45
- package/mcp-configs/academic-db/alphafold-mcp.json +20 -0
- package/mcp-configs/academic-db/brightspace-mcp.json +21 -0
- package/mcp-configs/academic-db/climatiq-mcp.json +20 -0
- package/mcp-configs/academic-db/gibs-mcp.json +20 -0
- package/mcp-configs/academic-db/gis-mcp-server.json +22 -0
- package/mcp-configs/academic-db/google-earth-engine-mcp.json +21 -0
- package/mcp-configs/academic-db/m4-clinical-mcp.json +21 -0
- package/mcp-configs/academic-db/medical-mcp.json +21 -0
- package/mcp-configs/academic-db/nexonco-mcp.json +20 -0
- package/mcp-configs/academic-db/omop-mcp.json +20 -0
- package/mcp-configs/academic-db/onekgpd-mcp.json +20 -0
- package/mcp-configs/academic-db/openedu-mcp.json +20 -0
- package/mcp-configs/academic-db/opengenes-mcp.json +20 -0
- package/mcp-configs/academic-db/openstax-mcp.json +21 -0
- package/mcp-configs/academic-db/openstreetmap-mcp.json +21 -0
- package/mcp-configs/academic-db/opentargets-mcp.json +21 -0
- package/mcp-configs/academic-db/pdb-mcp.json +21 -0
- package/mcp-configs/academic-db/smithsonian-mcp.json +20 -0
- package/mcp-configs/ai-platform/magi-researchers.json +21 -0
- package/mcp-configs/ai-platform/mcp-academic-researcher.json +22 -0
- package/mcp-configs/ai-platform/open-paper-machine.json +21 -0
- package/mcp-configs/ai-platform/paper-intelligence.json +21 -0
- package/mcp-configs/ai-platform/paper-reader.json +21 -0
- package/mcp-configs/ai-platform/paperdebugger.json +21 -0
- package/mcp-configs/browser/exa-mcp.json +20 -0
- package/mcp-configs/browser/mcp-searxng.json +21 -0
- package/mcp-configs/browser/mcp-webresearch.json +20 -0
- package/mcp-configs/cloud-docs/confluence-mcp.json +37 -0
- package/mcp-configs/cloud-docs/google-drive-mcp.json +35 -0
- package/mcp-configs/cloud-docs/notion-mcp.json +29 -0
- package/mcp-configs/communication/discord-mcp.json +29 -0
- package/mcp-configs/communication/discourse-mcp.json +21 -0
- package/mcp-configs/communication/slack-mcp.json +29 -0
- package/mcp-configs/communication/telegram-mcp.json +28 -0
- package/mcp-configs/data-platform/automl-stat-mcp.json +21 -0
- package/mcp-configs/data-platform/jefferson-stats-mcp.json +22 -0
- package/mcp-configs/data-platform/mcp-excel-server.json +21 -0
- package/mcp-configs/data-platform/mcp-stata.json +21 -0
- package/mcp-configs/data-platform/mcpstack-jupyter.json +21 -0
- package/mcp-configs/data-platform/ml-mcp.json +21 -0
- package/mcp-configs/data-platform/nasdaq-data-link-mcp.json +20 -0
- package/mcp-configs/data-platform/numpy-mcp.json +21 -0
- package/mcp-configs/database/neo4j-mcp.json +37 -0
- package/mcp-configs/database/postgres-mcp.json +28 -0
- package/mcp-configs/database/sqlite-mcp.json +29 -0
- package/mcp-configs/dev-platform/geogebra-mcp.json +21 -0
- package/mcp-configs/dev-platform/github-mcp.json +31 -0
- package/mcp-configs/dev-platform/gitlab-mcp.json +34 -0
- package/mcp-configs/dev-platform/latex-mcp-server.json +21 -0
- package/mcp-configs/dev-platform/manim-mcp.json +20 -0
- package/mcp-configs/dev-platform/mcp-echarts.json +20 -0
- package/mcp-configs/dev-platform/panel-viz-mcp.json +20 -0
- package/mcp-configs/dev-platform/paperbanana.json +20 -0
- package/mcp-configs/dev-platform/texflow-mcp.json +20 -0
- package/mcp-configs/dev-platform/texmcp.json +20 -0
- package/mcp-configs/dev-platform/typst-mcp.json +21 -0
- package/mcp-configs/dev-platform/vizro-mcp.json +20 -0
- package/mcp-configs/email/email-mcp.json +40 -0
- package/mcp-configs/email/gmail-mcp.json +37 -0
- package/mcp-configs/note-knowledge/local-faiss-mcp.json +21 -0
- package/mcp-configs/note-knowledge/mcp-memory-service.json +21 -0
- package/mcp-configs/note-knowledge/mcp-obsidian.json +23 -0
- package/mcp-configs/note-knowledge/mcp-ragdocs.json +20 -0
- package/mcp-configs/note-knowledge/mcp-summarizer.json +21 -0
- package/mcp-configs/note-knowledge/mediawiki-mcp.json +21 -0
- package/mcp-configs/note-knowledge/openzim-mcp.json +20 -0
- package/mcp-configs/note-knowledge/zettelkasten-mcp.json +21 -0
- package/mcp-configs/reference-mgr/academic-paper-mcp-http.json +20 -0
- package/mcp-configs/reference-mgr/academix.json +20 -0
- package/mcp-configs/reference-mgr/arxiv-research-mcp.json +21 -0
- package/mcp-configs/reference-mgr/google-scholar-abstract-mcp.json +19 -0
- package/mcp-configs/reference-mgr/google-scholar-mcp.json +20 -0
- package/mcp-configs/reference-mgr/mcp-paperswithcode.json +21 -0
- package/mcp-configs/reference-mgr/mcp-scholarly.json +20 -0
- package/mcp-configs/reference-mgr/mcp-simple-arxiv.json +20 -0
- package/mcp-configs/reference-mgr/mcp-simple-pubmed.json +20 -0
- package/mcp-configs/reference-mgr/mcp-zotero.json +21 -0
- package/mcp-configs/reference-mgr/mendeley-mcp.json +20 -0
- package/mcp-configs/reference-mgr/ncbi-mcp-server.json +22 -0
- package/mcp-configs/reference-mgr/onecite.json +21 -0
- package/mcp-configs/reference-mgr/paper-search-mcp.json +21 -0
- package/mcp-configs/reference-mgr/pubmed-search-mcp.json +21 -0
- package/mcp-configs/reference-mgr/scholar-mcp.json +21 -0
- package/mcp-configs/reference-mgr/scholar-multi-mcp.json +21 -0
- package/mcp-configs/reference-mgr/seerai.json +21 -0
- package/mcp-configs/reference-mgr/semantic-scholar-fastmcp.json +21 -0
- package/mcp-configs/reference-mgr/sourcelibrary.json +20 -0
- package/mcp-configs/registry.json +178 -149
- package/mcp-configs/repository/dataverse-mcp.json +33 -0
- package/mcp-configs/repository/huggingface-mcp.json +29 -0
- package/openclaw.plugin.json +2 -2
- package/package.json +2 -2
- package/skills/analysis/dataviz/algorithm-visualizer-guide/SKILL.md +259 -0
- package/skills/analysis/dataviz/bokeh-visualization-guide/SKILL.md +270 -0
- package/skills/analysis/dataviz/chart-image-generator/SKILL.md +229 -0
- package/skills/analysis/dataviz/citation-map-guide/SKILL.md +184 -0
- package/skills/analysis/dataviz/d3-visualization-guide/SKILL.md +281 -0
- package/skills/analysis/dataviz/data-visualization-principles/SKILL.md +171 -0
- package/skills/analysis/dataviz/echarts-visualization-guide/SKILL.md +250 -0
- package/skills/analysis/dataviz/metabase-analytics-guide/SKILL.md +242 -0
- package/skills/analysis/dataviz/plotly-interactive-guide/SKILL.md +266 -0
- package/skills/analysis/dataviz/redash-analytics-guide/SKILL.md +284 -0
- package/skills/analysis/econometrics/econml-causal-guide/SKILL.md +163 -0
- package/skills/analysis/econometrics/empirical-paper-analysis/SKILL.md +192 -0
- package/skills/analysis/econometrics/mostly-harmless-guide/SKILL.md +139 -0
- package/skills/analysis/econometrics/panel-data-analyst/SKILL.md +259 -0
- package/skills/analysis/econometrics/panel-data-regression-workflow/SKILL.md +267 -0
- package/skills/analysis/econometrics/python-causality-guide/SKILL.md +134 -0
- package/skills/analysis/econometrics/stata-accounting-guide/SKILL.md +269 -0
- package/skills/analysis/econometrics/stata-analyst-guide/SKILL.md +245 -0
- package/skills/analysis/econometrics/stata-reference-guide/SKILL.md +293 -0
- package/skills/analysis/statistics/data-anomaly-detection/SKILL.md +157 -0
- package/skills/analysis/statistics/general-statistics-guide/SKILL.md +226 -0
- package/skills/analysis/statistics/infiagent-benchmark-guide/SKILL.md +106 -0
- package/skills/analysis/statistics/ml-experiment-tracker/SKILL.md +212 -0
- package/skills/analysis/statistics/pywayne-statistics-guide/SKILL.md +192 -0
- package/skills/analysis/statistics/quantitative-methods-guide/SKILL.md +193 -0
- package/skills/analysis/statistics/senior-data-scientist-guide/SKILL.md +223 -0
- package/skills/analysis/wrangling/claude-data-analysis-guide/SKILL.md +100 -0
- package/skills/analysis/wrangling/csv-data-analyzer/SKILL.md +170 -0
- package/skills/analysis/wrangling/data-cleaning-pipeline/SKILL.md +266 -0
- package/skills/analysis/wrangling/data-cog-guide/SKILL.md +178 -0
- package/skills/analysis/wrangling/open-data-scientist-guide/SKILL.md +197 -0
- package/skills/analysis/wrangling/stata-data-cleaning/SKILL.md +276 -0
- package/skills/analysis/wrangling/streamline-analyst-guide/SKILL.md +119 -0
- package/skills/analysis/wrangling/survey-data-processing/SKILL.md +298 -0
- package/skills/domains/ai-ml/ai-agent-papers-guide/SKILL.md +146 -0
- package/skills/domains/ai-ml/ai-model-benchmarking/SKILL.md +209 -0
- package/skills/domains/ai-ml/annotated-dl-papers-guide/SKILL.md +159 -0
- package/skills/domains/ai-ml/anomaly-detection-papers-guide/SKILL.md +167 -0
- package/skills/domains/ai-ml/autonomous-agents-papers-guide/SKILL.md +178 -0
- package/skills/domains/ai-ml/dl-transformer-finetune/SKILL.md +239 -0
- package/skills/domains/ai-ml/domain-adaptation-papers-guide/SKILL.md +173 -0
- package/skills/domains/ai-ml/generative-ai-guide/SKILL.md +146 -0
- package/skills/domains/ai-ml/graph-learning-papers-guide/SKILL.md +125 -0
- package/skills/domains/ai-ml/huggingface-inference-guide/SKILL.md +196 -0
- package/skills/domains/ai-ml/keras-deep-learning/SKILL.md +210 -0
- package/skills/domains/ai-ml/kolmogorov-arnold-networks-guide/SKILL.md +185 -0
- package/skills/domains/ai-ml/llm-from-scratch-guide/SKILL.md +124 -0
- package/skills/domains/ai-ml/ml-pipeline-guide/SKILL.md +295 -0
- package/skills/domains/ai-ml/nlp-toolkit-guide/SKILL.md +247 -0
- package/skills/domains/ai-ml/npcpy-research-guide/SKILL.md +137 -0
- package/skills/domains/ai-ml/pytorch-guide/SKILL.md +281 -0
- package/skills/domains/ai-ml/pytorch-lightning-guide/SKILL.md +244 -0
- package/skills/domains/ai-ml/responsible-ai-guide/SKILL.md +126 -0
- package/skills/domains/ai-ml/tensorflow-guide/SKILL.md +241 -0
- package/skills/domains/ai-ml/vmas-simulator-guide/SKILL.md +129 -0
- package/skills/domains/biomedical/bioagents-guide/SKILL.md +308 -0
- package/skills/domains/biomedical/clawbio-guide/SKILL.md +167 -0
- package/skills/domains/biomedical/clinical-dialogue-agents-guide/SKILL.md +145 -0
- package/skills/domains/biomedical/ena-sequence-api/SKILL.md +175 -0
- package/skills/domains/biomedical/genomas-guide/SKILL.md +126 -0
- package/skills/domains/biomedical/genotex-benchmark-guide/SKILL.md +125 -0
- package/skills/domains/biomedical/med-researcher-guide/SKILL.md +161 -0
- package/skills/domains/biomedical/med-researcher-r1-guide/SKILL.md +146 -0
- package/skills/domains/biomedical/medgeclaw-guide/SKILL.md +345 -0
- package/skills/domains/biomedical/medical-imaging-guide/SKILL.md +305 -0
- package/skills/domains/biomedical/ncbi-blast-api/SKILL.md +195 -0
- package/skills/domains/biomedical/ncbi-datasets-api/SKILL.md +220 -0
- package/skills/domains/biomedical/quickgo-api/SKILL.md +181 -0
- package/skills/domains/business/architecture-design-guide/SKILL.md +279 -0
- package/skills/domains/business/innovation-management-guide/SKILL.md +257 -0
- package/skills/domains/business/operations-research-guide/SKILL.md +258 -0
- package/skills/domains/business/xpert-bi-guide/SKILL.md +84 -0
- package/skills/domains/chemistry/cactus-cheminformatics-guide/SKILL.md +89 -0
- package/skills/domains/chemistry/chemeagle-guide/SKILL.md +147 -0
- package/skills/domains/chemistry/chemgraph-agent-guide/SKILL.md +120 -0
- package/skills/domains/chemistry/molecular-dynamics-guide/SKILL.md +237 -0
- package/skills/domains/chemistry/pubchem-api-guide/SKILL.md +180 -0
- package/skills/domains/chemistry/spectroscopy-analysis-guide/SKILL.md +290 -0
- package/skills/domains/cs/ai-security-papers-guide/SKILL.md +103 -0
- package/skills/domains/cs/code-llm-papers-guide/SKILL.md +131 -0
- package/skills/domains/cs/distributed-systems-guide/SKILL.md +268 -0
- package/skills/domains/cs/formal-verification-guide/SKILL.md +298 -0
- package/skills/domains/cs/gaussian-splatting-papers-guide/SKILL.md +158 -0
- package/skills/domains/cs/llm-aiops-guide/SKILL.md +70 -0
- package/skills/domains/cs/software-heritage-api/SKILL.md +200 -0
- package/skills/domains/ecology/species-distribution-guide/SKILL.md +343 -0
- package/skills/domains/economics/imf-data-api-guide/SKILL.md +174 -0
- package/skills/domains/economics/nber-working-papers-api/SKILL.md +177 -0
- package/skills/domains/economics/post-labor-economics/SKILL.md +254 -0
- package/skills/domains/economics/pricing-psychology-guide/SKILL.md +273 -0
- package/skills/domains/economics/repec-economics-api/SKILL.md +188 -0
- package/skills/domains/economics/world-bank-data-guide/SKILL.md +179 -0
- package/skills/domains/education/academic-study-methods/SKILL.md +228 -0
- package/skills/domains/education/assessment-design-guide/SKILL.md +213 -0
- package/skills/domains/education/educational-research-methods/SKILL.md +179 -0
- package/skills/domains/education/edumcp-guide/SKILL.md +74 -0
- package/skills/domains/education/mooc-analytics-guide/SKILL.md +206 -0
- package/skills/domains/education/open-syllabus-api/SKILL.md +171 -0
- package/skills/domains/finance/akshare-finance-data/SKILL.md +207 -0
- package/skills/domains/finance/finsight-research-guide/SKILL.md +113 -0
- package/skills/domains/finance/options-analytics-agent-guide/SKILL.md +117 -0
- package/skills/domains/finance/portfolio-optimization-guide/SKILL.md +279 -0
- package/skills/domains/finance/risk-modeling-guide/SKILL.md +260 -0
- package/skills/domains/finance/stata-accounting-research/SKILL.md +372 -0
- package/skills/domains/geoscience/climate-modeling-guide/SKILL.md +215 -0
- package/skills/domains/geoscience/pangaea-data-api/SKILL.md +197 -0
- package/skills/domains/geoscience/satellite-remote-sensing/SKILL.md +193 -0
- package/skills/domains/geoscience/seismology-data-guide/SKILL.md +208 -0
- package/skills/domains/humanities/digital-humanities-methods/SKILL.md +232 -0
- package/skills/domains/humanities/ethical-philosophy-guide/SKILL.md +244 -0
- package/skills/domains/humanities/history-research-guide/SKILL.md +260 -0
- package/skills/domains/humanities/political-history-guide/SKILL.md +241 -0
- package/skills/domains/law/caselaw-access-api/SKILL.md +149 -0
- package/skills/domains/law/legal-agent-skills-guide/SKILL.md +132 -0
- package/skills/domains/law/legal-nlp-guide/SKILL.md +236 -0
- package/skills/domains/law/legal-research-methods/SKILL.md +190 -0
- package/skills/domains/law/opencontracts-guide/SKILL.md +168 -0
- package/skills/domains/law/patent-analysis-guide/SKILL.md +257 -0
- package/skills/domains/law/regulatory-compliance-guide/SKILL.md +267 -0
- package/skills/domains/math/lean-theorem-proving-guide/SKILL.md +140 -0
- package/skills/domains/math/symbolic-computation-guide/SKILL.md +263 -0
- package/skills/domains/math/topology-data-analysis/SKILL.md +305 -0
- package/skills/domains/pharma/clinical-trial-design-guide/SKILL.md +271 -0
- package/skills/domains/pharma/drug-target-interaction/SKILL.md +242 -0
- package/skills/domains/pharma/madd-drug-discovery-guide/SKILL.md +153 -0
- package/skills/domains/pharma/pharmacovigilance-guide/SKILL.md +216 -0
- package/skills/domains/physics/astrophysics-data-guide/SKILL.md +305 -0
- package/skills/domains/physics/particle-physics-guide/SKILL.md +287 -0
- package/skills/domains/social-science/ipums-microdata-api/SKILL.md +211 -0
- package/skills/domains/social-science/network-analysis-guide/SKILL.md +310 -0
- package/skills/domains/social-science/psychology-research-guide/SKILL.md +270 -0
- package/skills/domains/social-science/sociology-research-guide/SKILL.md +238 -0
- package/skills/domains/social-science/sociology-research-methods/SKILL.md +181 -0
- package/skills/literature/discovery/arxiv-paper-monitoring/SKILL.md +233 -0
- package/skills/literature/discovery/paper-recommendation-guide/SKILL.md +120 -0
- package/skills/literature/discovery/papers-we-love-guide/SKILL.md +169 -0
- package/skills/literature/discovery/semantic-paper-radar/SKILL.md +144 -0
- package/skills/literature/discovery/zotero-arxiv-daily-guide/SKILL.md +94 -0
- package/skills/literature/fulltext/bioc-pmc-api/SKILL.md +146 -0
- package/skills/literature/fulltext/core-api-guide/SKILL.md +144 -0
- package/skills/literature/fulltext/dataverse-api/SKILL.md +215 -0
- package/skills/literature/fulltext/hal-archive-api/SKILL.md +218 -0
- package/skills/literature/fulltext/institutional-repository-guide/SKILL.md +212 -0
- package/skills/literature/fulltext/open-access-mining-guide/SKILL.md +341 -0
- package/skills/literature/fulltext/osf-api/SKILL.md +212 -0
- package/skills/literature/fulltext/pmc-ftp-bulk-download/SKILL.md +182 -0
- package/skills/literature/fulltext/zotero-ai-butler-guide/SKILL.md +166 -0
- package/skills/literature/fulltext/zotero-scihub-guide/SKILL.md +168 -0
- package/skills/literature/metadata/academic-paper-summarizer/SKILL.md +101 -0
- package/skills/literature/metadata/bibliometrix-guide/SKILL.md +164 -0
- package/skills/literature/metadata/crossref-event-data-api/SKILL.md +183 -0
- package/skills/literature/metadata/doi-content-negotiation/SKILL.md +202 -0
- package/skills/literature/metadata/orkg-api/SKILL.md +153 -0
- package/skills/literature/metadata/plumx-metrics-api/SKILL.md +188 -0
- package/skills/literature/metadata/ror-organization-api/SKILL.md +208 -0
- package/skills/literature/metadata/sophosia-reference-guide/SKILL.md +110 -0
- package/skills/literature/metadata/viaf-authority-api/SKILL.md +209 -0
- package/skills/literature/metadata/wikidata-api-guide/SKILL.md +156 -0
- package/skills/literature/metadata/zoplicate-dedup-guide/SKILL.md +147 -0
- package/skills/literature/metadata/zotero-actions-tags-guide/SKILL.md +212 -0
- package/skills/literature/metadata/zotmoov-guide/SKILL.md +120 -0
- package/skills/literature/metadata/zutilo-guide/SKILL.md +140 -0
- package/skills/literature/search/arxiv-batch-reporting/SKILL.md +133 -0
- package/skills/literature/search/arxiv-cli-tools/SKILL.md +172 -0
- package/skills/literature/search/arxiv-osiris/SKILL.md +199 -0
- package/skills/literature/search/arxiv-paper-processor/SKILL.md +141 -0
- package/skills/literature/search/baidu-scholar-guide/SKILL.md +110 -0
- package/skills/literature/search/base-academic-search/SKILL.md +196 -0
- package/skills/literature/search/chatpaper-guide/SKILL.md +122 -0
- package/skills/literature/search/citeseerx-api/SKILL.md +183 -0
- package/skills/literature/search/deep-literature-search/SKILL.md +149 -0
- package/skills/literature/search/deepgit-search-guide/SKILL.md +147 -0
- package/skills/literature/search/eric-education-api/SKILL.md +199 -0
- package/skills/literature/search/findpapers-guide/SKILL.md +177 -0
- package/skills/literature/search/ieee-xplore-api/SKILL.md +177 -0
- package/skills/literature/search/lens-scholarly-api/SKILL.md +211 -0
- package/skills/literature/search/multi-database-literature-search/SKILL.md +198 -0
- package/skills/literature/search/open-library-api/SKILL.md +196 -0
- package/skills/literature/search/open-semantic-search-guide/SKILL.md +190 -0
- package/skills/literature/search/openaire-api/SKILL.md +141 -0
- package/skills/literature/search/paper-search-mcp-guide/SKILL.md +107 -0
- package/skills/literature/search/papers-chat-guide/SKILL.md +194 -0
- package/skills/literature/search/pasa-paper-search-guide/SKILL.md +138 -0
- package/skills/literature/search/plos-open-access-api/SKILL.md +203 -0
- package/skills/literature/search/scielo-api/SKILL.md +182 -0
- package/skills/literature/search/share-research-api/SKILL.md +129 -0
- package/skills/literature/search/worldcat-search-api/SKILL.md +224 -0
- package/skills/research/automation/ai-scientist-v2-guide/SKILL.md +284 -0
- package/skills/research/automation/aim-experiment-guide/SKILL.md +234 -0
- package/skills/research/automation/claude-academic-workflow-guide/SKILL.md +202 -0
- package/skills/research/automation/coexist-ai-guide/SKILL.md +149 -0
- package/skills/research/automation/datagen-research-guide/SKILL.md +131 -0
- package/skills/research/automation/foam-agent-guide/SKILL.md +203 -0
- package/skills/research/automation/kedro-pipeline-guide/SKILL.md +216 -0
- package/skills/research/automation/mle-agent-guide/SKILL.md +139 -0
- package/skills/research/automation/paper-to-agent-guide/SKILL.md +116 -0
- package/skills/research/automation/rd-agent-guide/SKILL.md +246 -0
- package/skills/research/automation/research-paper-orchestrator/SKILL.md +254 -0
- package/skills/research/deep-research/academic-deep-research/SKILL.md +190 -0
- package/skills/research/deep-research/auto-deep-research-guide/SKILL.md +141 -0
- package/skills/research/deep-research/cognitive-kernel-guide/SKILL.md +200 -0
- package/skills/research/deep-research/corvus-research-guide/SKILL.md +132 -0
- package/skills/research/deep-research/deep-research-pro/SKILL.md +213 -0
- package/skills/research/deep-research/deep-research-work/SKILL.md +204 -0
- package/skills/research/deep-research/deep-searcher-guide/SKILL.md +253 -0
- package/skills/research/deep-research/gpt-researcher-guide/SKILL.md +191 -0
- package/skills/research/deep-research/in-depth-research-guide/SKILL.md +205 -0
- package/skills/research/deep-research/khoj-research-guide/SKILL.md +200 -0
- package/skills/research/deep-research/kosmos-scientist-guide/SKILL.md +185 -0
- package/skills/research/deep-research/llm-scientific-discovery-guide/SKILL.md +178 -0
- package/skills/research/deep-research/local-deep-research-guide/SKILL.md +253 -0
- package/skills/research/deep-research/open-researcher-guide/SKILL.md +138 -0
- package/skills/research/deep-research/tongyi-deep-research-guide/SKILL.md +217 -0
- package/skills/research/funding/eu-horizon-guide/SKILL.md +244 -0
- package/skills/research/funding/grant-budget-guide/SKILL.md +284 -0
- package/skills/research/funding/nih-reporter-api-guide/SKILL.md +166 -0
- package/skills/research/funding/nsf-award-api-guide/SKILL.md +133 -0
- package/skills/research/methodology/academic-mentor-guide/SKILL.md +169 -0
- package/skills/research/methodology/claude-scientific-guide/SKILL.md +122 -0
- package/skills/research/methodology/deep-innovator-guide/SKILL.md +242 -0
- package/skills/research/methodology/osf-api-guide/SKILL.md +165 -0
- package/skills/research/methodology/parsifal-slr-guide/SKILL.md +154 -0
- package/skills/research/methodology/research-paper-kb/SKILL.md +263 -0
- package/skills/research/methodology/research-pipeline-units-guide/SKILL.md +169 -0
- package/skills/research/methodology/research-town-guide/SKILL.md +263 -0
- package/skills/research/methodology/slr-automation-guide/SKILL.md +235 -0
- package/skills/research/paper-review/automated-review-guide/SKILL.md +281 -0
- package/skills/research/paper-review/latte-review-guide/SKILL.md +175 -0
- package/skills/research/paper-review/paper-compare-guide/SKILL.md +238 -0
- package/skills/research/paper-review/paper-critique-framework/SKILL.md +181 -0
- package/skills/research/paper-review/paper-digest-guide/SKILL.md +240 -0
- package/skills/research/paper-review/paper-research-assistant/SKILL.md +231 -0
- package/skills/research/paper-review/research-quality-filter/SKILL.md +261 -0
- package/skills/research/paper-review/review-response-guide/SKILL.md +275 -0
- package/skills/tools/code-exec/contextplus-mcp-guide/SKILL.md +110 -0
- package/skills/tools/code-exec/google-colab-guide/SKILL.md +276 -0
- package/skills/tools/code-exec/kaggle-api-guide/SKILL.md +216 -0
- package/skills/tools/code-exec/overleaf-cli-guide/SKILL.md +279 -0
- package/skills/tools/diagram/clawphd-guide/SKILL.md +149 -0
- package/skills/tools/diagram/code-flow-visualizer/SKILL.md +197 -0
- package/skills/tools/diagram/excalidraw-diagram-guide/SKILL.md +170 -0
- package/skills/tools/diagram/json-data-visualizer/SKILL.md +270 -0
- package/skills/tools/diagram/kroki-diagram-api/SKILL.md +198 -0
- package/skills/tools/diagram/mermaid-architect-guide/SKILL.md +219 -0
- package/skills/tools/diagram/scientific-graphical-abstract/SKILL.md +201 -0
- package/skills/tools/diagram/tldraw-whiteboard-guide/SKILL.md +397 -0
- package/skills/tools/document/docsgpt-guide/SKILL.md +130 -0
- package/skills/tools/document/large-document-reader/SKILL.md +202 -0
- package/skills/tools/document/md2pdf-xelatex/SKILL.md +212 -0
- package/skills/tools/document/openpaper-guide/SKILL.md +232 -0
- package/skills/tools/document/paper-parse-guide/SKILL.md +243 -0
- package/skills/tools/document/weknora-guide/SKILL.md +216 -0
- package/skills/tools/document/zotero-addon-market-guide/SKILL.md +108 -0
- package/skills/tools/document/zotero-night-theme-guide/SKILL.md +142 -0
- package/skills/tools/document/zotero-style-guide/SKILL.md +217 -0
- package/skills/tools/knowledge-graph/citation-network-builder/SKILL.md +244 -0
- package/skills/tools/knowledge-graph/concept-map-generator/SKILL.md +284 -0
- package/skills/tools/knowledge-graph/graphiti-guide/SKILL.md +219 -0
- package/skills/tools/knowledge-graph/mimir-memory-guide/SKILL.md +135 -0
- package/skills/tools/knowledge-graph/notero-zotero-notion-guide/SKILL.md +187 -0
- package/skills/tools/knowledge-graph/open-webui-tools-guide/SKILL.md +156 -0
- package/skills/tools/knowledge-graph/openspg-guide/SKILL.md +210 -0
- package/skills/tools/knowledge-graph/paperpile-notion-guide/SKILL.md +84 -0
- package/skills/tools/knowledge-graph/zotero-markdb-connect-guide/SKILL.md +162 -0
- package/skills/tools/ocr-translate/latex-translation-guide/SKILL.md +176 -0
- package/skills/tools/ocr-translate/math-equation-renderer/SKILL.md +198 -0
- package/skills/tools/ocr-translate/pdf-math-translate-guide/SKILL.md +141 -0
- package/skills/tools/ocr-translate/zotero-pdf-translate-guide/SKILL.md +95 -0
- package/skills/tools/ocr-translate/zotero-pdf2zh-guide/SKILL.md +143 -0
- package/skills/tools/scraping/dataset-finder-guide/SKILL.md +253 -0
- package/skills/tools/scraping/easy-spider-guide/SKILL.md +250 -0
- package/skills/tools/scraping/google-scholar-scraper/SKILL.md +255 -0
- package/skills/tools/scraping/repository-harvesting-guide/SKILL.md +310 -0
- package/skills/writing/citation/academic-citation-manager/SKILL.md +314 -0
- package/skills/writing/citation/academic-citation-manager-guide/SKILL.md +182 -0
- package/skills/writing/citation/citation-assistant-skill/SKILL.md +192 -0
- package/skills/writing/citation/jabref-reference-guide/SKILL.md +127 -0
- package/skills/writing/citation/jasminum-zotero-guide/SKILL.md +103 -0
- package/skills/writing/citation/mendeley-api/SKILL.md +231 -0
- package/skills/writing/citation/obsidian-citation-guide/SKILL.md +164 -0
- package/skills/writing/citation/obsidian-zotero-guide/SKILL.md +137 -0
- package/skills/writing/citation/onecite-reference-guide/SKILL.md +168 -0
- package/skills/writing/citation/papersgpt-zotero-guide/SKILL.md +132 -0
- package/skills/writing/citation/papis-cli-guide/SKILL.md +213 -0
- package/skills/writing/citation/zotero-better-bibtex-guide/SKILL.md +107 -0
- package/skills/writing/citation/zotero-better-notes-guide/SKILL.md +121 -0
- package/skills/writing/citation/zotero-gpt-guide/SKILL.md +111 -0
- package/skills/writing/citation/zotero-mcp-guide/SKILL.md +164 -0
- package/skills/writing/citation/zotero-mdnotes-guide/SKILL.md +162 -0
- package/skills/writing/citation/zotero-reference-guide/SKILL.md +139 -0
- package/skills/writing/citation/zotero-scholar-guide/SKILL.md +294 -0
- package/skills/writing/citation/zotfile-attachment-guide/SKILL.md +140 -0
- package/skills/writing/composition/ml-paper-writing/SKILL.md +163 -0
- package/skills/writing/composition/opendraft-thesis-guide/SKILL.md +200 -0
- package/skills/writing/composition/paper-debugger-guide/SKILL.md +143 -0
- package/skills/writing/composition/paperforge-guide/SKILL.md +205 -0
- package/skills/writing/composition/research-paper-writer/SKILL.md +226 -0
- package/skills/writing/composition/scientific-writing-resources/SKILL.md +151 -0
- package/skills/writing/composition/scientific-writing-wrapper/SKILL.md +153 -0
- package/skills/writing/latex/academic-writing-latex/SKILL.md +285 -0
- package/skills/writing/latex/latex-drawing-collection/SKILL.md +154 -0
- package/skills/writing/latex/latex-templates-collection/SKILL.md +159 -0
- package/skills/writing/latex/md-to-pdf-academic/SKILL.md +230 -0
- package/skills/writing/latex/tex-render-guide/SKILL.md +243 -0
- package/skills/writing/polish/academic-tone-guide/SKILL.md +209 -0
- package/skills/writing/polish/chinese-text-humanizer/SKILL.md +140 -0
- package/skills/writing/polish/conciseness-editing-guide/SKILL.md +225 -0
- package/skills/writing/polish/paper-polish-guide/SKILL.md +160 -0
- package/skills/writing/templates/arxiv-preprint-template/SKILL.md +184 -0
- package/skills/writing/templates/elegant-paper-template/SKILL.md +141 -0
- package/skills/writing/templates/graphical-abstract-guide/SKILL.md +183 -0
- package/skills/writing/templates/novathesis-guide/SKILL.md +152 -0
- package/skills/writing/templates/scientific-article-pdf/SKILL.md +261 -0
- package/skills/writing/templates/sjtuthesis-guide/SKILL.md +197 -0
- package/skills/writing/templates/thuthesis-guide/SKILL.md +181 -0
- package/skills/literature/fulltext/repository-harvesting-guide/SKILL.md +0 -207
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: scielo-api
|
|
3
|
+
description: "Access Latin American and developing world research via SciELO API"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🌎"
|
|
7
|
+
category: "literature"
|
|
8
|
+
subcategory: "search"
|
|
9
|
+
keywords: ["SciELO", "Latin America", "open access journals", "developing countries", "Brazilian research", "Spanish research"]
|
|
10
|
+
source: "https://wiki.scielo.org/"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# SciELO API
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
SciELO (Scientific Electronic Library Online) is the primary open access platform for scholarly journals in Latin America, the Caribbean, Spain, Portugal, and South Africa. It indexes 1,800+ peer-reviewed journals and 900K+ articles, many not indexed elsewhere. All content is open access. The API provides article search, journal metadata, and bibliometric indicators. Free, no authentication required.
|
|
18
|
+
|
|
19
|
+
## API Endpoints
|
|
20
|
+
|
|
21
|
+
### ArticleMeta API
|
|
22
|
+
|
|
23
|
+
Search and retrieve articles:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Search articles by keyword
|
|
27
|
+
curl "https://articlemeta.scielo.org/api/v1/article/?collection=scl&q=machine+learning"
|
|
28
|
+
|
|
29
|
+
# Get article by PID (SciELO identifier)
|
|
30
|
+
curl "https://articlemeta.scielo.org/api/v1/article/?code=S0100-204X2024000100001"
|
|
31
|
+
|
|
32
|
+
# Filter by collection (country)
|
|
33
|
+
curl "https://articlemeta.scielo.org/api/v1/article/?collection=esp&q=climate+change"
|
|
34
|
+
|
|
35
|
+
# Filter by journal ISSN
|
|
36
|
+
curl "https://articlemeta.scielo.org/api/v1/article/?issn=0100-204X&from_date=2024-01-01"
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Collection Codes
|
|
40
|
+
|
|
41
|
+
| Code | Country/Region |
|
|
42
|
+
|------|---------------|
|
|
43
|
+
| `scl` | Brazil |
|
|
44
|
+
| `esp` | Spain |
|
|
45
|
+
| `mex` | Mexico |
|
|
46
|
+
| `col` | Colombia |
|
|
47
|
+
| `chl` | Chile |
|
|
48
|
+
| `arg` | Argentina |
|
|
49
|
+
| `cub` | Cuba |
|
|
50
|
+
| `ven` | Venezuela |
|
|
51
|
+
| `prt` | Portugal |
|
|
52
|
+
| `zaf` | South Africa |
|
|
53
|
+
|
|
54
|
+
### Journal Metadata
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# List journals in a collection
|
|
58
|
+
curl "https://articlemeta.scielo.org/api/v1/journal/?collection=scl"
|
|
59
|
+
|
|
60
|
+
# Get journal by ISSN
|
|
61
|
+
curl "https://articlemeta.scielo.org/api/v1/journal/?issn=0100-204X"
|
|
62
|
+
|
|
63
|
+
# Journal indicators
|
|
64
|
+
curl "https://analytics.scielo.org/api/v1/journal/?issn=0100-204X"
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### SciELO Search API
|
|
68
|
+
|
|
69
|
+
Full-text search with facets:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Full-text search
|
|
73
|
+
curl "https://search.scielo.org/?q=biodiversity+conservation&format=json&count=20"
|
|
74
|
+
|
|
75
|
+
# Filter by subject area
|
|
76
|
+
curl "https://search.scielo.org/?q=neural+networks&filter[subject_area]=Computer+Science&format=json"
|
|
77
|
+
|
|
78
|
+
# Filter by year range
|
|
79
|
+
curl "https://search.scielo.org/?q=CRISPR&filter[year_cluster]=2023-2026&format=json"
|
|
80
|
+
|
|
81
|
+
# Filter by language
|
|
82
|
+
curl "https://search.scielo.org/?q=epidemiology&filter[la]=en&format=json"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Query Parameters
|
|
86
|
+
|
|
87
|
+
| Parameter | Description | Example |
|
|
88
|
+
|-----------|-------------|---------|
|
|
89
|
+
| `q` | Free-text query | `q=tropical+ecology` |
|
|
90
|
+
| `collection` | Country code | `collection=scl` |
|
|
91
|
+
| `issn` | Journal ISSN | `issn=0100-204X` |
|
|
92
|
+
| `from_date` | Articles from date | `from_date=2024-01-01` |
|
|
93
|
+
| `until_date` | Articles until date | `until_date=2026-12-31` |
|
|
94
|
+
| `format` | Response format | `json`, `xml` |
|
|
95
|
+
| `count` | Results per page | `count=50` |
|
|
96
|
+
| `offset` | Pagination offset | `offset=20` |
|
|
97
|
+
|
|
98
|
+
## Python Usage
|
|
99
|
+
|
|
100
|
+
```python
|
|
101
|
+
import requests
|
|
102
|
+
|
|
103
|
+
ARTICLE_API = "https://articlemeta.scielo.org/api/v1"
|
|
104
|
+
SEARCH_API = "https://search.scielo.org"
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
def search_scielo(query: str, collection: str = None,
|
|
108
|
+
count: int = 20) -> list:
|
|
109
|
+
"""Search SciELO articles."""
|
|
110
|
+
params = {"q": query, "format": "json", "count": count}
|
|
111
|
+
if collection:
|
|
112
|
+
params["collection"] = collection
|
|
113
|
+
|
|
114
|
+
resp = requests.get(f"{SEARCH_API}/", params=params)
|
|
115
|
+
resp.raise_for_status()
|
|
116
|
+
data = resp.json()
|
|
117
|
+
|
|
118
|
+
results = []
|
|
119
|
+
for doc in data.get("docs", data.get("results", [])):
|
|
120
|
+
results.append({
|
|
121
|
+
"title": doc.get("title", {}).get("en", doc.get("title", "")),
|
|
122
|
+
"authors": doc.get("authors", []),
|
|
123
|
+
"journal": doc.get("journal_title", ""),
|
|
124
|
+
"year": doc.get("publication_year", ""),
|
|
125
|
+
"doi": doc.get("doi", ""),
|
|
126
|
+
"pid": doc.get("pid", ""),
|
|
127
|
+
"language": doc.get("la", []),
|
|
128
|
+
"url": f"https://scielo.org/article/{doc.get('pid', '')}",
|
|
129
|
+
})
|
|
130
|
+
return results
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
def get_article(pid: str) -> dict:
|
|
134
|
+
"""Get full article metadata by SciELO PID."""
|
|
135
|
+
resp = requests.get(
|
|
136
|
+
f"{ARTICLE_API}/article/",
|
|
137
|
+
params={"code": pid, "format": "json"},
|
|
138
|
+
)
|
|
139
|
+
resp.raise_for_status()
|
|
140
|
+
return resp.json()
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
def list_journals(collection: str = "scl") -> list:
|
|
144
|
+
"""List journals in a SciELO collection."""
|
|
145
|
+
resp = requests.get(
|
|
146
|
+
f"{ARTICLE_API}/journal/",
|
|
147
|
+
params={"collection": collection, "format": "json"},
|
|
148
|
+
)
|
|
149
|
+
resp.raise_for_status()
|
|
150
|
+
return resp.json()
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
# Example: find Brazilian ecology research
|
|
154
|
+
papers = search_scielo("Amazon deforestation biodiversity", collection="scl")
|
|
155
|
+
for p in papers:
|
|
156
|
+
print(f"[{p['year']}] {p['title']} — {p['journal']}")
|
|
157
|
+
|
|
158
|
+
# Example: find Spanish medical research
|
|
159
|
+
papers = search_scielo("diabetes treatment", collection="esp")
|
|
160
|
+
for p in papers:
|
|
161
|
+
print(f"{p['title']} (DOI: {p['doi']})")
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## Subject Areas Covered
|
|
165
|
+
|
|
166
|
+
- Agricultural Sciences, Biological Sciences, Health Sciences
|
|
167
|
+
- Engineering, Exact Sciences, Earth Sciences
|
|
168
|
+
- Human Sciences, Social Sciences, Linguistics/Arts
|
|
169
|
+
|
|
170
|
+
## Unique Value
|
|
171
|
+
|
|
172
|
+
- **Regional focus**: Primary index for Latin American and Iberian research
|
|
173
|
+
- **Language diversity**: Portuguese, Spanish, English content
|
|
174
|
+
- **100% open access**: All indexed content freely available
|
|
175
|
+
- **Underrepresented research**: Many journals not in Scopus/WoS
|
|
176
|
+
|
|
177
|
+
## References
|
|
178
|
+
|
|
179
|
+
- [SciELO](https://scielo.org/)
|
|
180
|
+
- [SciELO Analytics](https://analytics.scielo.org/)
|
|
181
|
+
- [ArticleMeta API](https://articlemeta.scielo.org/)
|
|
182
|
+
- [SciELO Developer Wiki](https://wiki.scielo.org/)
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: share-research-api
|
|
3
|
+
description: "Discover open access research outputs via the SHARE notification API"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "📢"
|
|
7
|
+
category: "literature"
|
|
8
|
+
subcategory: "search"
|
|
9
|
+
keywords: ["SHARE", "open access", "research notification", "COS", "repository aggregator", "preprints"]
|
|
10
|
+
source: "https://share.osf.io/"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# SHARE Research API
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
SHARE (SHared Access Research Ecosystem) aggregates metadata from 200+ research repositories, preprint servers, and publishers into a unified search API. Operated by the Center for Open Science, it tracks research outputs as they move through the scholarly communication cycle — from preprint to publication. Free, no authentication for search.
|
|
18
|
+
|
|
19
|
+
## API Endpoints
|
|
20
|
+
|
|
21
|
+
### Base URL
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
https://share.osf.io/api/v2
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Search
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# Text search across all sources
|
|
31
|
+
curl "https://share.osf.io/api/v2/search/creativeworks/?q=climate+change&page[size]=20"
|
|
32
|
+
|
|
33
|
+
# Filter by type
|
|
34
|
+
curl "https://share.osf.io/api/v2/search/creativeworks/?q=neural+networks&filter[type]=preprint"
|
|
35
|
+
|
|
36
|
+
# Filter by source
|
|
37
|
+
curl "https://share.osf.io/api/v2/search/creativeworks/?q=genomics&filter[sources]=PubMed+Central"
|
|
38
|
+
|
|
39
|
+
# Filter by date
|
|
40
|
+
curl "https://share.osf.io/api/v2/search/creativeworks/?q=COVID-19&filter[date][gte]=2024-01-01"
|
|
41
|
+
|
|
42
|
+
# Filter by tag/subject
|
|
43
|
+
curl "https://share.osf.io/api/v2/search/creativeworks/?q=machine+learning&filter[tags]=deep+learning"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Query Parameters
|
|
47
|
+
|
|
48
|
+
| Parameter | Description | Example |
|
|
49
|
+
|-----------|-------------|---------|
|
|
50
|
+
| `q` | Search query | `q=CRISPR` |
|
|
51
|
+
| `filter[type]` | Output type | `preprint`, `article`, `dataset`, `thesis` |
|
|
52
|
+
| `filter[sources]` | Source repository | `PubMed Central`, `arXiv`, `Zenodo` |
|
|
53
|
+
| `filter[date][gte]` | From date | `2024-01-01` |
|
|
54
|
+
| `filter[date][lte]` | Until date | `2026-12-31` |
|
|
55
|
+
| `filter[tags]` | Tag filter | `open+data` |
|
|
56
|
+
| `page[size]` | Results per page | `page[size]=50` |
|
|
57
|
+
| `sort` | Sort order | `-date_updated` |
|
|
58
|
+
|
|
59
|
+
### Available Sources (200+)
|
|
60
|
+
|
|
61
|
+
| Source | Type |
|
|
62
|
+
|--------|------|
|
|
63
|
+
| arXiv | Preprints |
|
|
64
|
+
| PubMed Central | Biomedical articles |
|
|
65
|
+
| Zenodo | Multi-discipline repository |
|
|
66
|
+
| Figshare | Data/figures |
|
|
67
|
+
| SSRN | Social science preprints |
|
|
68
|
+
| DataCite | Research data |
|
|
69
|
+
| Institutional repositories | Various |
|
|
70
|
+
|
|
71
|
+
## Python Usage
|
|
72
|
+
|
|
73
|
+
```python
|
|
74
|
+
import requests
|
|
75
|
+
|
|
76
|
+
BASE_URL = "https://share.osf.io/api/v2"
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
def search_share(query: str, output_type: str = None,
|
|
80
|
+
source: str = None,
|
|
81
|
+
from_date: str = None,
|
|
82
|
+
page_size: int = 20) -> list:
|
|
83
|
+
"""Search SHARE for research outputs."""
|
|
84
|
+
params = {"q": query, "page[size]": page_size}
|
|
85
|
+
if output_type:
|
|
86
|
+
params["filter[type]"] = output_type
|
|
87
|
+
if source:
|
|
88
|
+
params["filter[sources]"] = source
|
|
89
|
+
if from_date:
|
|
90
|
+
params["filter[date][gte]"] = from_date
|
|
91
|
+
|
|
92
|
+
resp = requests.get(
|
|
93
|
+
f"{BASE_URL}/search/creativeworks/",
|
|
94
|
+
params=params,
|
|
95
|
+
)
|
|
96
|
+
resp.raise_for_status()
|
|
97
|
+
data = resp.json()
|
|
98
|
+
|
|
99
|
+
results = []
|
|
100
|
+
for item in data.get("data", []):
|
|
101
|
+
attrs = item.get("attributes", {})
|
|
102
|
+
results.append({
|
|
103
|
+
"title": attrs.get("title"),
|
|
104
|
+
"description": (attrs.get("description") or "")[:300],
|
|
105
|
+
"type": attrs.get("type"),
|
|
106
|
+
"date": attrs.get("date_updated", "")[:10],
|
|
107
|
+
"sources": attrs.get("sources", []),
|
|
108
|
+
"tags": attrs.get("tags", []),
|
|
109
|
+
"identifiers": attrs.get("identifiers", []),
|
|
110
|
+
})
|
|
111
|
+
return results
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
# Example: find recent preprints on a topic
|
|
115
|
+
preprints = search_share(
|
|
116
|
+
"transformer architecture",
|
|
117
|
+
output_type="preprint",
|
|
118
|
+
from_date="2024-01-01",
|
|
119
|
+
)
|
|
120
|
+
for p in preprints[:5]:
|
|
121
|
+
print(f"[{p['date']}] {p['title']}")
|
|
122
|
+
print(f" Type: {p['type']} | Sources: {', '.join(p['sources'][:3])}")
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## References
|
|
126
|
+
|
|
127
|
+
- [SHARE](https://share.osf.io/)
|
|
128
|
+
- [SHARE API Documentation](https://share.osf.io/api/v2/)
|
|
129
|
+
- [Center for Open Science](https://cos.io/)
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: worldcat-search-api
|
|
3
|
+
description: "Search the world's largest library catalog via OCLC WorldCat API"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🏛️"
|
|
7
|
+
category: "literature"
|
|
8
|
+
subcategory: "search"
|
|
9
|
+
keywords: ["worldcat", "library catalog", "OCLC", "book search", "holdings", "interlibrary loan"]
|
|
10
|
+
source: "https://developer.api.oclc.org/"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# WorldCat Search API
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
WorldCat is the world's largest network of library content, aggregating catalogs from 10,000+ libraries across 170+ countries. The Search API provides access to 500M+ bibliographic records — books, journals, dissertations, media, and more — with holdings information showing which libraries own each item. Essential for interlibrary loan discovery, collection analysis, and comprehensive bibliographic searches. Requires a WSKey (free for non-commercial use).
|
|
18
|
+
|
|
19
|
+
## Authentication
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Register at https://platform.worldcat.org/
|
|
23
|
+
# Obtain a WSKey (API key) for your application
|
|
24
|
+
|
|
25
|
+
# OAuth 2.0 client credentials flow
|
|
26
|
+
curl -X POST "https://oauth.oclc.org/token" \
|
|
27
|
+
-u "$WSKEY_CLIENT_ID:$WSKEY_SECRET" \
|
|
28
|
+
-d "grant_type=client_credentials&scope=wcapi"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## API Endpoints
|
|
32
|
+
|
|
33
|
+
### Base URL
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
https://www.worldcat.org/api/search/
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Search Bibliographic Records
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Keyword search
|
|
43
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
44
|
+
"https://www.worldcat.org/api/search?q=machine+learning&limit=25"
|
|
45
|
+
|
|
46
|
+
# Search by title
|
|
47
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
48
|
+
"https://www.worldcat.org/api/search?q=ti:attention+is+all+you+need"
|
|
49
|
+
|
|
50
|
+
# Search by author
|
|
51
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
52
|
+
"https://www.worldcat.org/api/search?q=au:hinton+geoffrey"
|
|
53
|
+
|
|
54
|
+
# Search by ISBN
|
|
55
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
56
|
+
"https://www.worldcat.org/api/search?q=bn:9780262035613"
|
|
57
|
+
|
|
58
|
+
# Combined filters
|
|
59
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
60
|
+
"https://www.worldcat.org/api/search?q=su:artificial+intelligence+AND+yr:2020-2026&itemType=book"
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Search Indexes
|
|
64
|
+
|
|
65
|
+
| Index | Prefix | Example |
|
|
66
|
+
|-------|--------|---------|
|
|
67
|
+
| Keyword | (none) | `q=neural+networks` |
|
|
68
|
+
| Title | `ti:` | `q=ti:deep+learning` |
|
|
69
|
+
| Author | `au:` | `q=au:goodfellow` |
|
|
70
|
+
| Subject | `su:` | `q=su:machine+learning` |
|
|
71
|
+
| ISBN | `bn:` | `q=bn:9780262035613` |
|
|
72
|
+
| ISSN | `n:` | `q=n:0028-0836` |
|
|
73
|
+
| OCLC Number | `no:` | `q=no:1234567` |
|
|
74
|
+
| Publisher | `pb:` | `q=pb:MIT+Press` |
|
|
75
|
+
| Year | `yr:` | `q=yr:2024` or `yr:2020-2026` |
|
|
76
|
+
| Language | `la:` | `q=la:eng` |
|
|
77
|
+
|
|
78
|
+
### Query Parameters
|
|
79
|
+
|
|
80
|
+
| Parameter | Description | Example |
|
|
81
|
+
|-----------|-------------|---------|
|
|
82
|
+
| `q` | Search query with indexes | `q=ti:BERT+AND+au:devlin` |
|
|
83
|
+
| `limit` | Results per page (max 50) | `limit=25` |
|
|
84
|
+
| `offset` | Pagination offset | `offset=50` |
|
|
85
|
+
| `itemType` | Format filter | `book`, `journal`, `thesis`, `audiobook` |
|
|
86
|
+
| `itemSubType` | Subtype filter | `digital`, `printbook` |
|
|
87
|
+
| `heldByInstitutionID` | Holdings filter | Institution registry ID |
|
|
88
|
+
| `orderBy` | Sort order | `bestMatch`, `mostWidelyHeld`, `datePublished` |
|
|
89
|
+
|
|
90
|
+
### Get Record by OCLC Number
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
94
|
+
"https://www.worldcat.org/api/search/brief-bibs/{oclc_number}"
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Holdings / Library Locations
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Find libraries holding a specific item
|
|
101
|
+
curl -H "Authorization: Bearer $TOKEN" \
|
|
102
|
+
"https://www.worldcat.org/api/search/brief-bibs/{oclc_number}/holdings?lat=42.36&lon=-71.06&distance=50"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
## Response Structure
|
|
106
|
+
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"numberOfRecords": 1250,
|
|
110
|
+
"briefRecords": [
|
|
111
|
+
{
|
|
112
|
+
"oclcNumber": "1234567890",
|
|
113
|
+
"title": "Deep Learning",
|
|
114
|
+
"creator": "Ian Goodfellow; Yoshua Bengio; Aaron Courville",
|
|
115
|
+
"date": "2016",
|
|
116
|
+
"publisher": "MIT Press",
|
|
117
|
+
"language": "eng",
|
|
118
|
+
"generalFormat": "Book",
|
|
119
|
+
"specificFormat": "PrintBook",
|
|
120
|
+
"isbns": ["9780262035613"],
|
|
121
|
+
"catalogingInfo": {
|
|
122
|
+
"catalogingAgency": "DLC"
|
|
123
|
+
},
|
|
124
|
+
"totalHoldingCount": 3542
|
|
125
|
+
}
|
|
126
|
+
]
|
|
127
|
+
}
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Python Usage
|
|
131
|
+
|
|
132
|
+
```python
|
|
133
|
+
import os
|
|
134
|
+
import requests
|
|
135
|
+
|
|
136
|
+
CLIENT_ID = os.environ["OCLC_WSKEY_ID"]
|
|
137
|
+
CLIENT_SECRET = os.environ["OCLC_WSKEY_SECRET"]
|
|
138
|
+
BASE_URL = "https://www.worldcat.org/api/search"
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
def get_token() -> str:
|
|
142
|
+
"""Obtain OAuth token from OCLC."""
|
|
143
|
+
resp = requests.post(
|
|
144
|
+
"https://oauth.oclc.org/token",
|
|
145
|
+
auth=(CLIENT_ID, CLIENT_SECRET),
|
|
146
|
+
data={"grant_type": "client_credentials", "scope": "wcapi"},
|
|
147
|
+
)
|
|
148
|
+
resp.raise_for_status()
|
|
149
|
+
return resp.json()["access_token"]
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
def search_worldcat(query: str, limit: int = 25,
|
|
153
|
+
item_type: str = None) -> list:
|
|
154
|
+
"""Search WorldCat bibliographic records."""
|
|
155
|
+
token = get_token()
|
|
156
|
+
params = {"q": query, "limit": limit}
|
|
157
|
+
if item_type:
|
|
158
|
+
params["itemType"] = item_type
|
|
159
|
+
|
|
160
|
+
resp = requests.get(
|
|
161
|
+
BASE_URL,
|
|
162
|
+
headers={"Authorization": f"Bearer {token}"},
|
|
163
|
+
params=params,
|
|
164
|
+
)
|
|
165
|
+
resp.raise_for_status()
|
|
166
|
+
data = resp.json()
|
|
167
|
+
|
|
168
|
+
results = []
|
|
169
|
+
for rec in data.get("briefRecords", []):
|
|
170
|
+
results.append({
|
|
171
|
+
"oclc": rec.get("oclcNumber"),
|
|
172
|
+
"title": rec.get("title"),
|
|
173
|
+
"creator": rec.get("creator"),
|
|
174
|
+
"date": rec.get("date"),
|
|
175
|
+
"publisher": rec.get("publisher"),
|
|
176
|
+
"format": rec.get("generalFormat"),
|
|
177
|
+
"holdings": rec.get("totalHoldingCount", 0),
|
|
178
|
+
"isbns": rec.get("isbns", []),
|
|
179
|
+
})
|
|
180
|
+
return results
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
def find_nearby_holdings(oclc_number: str,
|
|
184
|
+
lat: float, lon: float,
|
|
185
|
+
distance_km: int = 50) -> list:
|
|
186
|
+
"""Find libraries near a location that hold a specific item."""
|
|
187
|
+
token = get_token()
|
|
188
|
+
resp = requests.get(
|
|
189
|
+
f"{BASE_URL}/brief-bibs/{oclc_number}/holdings",
|
|
190
|
+
headers={"Authorization": f"Bearer {token}"},
|
|
191
|
+
params={"lat": lat, "lon": lon, "distance": distance_km},
|
|
192
|
+
)
|
|
193
|
+
resp.raise_for_status()
|
|
194
|
+
return resp.json().get("briefRecords", [])
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
# Example: find widely-held ML textbooks
|
|
198
|
+
books = search_worldcat("su:machine learning AND yr:2020-2026",
|
|
199
|
+
item_type="book", limit=10)
|
|
200
|
+
for b in books:
|
|
201
|
+
print(f"[{b['date']}] {b['title']} — {b['publisher']} "
|
|
202
|
+
f"(held by {b['holdings']} libraries)")
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## Use Cases
|
|
206
|
+
|
|
207
|
+
1. **Interlibrary loan**: Find nearest library holding a needed item
|
|
208
|
+
2. **Collection gap analysis**: Compare institutional holdings against a bibliography
|
|
209
|
+
3. **Dissertation discovery**: Search theses across global repositories
|
|
210
|
+
4. **Edition tracking**: Find all editions/translations of a work
|
|
211
|
+
5. **Bibliographic verification**: Confirm ISBNs, publication dates, and publishers
|
|
212
|
+
|
|
213
|
+
## Access Tiers
|
|
214
|
+
|
|
215
|
+
| Tier | Access | Rate Limit |
|
|
216
|
+
|------|--------|------------|
|
|
217
|
+
| WSKey (free) | Search + brief records | Moderate |
|
|
218
|
+
| Enterprise | Full MARC records + analytics | Higher |
|
|
219
|
+
|
|
220
|
+
## References
|
|
221
|
+
|
|
222
|
+
- [WorldCat Search API Documentation](https://developer.api.oclc.org/)
|
|
223
|
+
- [OCLC Developer Network](https://platform.worldcat.org/)
|
|
224
|
+
- [WorldCat.org](https://www.worldcat.org/)
|