Sru
БесплатноНе проверенAn MCP server that searches library catalogs worldwide using the SRU protocol, enabling bibliographic search without API keys.
Описание
An MCP server that searches library catalogs worldwide using the SRU protocol, enabling bibliographic search without API keys.
README
An MCP server that searches library catalogs worldwide using the SRU (Search/Retrieve via URL) protocol. No API keys required — SRU is an open standard supported by national libraries, university catalogs, and consortia.
Features
- 5 tools for LLM-driven bibliographic search
- 7 pre-configured servers including Library of Congress, BnF, DNB, and more
- Parses MARCXML and Dublin Core record formats
- Supports any SRU-compliant server — pass a URL or use a built-in server ID
- Raw CQL queries or high-level field-based search (title, author, ISBN, subject, etc.)
Quick Start
Install
pip install mcp[cli] httpx xmltodict
Run
python server.py
Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"sru": {
"command": "python",
"args": ["/path/to/sru-mcp/server.py"]
}
}
}
Tools
| Tool | Description |
|---|---|
sru_list_servers |
List all pre-configured library catalog servers |
sru_explain |
Get a server's capabilities, supported schemas, and indexes |
sru_list_indexes |
List available search indexes on a server |
sru_search |
Execute a raw CQL query |
sru_search_books |
Search by title, author, ISBN, subject, publisher, year, or keyword |
Example Usage
Search the Library of Congress for books by Melville:
sru_search_books(server="loc", author="Melville", title="Moby Dick")
Search the French national library with a raw CQL query:
sru_search(server="bnf", cql_query='dc.title = "Les Misérables"')
Pre-configured Servers
| ID | Name | Notes |
|---|---|---|
loc |
Library of Congress | US national catalog |
loc-names |
LC Name Authority | Personal and corporate names |
loc-subjects |
LC Subject Authority | Subject headings and genre terms |
bnf |
Bibliothèque nationale de France | French national library |
dnb |
Deutsche Nationalbibliothek | German national library |
kb |
Koninklijke Bibliotheek | Netherlands national library |
bibsys |
BIBSYS | Norwegian academic libraries |
To add a server, edit servers.json.
Development
# Install dev dependencies
pip install pytest pytest-asyncio respx
# Run tests
python3 -m pytest test_sru.py test_server.py -v
# Test with MCP Inspector
npx @modelcontextprotocol/inspector python server.py
Project Structure
server.py FastMCP server — tool definitions
sru.py SRU protocol client — HTTP, parsing, formatting
servers.json Server registry
test_sru.py Tests for sru.py (92 tests total)
test_server.py Tests for server.py
License
MIT
Установка Sru
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/codefzer/sru-mcpFAQ
Sru MCP бесплатный?
Да, Sru MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Sru?
Нет, Sru работает без API-ключей и переменных окружения.
Sru — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Sru в Claude Desktop, Claude Code или Cursor?
Открой Sru на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Sru with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
