by iosifache
MCP server and CLI tool for searching and downloading documents from Anna's Archive
# Add to your Claude Code skills
git clone https://github.com/iosifache/annas-mcpGuides for using mcp servers skills like annas-mcp.
Last scanned: 5/4/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-04T06:42:27.942Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}annas-mcp is an open-source mcp servers skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by iosifache. MCP server and CLI tool for searching and downloading documents from Anna's Archive. It has 932 GitHub stars.
Yes. annas-mcp passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/iosifache/annas-mcp" and add it to your Claude Code skills directory (see the Installation section above).
annas-mcp is primarily written in Go. It is open-source under iosifache on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other MCP Servers skills you can browse and compare side by side. Open the MCP Servers category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh annas-mcp against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
An MCP server and CLI tool for searching and downloading documents (books and articles) from Anna's Archive, with optional automatic selection of a mirror reported as healthy by SLUM.
[!NOTE] Notwithstanding prevailing public sentiment regarding Anna's Archive, the platform serves as a comprehensive repository for automated retrieval of documents released under permissive licensing frameworks (including Creative Commons publications and public domain materials). This software does not endorse unauthorized acquisition of copyrighted content and should be regarded solely as a utility. Users are urged to respect the intellectual property rights of authors and acknowledge the considerable effort invested in document creation.
[!WARNING] Please refer to Mirror Selection if any of the links lead to a non-functional Anna's Archive server.
Search works without any required environment variables.
Downloads require:
Download the appropriate binary from the GitHub Releases section.
If you plan to use the tool for its MCP server functionality, you need to integrate it into your MCP client. If you are using Claude Desktop, please consider the following example configuration:
"anna-mcp": {
"command": "/Users/iosifache/Downloads/annas-mcp",
"args": ["mcp"],
"env": {
"ANNAS_SECRET_KEY": "feedfacecafebeef",
"ANNAS_DOWNLOAD_PATH": "/Users/iosifache/Downloads",
"ANNAS_BASE_URL": "annas-archive.gl"
}
}
The tool can be configured with environment variables. These variables can also be stored in an .env file in the folder containing the binary.
Downloads use:
ANNAS_SECRET_KEY: The Anna's Archive API key.ANNAS_DOWNLOAD_PATH: The path where the documents should be downloaded.Anna's Archive has multiple mirrors, and their availability can change over time. By default, this project uses ANNAS_BASE_URL, or annas-archive.gl when ANNAS_BASE_URL is not set.
Optionally, you can set:
ANNAS_BASE_URL: The Anna mirror to use (defaults to annas-archive.gl). When automatic mirror discovery is enabled, this becomes the fallback mirror.ANNAS_AUTO_BASE_URL: Set to true to discover the best available Anna mirror automatically from SLUM.Automatic discovery is opt-in: when ANNAS_AUTO_BASE_URL=true, the tool reads the public status page, ranks discovered Anna mirror candidates by recent health and latency, probes them locally, and uses the best reachable mirror. If discovery or probing fails, the tool falls back to ANNAS_BASE_URL, then to the built-in default mirror.
HTTP requests default to a 1 hour timeout. For CLI usage, override this with --timeout, for example:
annas-mcp --timeout 1h book-download abc123def456 "my-book.pdf"
For MCP usage, tools accept an optional timeout_seconds parameter, for example 3600 for 1 hour.
| Operation | MCP Tool | CLI Command | Example |
|---|---|---|---|
| Search for books by title, author, or topic | book_search |
book-search |
book-search "machine learning python" |
| Download a book by its MD5 hash | book_download |
book-download |
book-download abc123def456 "my-book.pdf" |
| Search for articles by DOI or keywords | article_search |
article-search |
article-search "10.1038/nature12345" or article-search "neural networks" |
| Download an article by its DOI | article_download |
article-download |
article-download "10.1038/nature12345" |