Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’» Developer Tools
  3. Eth Library MCP
Eth Library MCP logo
Health: ActiveRecent health check succeeded.Last checked 9/7/2026, 9:23:13 PM

Eth Library MCP

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository1 GitHub StarsTotal stargazers on GitHub for the source repository (1 stars).Visit Website

MCP Server for ETH Library Zurich – Access 30M+ resources (books, maps, images, archives) via Discovery & Persons API

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "eth-library-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "eth-library-mcp"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Directory Badge Claim listing AlternativesπŸ’» More in Developer Tools

Documentation Overview

πŸ‡¨πŸ‡­ Part of the Swiss Public Data MCP Portfolio

πŸ›οΈ eth-library-mcp

Version License: MIT Python 3.11+ MCP Data Source CI

🌐 English | Deutsch

MCP server giving AI models direct access to 30M+ resources at ETH Library Zurich – books, maps, images and archival material.

Demo

Demo: Claude using eth_search_archive to find historical school documents


Overview

eth-library-mcp connects AI assistants like Claude to the largest natural-science library in Switzerland. It exposes full-text search, archive-level queries and resource-type filtering via the ETH Library's Discovery API – all through a single, standardised MCP interface.

6 Tools Β· 1 API Β· 2 Resources Β· 2 Prompts

MCP Protocol Version: 2026-07-28 (via mcp[cli]>=2.0.0,<3).

