aletheia-mcp
An MCP server that gives AI agents structured access to scientific literature — 250M+ papers indexed via OpenAlex, covering arXiv, PubMed, Crossref, and more — so they can do research, not just search.
The gap this fills
Tools like Elicit, Consensus, and SciSpace are great but they're standalone chat apps. You ask one question, you get one answer. You can't chain operations.
With aletheia-mcp running in Claude or any MCP-compatible client, you can ask things like:
"I'm reviewing literature on mitochondrial dysfunction in Parkinson's. Find the 20 most-cited papers from the last 5 years, pull the full text of the three most influential, identify the exact mechanisms they propose, and flag any that contradict each other."
Under the hood, Claude chains multiple tool calls — search, fetch metadata, walk citations, download and parse full PDFs — and synthesizes. That's the difference between search and research.
Tools in v0.3.0
search_papers(query, limit)— unified search across the OpenAlex corpusget_paper_details(paper_id)— full metadata for any paper by OpenAlex ID, DOI, PubMed ID, or URLget_citation_graph(paper_id, direction, limit)— walk citations forward (direction="citations") or references backward (direction="references")get_paper_full_text(paper_id)— new in v0.3 — fetches and extracts the full text of any open-access paper. Handles arXiv, PubMed Central, and direct publisher PDFs. Falls back gracefully when no OA version is available.
All paper-returning tools use a normalized shape: {id, title, abstract, authors, year, citation_count, venue, doi, url, pdf_url, source}. The full-text tool adds text and char_count.
Why OpenAlex (not Semantic Scholar)
Earlier iterations used Semantic Scholar. The free API key there is gated and institution-preferred — independent developers face slow or rejected applications, which meant future users of this tool would hit the same wall.
OpenAlex is the open, CC0-licensed successor to Microsoft Academic Graph, with 250M+ works covering the same sources. As of February 2026, API keys are required but are free and self-serve — 30 seconds to sign up, no approval process.
Install
Not yet on PyPI. To run locally:
git clone https://github.com/TechFusionData/aletheia-mcp
cd aletheia-mcp
uv sync
cp .env.example .env
# edit .env and paste your OpenAlex API key
Then register with Claude Code (or your MCP client of choice):
claude mcp add --scope user aletheia -- uv run --directory $(pwd) aletheia-mcp
Restart your MCP client and the tools become available.
Dependencies worth noting
- PyMuPDF (AGPL-3.0) — used for full-text PDF extraction because it handles two-column scientific layouts far better than alternatives. If AGPL is a concern for your use case, you can swap in
pypdfium2(Apache-2.0) insources/openalex.py:_extract_pdf_textat the cost of somewhat messier text output.
Why "aletheia"
ἀλήθεια — the Greek notion of truth as "unconcealment," the state of not being hidden. Research is the practice of bringing what's there into view.
License
MIT. See LICENSE.
Metadata
Release files for aletheia-mcp 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| aletheia_mcp-0.3.0.tar.gz | 13.0 kB | Without provenance | Details for aletheia_mcp-0.3.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| aletheia_mcp-0.3.0-py3-none-any.whl | Python 3 | none | any | Details for aletheia_mcp-0.3.0-py3-none-any.whl |
Total release size: 30.0 kB
Release files / aletheia_mcp-0.3.0.tar.gz
| Download URL | aletheia_mcp-0.3.0.tar.gz |
|---|---|
| Size | 13.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
17b9dcf07a7a98022911741a6d4c3e5e4ce35e624cc38f2cfbbd41d7f428303f
|
|
BLAKE2b-256 checksum How to use checksums |
f991b90baf2d7d1312a61c4d616fc1226ca3f729e492a4d7e230b01da5226324
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / aletheia_mcp-0.3.0-py3-none-any.whl
| Download URL | aletheia_mcp-0.3.0-py3-none-any.whl |
|---|---|
| Size | 17.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
914fc9a75e12c95bf99d517c9fc7ff539e3ff3830f0ed35bdeb3ae67321791aa
|
|
BLAKE2b-256 checksum How to use checksums |
ca48676eb1e51ca7556ab51f4191021ad3533f912b71212a6be52dff1fae7b0a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for aletheia-mcp 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.