Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Annas Mcp

    MCP server and CLI tool for searching and downloading documents from Anna's Archive Go-based implementation. Trusted by 500+ developers.

    567 stars
    Go
    Updated Oct 17, 2025
    annas-archive
    cli
    mcp-server

    Table of Contents

    • Requirements
    • Setup
    • Configuration
    • Download Environment Variables
    • Mirror Selection
    • Timeouts
    • Demo
    • As an MCP Server
    • As a CLI Tool
    • Available Operations

    Table of Contents

    • Requirements
    • Setup
    • Configuration
    • Download Environment Variables
    • Mirror Selection
    • Timeouts
    • Demo
    • As an MCP Server
    • As a CLI Tool
    • Available Operations

    Documentation

    Anna's Archive MCP Server (and CLI Tool)

    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.

    Requirements

    Search works without any required environment variables.

    Downloads require:

    • A donation to Anna's Archive, which grants JSON API access
    • An API key
    • An MCP client, such as Claude Desktop, if using the project as an MCP server

    Setup

    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:

    json
    "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"
        }
    }

    Configuration

    The tool can be configured with environment variables. These variables can also be stored in an .env file in the folder containing the binary.

    Download Environment Variables

    Downloads use:

    • ANNAS_SECRET_KEY: The Anna's Archive API key.
    • ANNAS_DOWNLOAD_PATH: The path where the documents should be downloaded.

    Mirror Selection

    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.

    Timeouts

    HTTP requests default to a 1 hour timeout. For CLI usage, override this with --timeout, for example:

    bash
    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.

    Demo

    As an MCP Server

    As a CLI Tool

    Available Operations

    OperationMCP ToolCLI CommandExample
    Search for books by title, author, or topicbook_searchbook-searchbook-search "machine learning python"
    Download a book by its MD5 hashbook_downloadbook-downloadbook-download abc123def456 "my-book.pdf"
    Search for articles by DOI or keywordsarticle_searcharticle-searcharticle-search "10.1038/nature12345" or article-search "neural networks"
    Download an article by its DOIarticle_downloadarticle-downloadarticle-download "10.1038/nature12345"

    Similar MCP

    Based on tags & features

    • MC

      Mcpjungle

      Go·
      617
    • YU

      Yutu

      Go·
      317
    • MC

      Mcp Cyclops

      Go·
      29
    • MC

      Mcp K8s

      Go·
      128

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • MC

      Mcpjungle

      Go·
      617
    • YU

      Yutu

      Go·
      317
    • MC

      Mcp Cyclops

      Go·
      29
    • MC

      Mcp K8s

      Go·
      128

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k