BUG-02 is resolved β€” by removing the tool. eth_search_persons was documented as "currently non-functional, correct URL to be verified". It has now been verified, and there is no correct URL: the Persons API is gone from the gateway, not merely locked. The gateway routes before it checks the API key, so an existing route answers 401 and a missing one answers 404 β€” /discovery/v1/resources gives 401, every /persons/v1/* path gives 404, and so does a deliberately invented Discovery path used as a control. Offering a capability that cannot exist is the same mistake as returning an empty result, only louder. The measurement is recorded and dated in tests/fixtures/api_routes.json.

Anchor demo query: "Find historical documents about Zurich school history in the ETH Library archives."


Features

  • πŸ” Full-text search over 30M+ resources with fields, operators, and facets
  • πŸ“– Resource details – full metadata via MMS-ID
  • πŸ—‚οΈ Archive search – ETH University Archives, Max Frisch, Thomas Mann, Graphische Sammlung, Bildarchiv
  • 🏷️ Resource type filter – books, maps, images, archival material and more
  • πŸŽ“ Education search – curated workflow optimised for pedagogy and school history
  • πŸ“‹ Server overview – all resource types and archives at a glance
  • πŸ—£οΈ Built-in prompts – structured research and education-research workflows
  • ☁️ Dual transport – stdio for Claude Desktop, Streamable HTTP/SSE for cloud deployment

Prerequisites

  • Python 3.11+
  • A free API key from developer.library.ethz.ch

Installation

bash
# Clone the repository
git clone https://github.com/malkreide/eth-library-mcp.git
cd eth-library-mcp

# Install
pip install -e .

# Or with uv (recommended)
uv pip install -e .

Quickstart

server.ts
# Set the API key
export ETH_LIBRARY_API_KEY=your_key_here   # macOS / Linux
# $env:ETH_LIBRARY_API_KEY = "your_key_here"  # Windows (PowerShell)

# Start the server (stdio mode for Claude Desktop)
python -m eth_library_mcp.server

Without an API key the server returns a helpful error message with the registration link – no crashes.

Try it immediately in Claude Desktop:

"Find books about Swiss education history in the ETH Library." "Search the Max Frisch archive for manuscripts about Zurich."

β†’ More use cases by audience β†’


Configuration

Environment Variables

VariableDescriptionRequired
ETH_LIBRARY_API_KEYAPI key for Discovery & Persons APIβœ…
ETH_LIBRARY_LOG_LEVELLog level (DEBUG/INFO/WARNING/ERROR), default INFOβ€”
ETH_LIBRARY_CORS_ORIGINSComma-separated CORS allow-origins for --http. Empty by default: no browser client is permitted. * allows any origin and is logged as a warning. Does not affect stdio clients.β€”
ETH_LIBRARY_ALLOWED_HOSTSComma-separated hostnames this server is reachable under. Required for a non-loopback bind (--host 0.0.0.0): the process cannot derive its own public name, and without this the SDK answers 421 Invalid Host header to every request. Empty by default; loopback stays reachable either way.β€”

Claude Desktop Configuration

config.json
{
  "mcpServers": {
    "eth-library": {
      "command": "python",
      "args": ["-m", "eth_library_mcp.server"],
      "env": {
        "ETH_LIBRARY_API_KEY": "your_key_here"
      }
    }
  }
}

Config file locations:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Cloud Deployment (SSE for browser access)

For use via claude.ai in the browser (e.g. on managed workstations without local software):

bash
python -m eth_library_mcp.server --http --port 8000

The HTTP transport binds to 127.0.0.1 by default. To expose it on another interface, pass --host explicitly:

bash
# Only behind a reverse-proxy / firewall that terminates TLS and enforces auth.
python -m eth_library_mcp.server --http --host 0.0.0.0 --port 8000

⚠️ Do not bind to 0.0.0.0 without a reverse proxy. The server has no built-in auth, rate-limiting or TLS β€” any LAN neighbour could call your tools.

πŸ’‘ "stdio for the developer laptop, HTTP for the browser β€” behind a proxy."


Available Tools

Discovery API (api.library.ethz.ch)

ToolDescription
eth_search_resourcesFull-text search over 30M+ resources with fields, operators, facets
eth_get_resourceFull metadata for a specific resource via MMS-ID
eth_search_archiveSearch within a specific archive (University Archives, Max Frisch, Thomas Mann, etc.)
eth_search_by_typeFilter by resource type (books, maps, images, archival material, etc.)
eth_search_educationCurated search for education topics (pedagogy, school history, etc.)

Persons API

ToolDescription

Utilities

ToolDescription
eth_library_infoServer overview: all types and archives at a glance

Resources & Prompts

ItemTypeDescription
eth://resource-typesResourceAll available resource types
eth://archivesResourceAll available archives and collections
research-workflowPromptStructured research workflow
education-researchPromptEducation topics workflow (Schulamt-optimised)

Query Syntax

The Discovery API uses structured queries:

Code
field,operator,value
FieldMeaning
anyAll fields (recommended for starters)
titleTitle only
creatorAuthor / creator
subSubject headings / topics
OperatorMeaning
containsTerm is present
exactExact match
begins_withStarts with

Examples:

Code
any,contains,Volksschule ZΓΌrich
title,contains,PΓ€dagogik
creator,exact,Einstein Albert
sub,contains,Bildungsforschung
title,contains,Schule;sub,contains,Geschichte

Available Archives

IdentifierDescription
ETH_HochschularchivInstitutional memory of ETH Zurich
ETH_MaxFrischArchivEstate of Swiss author Max Frisch
ETH_ThomasMannArchivLetters and documents of Thomas Mann
ETH_GraphischeSammlungPrints, drawings, graphic works
ETH_BildarchivScience/technology history, Swissair (E-Pics)

Example Use Cases

QueryTool
"Find books about Zurich school history"eth_search_education
"What's in the Max Frisch archive?"eth_search_archive
"Find historical maps of Switzerland"eth_search_by_type
"Get full metadata for resource ID 991170525863705501"eth_get_resource
"Which archives does the ETH Library hold?"eth_library_info

Project Structure

Code
eth-library-mcp/
β”œβ”€β”€ src/
β”‚   └── eth_library_mcp/
β”‚       β”œβ”€β”€ __init__.py        # Package init, version
β”‚       └── server.py          # FastMCP server, all tools
β”œβ”€β”€ tests/
β”‚   └── test_server.py         # Unit tests
β”œβ”€β”€ CHANGELOG.md
β”œβ”€β”€ CONTRIBUTING.md             # Contribution guide (English)
β”œβ”€β”€ CONTRIBUTING.de.md          # Contribution guide (German)
β”œβ”€β”€ SECURITY.md                 # Security posture (English)
β”œβ”€β”€ SECURITY.de.md              # Security posture (German)
β”œβ”€β”€ LICENSE
β”œβ”€β”€ README.md                  # This file (English)
β”œβ”€β”€ README.de.md               # German version
β”œβ”€β”€ claude_desktop_config.json # Example Claude Desktop configuration
└── pyproject.toml             # Build configuration

MCP Protocol Version

This server speaks two protocol eras over the same endpoint. The client's first request on a connection decides which one applies; a later claim from the other era is refused.

EraRevisionWho reaches it
initialize handshake2024-11-05 … 2025-11-25What today's clients speak. The server answers with the revision asked for, or with the 2025-11-25 ceiling when the request asks for something newer.
Per-request envelope2026-07-28A request carrying the 2026-07-28 _meta envelope opens a modern connection.

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • Open Notebook logoOpen Notebook

    MCP server that wraps the Open Notebook API

    πŸ’» Developer Tools0 views
    Compare vs Open Notebook β†’
  • Ignite UI MCP Server logoIgnite UI MCP Server

    Unified MCP server for Ignite UI β€” documentation, API, and CLI scaffolding

    πŸ’» Developer Tools1 views
    Compare vs Ignite UI MCP Server β†’
  • PraisonAI logoPraisonAI

    AI Agents Framework with Self Reflection and MCP support

    πŸ’» Developer Tools1 views
    Compare vs PraisonAI β†’
  • Labelhead Artist Momentum logoLabelhead Artist Momentum

    Trending hip-hop artist momentum scores across four cultural dimensions.

    πŸ’» Developer Tools0 views
    Compare vs Labelhead Artist Momentum β†’

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Eth Library MCP

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "eth-library-mcp": { "command": "npx", "args": ["-y", "eth-library-mcp"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewEth Library MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/eth-library-mcp?style=directory)](https://allmcps.com/mcp/eth-library-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/eth-library-mcp"><img src="https://allmcps.com/api/badge/eth-library-mcp?style=directory" alt="Eth Library MCP on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’»Developer Tools
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedSep 7, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars1
GitHub Star CountTotal stargazers on GitHub representing community popularity (1 stars).
31Quality signal: Emerging Β· 31/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools12/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’» Developer Tools β†’Best MCP servers for Developers β†’Alternatives to Eth Library MCP β†’Install in Claude DesktopInstall in CursorInstall in VS Code