
Biolit
Gives Claude tools to screen biomedical literature and extract structured data from PubMed, GEO datasets, and preprints. It accepts mixed lists of PMIDs, DOIs, and GEO accessions, retrieves full text from PMC, Europe PMC, bioRxiv/medRxiv, Unpaywall, and Semantic Scholar, then runs LLM-based screening against custom criteria and extraction into CSV with configurable fields. Useful when you're triaging weekly PubMed alerts, building literature review tables, or pulling experimental metadata from GEO records. Supports batch processing through Anthropic and OpenAI batch APIs to cut per-request costs in half. Can generate prose markdown summaries alongside the CSV and stores all retrieved artifacts per record for audit.
- GitHub stars
- 2
- tools
- 12
- auth
- Secret needed
- transport
- STDIO
- env vars
- 6
- last updated
- Apr 1, 2026
Tools
12 toolsPublic tool metadata for what this MCP can expose to an agent.
run_pipelineFetch, optionally screen, and optionally extract a mixed list of PMIDs, DOIs, and/or GEO accessions; write results CSV (and optionally a .md summary when markdown=True).
Fetch, optionally screen, and optionally extract a mixed list of PMIDs, DOIs, and/or GEO accessions; write results CSV (and optionally a .md summary when markdown=True).
No parameter schema in public metadata yet.
fetch_pubmed_metadataFetch PubMed metadata by PMID
Fetch PubMed metadata by PMID
No parameter schema in public metadata yet.
fetch_geo_recordFetch and parse a GEO record by accession
Fetch and parse a GEO record by accession
No parameter schema in public metadata yet.
fetch_fulltextRetrieve full text for a PMID (6-step chain)
Retrieve full text for a PMID (6-step chain)
No parameter schema in public metadata yet.
fetch_geo_fulltextRetrieve full text for a GEO accession via its linked PMIDs
Retrieve full text for a GEO accession via its linked PMIDs
No parameter schema in public metadata yet.
fetch_supplementaryRetrieve & extract text from a paper's supplementary files (supplementary methods, tables) via Europe PMC
Retrieve & extract text from a paper's supplementary files (supplementary methods, tables) via Europe PMC
No parameter schema in public metadata yet.
screen_paperLLM relevance screen given pre-fetched text
LLM relevance screen given pre-fetched text
No parameter schema in public metadata yet.
extract_fieldsStructured field extraction given pre-fetched text
Structured field extraction given pre-fetched text
No parameter schema in public metadata yet.
resolve_doiResolve a DOI to PMID + PMCID via the NCBI ID Converter
Resolve a DOI to PMID + PMCID via the NCBI ID Converter
No parameter schema in public metadata yet.
lookup_s2_pdfCheck whether Semantic Scholar has an open-access PDF for a DOI
Check whether Semantic Scholar has an open-access PDF for a DOI
No parameter schema in public metadata yet.
read_pmids_from_emlParse PMIDs from a PubMed alert .eml file
Parse PMIDs from a PubMed alert .eml file
No parameter schema in public metadata yet.
get_versionReturn the installed biolit package version
Return the installed biolit package version
No parameter schema in public metadata yet.
Sponsors
Configuration
ANTHROPIC_API_KEYsecretAnthropic API key (required when using the default Anthropic provider)
OPENAI_API_KEYsecretOpenAI API key (required when using LLM_PROVIDER=openai)
LLM_PROVIDERLLM provider: anthropic (default), openai, or ollama
LLM_MODELModel name override (e.g. claude-sonnet-4-6, gpt-4o)
SEMANTIC_SCHOLAR_API_KEYsecretSemantic Scholar API key for higher rate limits on citation lookup (optional)
UNPAYWALL_EMAILEmail address for Unpaywall API access to improve PDF retrieval (optional)
Readme
biolit
mcp-name: io.github.rachadele/biolit
LLM-assisted biomedical literature screening and structured extraction. Accepts PubMed alert emails and mixed lists of PMIDs, DOIs, and GEO accessions in any combination. Retrieves full text from PMC, Europe PMC, bioRxiv/medRxiv, Unpaywall, and Semantic Scholar. Supports multiple LLM providers and exposes all functionality as an MCP server.
Setup
Requirements: Python 3.8+
Install from PyPI:
pip install biolit
Or install from source for development:
pip install -e .
Copy .env.example to .env and add your API key:
cp .env.example .env
# edit .env and set ANTHROPIC_API_KEY (or OPENAI_API_KEY)
On macOS, you can store the key in the system keychain instead of .env. biolit consults the keychain by service name only (no account required):
security add-generic-password -s ANTHROPIC_API_KEY -w
# or for OpenAI:
security add-generic-password -s OPENAI_API_KEY -w
Details
- Repository
- github.com/rachadele/biolit
- Category
- AI & LLM Tools
- Package
biolit- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active