Back to home

bpc-oss

litkit-search

No description

Stars
0
Language
Python
Created
Aug 15, 2026
Updated
Aug 17, 2026

Introduction

litkit — Unified Academic Literature Search Toolkit

Python License: MIT GitHub release CI

Search, download, verify, and export scholarly literature from 25+ sources with one CLI. Bulk retrieval with deduplication, citation audit for manuscripts, a multi-strategy PDF download chain, and agent-client integrations (MCP + DSH).

Distributed on GitHub as litkit-search — import name and CLI stay litkit. PyPI publishing is planned.


Features

  • 25 academic sources — arXiv, PubMed, Crossref, Semantic Scholar, OpenAlex, DBLP, IEEE Xplore, Scopus, Web of Science, SSRN, bioRxiv, ChemRxiv, Zenodo, DOAJ, Scite, OpenCitations, ACM, BASE, CORE, Dimensions, Lens, Springer, ORCID, and more. Most work out of the box with zero API keys.
  • Bulk retrieval with deduplication and ranked results.
  • Citation audit (litkit verify) — check a manuscript's (docx/pdf) references against the sources.
  • PDF download chain — open-access first, then institutional access, then browser-assisted and shadow-library fallbacks (see Legal notice).
  • Export to BibTeX / RIS / JSON.
  • Workflowstopic-search, deep-search, bulk-review.
  • Chinese literature search (zh-search).
  • Agent-ready — MCP server for any agent client, plus a DeepSeek Harness (dsh) plugin adapter.

Quick start

# 1. Install (Python >= 3.11) — GitHub-only distribution (PyPI planned)
pip install "litkit-search @ git+https://github.com/bpc-oss/litkit-search.git"
# or from source: git clone https://github.com/bpc-oss/litkit-search && pip install .

# 2. (Optional) Configure API keys — most sources need none
litkit sync-keys                   # interactive: point to a keys file

# 3. Search
litkit search "deep learning drug discovery" --limit 20 --export ris

# 4. Run a citation audit on a manuscript
litkit verify paper.docx -o report/

# 5. Check your environment
litkit doctor

See docs/install.md for platform-specific guides (Windows / macOS / Linux) and docs/configuration.md for the full configuration reference.

Configuration

  • Zero-key default: arXiv, PubMed, Crossref, Semantic Scholar, OpenAlex, DBLP, DOAJ, Zenodo, bioRxiv and most other sources work without keys.
  • Optional keys (enable higher rate limits / richer metadata): Scopus, WoS, OpenAlex, Semantic Scholar, PubMed — configure via litkit sync-keys or a .env file (copy .env.example and fill in).
  • Institutional access: set INSTITUTIONAL_PROXY / INSTITUTIONAL_DIRECT in .env to use your university's EZProxy or on-campus/VPN access for publisher PDFs. You are responsible for using only access you are entitled to.
  • Chinese literature (zh-search): requires institutional library access (e.g. SZU library); see docs/configuration.md.

CLI overview

CommandPurpose
litkit searchMulti-source search with dedup
litkit downloadSearch + download PDFs
litkit download-supplDownload supplementary materials
litkit verifyCheck references in a manuscript
litkit workflow citation-auditCitation audit workflow
litkit workflow bulk-reviewBulk review by topic
litkit topic-search / deep-searchResearch expansion
litkit zh-searchChinese literature search
litkit sourcesList all 25 sources + status
litkit exportExport results (BibTeX/RIS/JSON; conversion in progress)
litkit doctorEnvironment self-check

Agent integration

litkit speaks MCP, so any MCP-capable agent client can use it:

  • MCP server (litkit-mcp): works with Claude Desktop, Codex, Cursor, OpenCode, DeepSeek Harness, and others. See docs/mcp.md.
  • DeepSeek Harness plugin: install the Cordis adapter into any dsh profile. See docs/dsh-plugin.md.
# dsh install (GitHub-only distribution):
dsh plugin --profile web add github:bpc-oss/litkit-search

Legal notice

This project includes download strategies that may access paywalled content:

  • Institutional access: uses your own university credentials/VPN. Only use access you are entitled to, and respect your institution's terms.
  • Shadow-library fallbacks (Sci-Hub / LibGen / Anna's Archive): included as a declared, optional download path. Availability varies by network, and accessing paywalled content this way may violate publisher terms or local law in your jurisdiction. Use at your own risk; the maintainers assume no liability. These paths are only engaged as a last-resort fallback and can be disabled via configuration.

Roadmap

  • Full BibTeX/RIS export conversion (litkit export).
  • More sources and per-source rate-limit tuning.
  • Additional agent adapters and MCP resource/prompt endpoints.
  • Lazily-loaded/opt-in DNS resolution for shadow-library domains.

Contributing

See CONTRIBUTING.md. Adding a new source? Follow the conventions in src/litkit/sources/ — each source is a self-contained module registered in the source registry.

License

MIT © 2026 bpshil. Changelog: CHANGELOG.md.