codefzer/sru-mcp
MCP server for searching library catalogs via the SRU protocol
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.
pip install mcp[cli] httpx xmltodictpython server.pyAdd to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"sru": {
"command": "python",
"args": ["/path/to/sru-mcp/server.py"]
}
}
}| 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 |
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"')| 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 n
Loading reviews...