{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.smeet666/mcp-books","description":"Search the Internet Archive and the Library of Congress at once, inside scanned text.","repository":{"url":"https://github.com/smeet666/mcp-books","source":"github"},"version":"1.0.0","websiteUrl":"https://github.com/smeet666/mcp-books#readme","icons":[{"src":"https://raw.githubusercontent.com/smeet666/mcp-books/main/assets/icon-128.png","mimeType":"image/png","sizes":["128x128"]},{"src":"https://raw.githubusercontent.com/smeet666/mcp-books/main/assets/icon-512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"npm","identifier":"mcp-books","version":"1.0.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Identify your own client. The project's own identifier is appended, so an archive can always reach a human.","name":"BOOKS_USER_AGENT"},{"description":"Widen the gap between two requests to one archive. Each archive keeps its own spacing when this is unset, and this can only make it wider.","name":"BOOKS_MIN_INTERVAL_MS"},{"description":"Deadline for one request to an archive, in milliseconds. Default 45000.","name":"BOOKS_TIMEOUT_MS"},{"description":"Retries on rate limiting and transient failures. Default 3.","name":"BOOKS_MAX_RETRIES"},{"description":"In-memory cache lifetime, in milliseconds. Default 900000. Set 0 to turn it off.","name":"BOOKS_CACHE_TTL_MS"},{"description":"In-memory cache size. Default 200.","name":"BOOKS_CACHE_MAX_ENTRIES"},{"description":"silent, error, info or debug. Default error. Logs go to stderr.","name":"BOOKS_LOG_LEVEL"}]},{"registryType":"mcpb","identifier":"https://github.com/smeet666/mcp-books/releases/download/v1.0.0/mcp-books-1.0.0.mcpb","version":"1.0.0","fileSha256":"8115f431074c32fcbf81aeefcafd9247792323929c6ed44afe93ab68c01f7768","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-07T22:21:18.157559Z","publishedAt":"2026-08-07T22:21:18.157559Z","updatedAt":"2026-08-07T22:21:18.157559Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.smeet666/mcp-books","description":"Search the Internet Archive, the Library of Congress and data.bnf.fr at once, in one answer.","repository":{"url":"https://github.com/smeet666/mcp-books","source":"github"},"version":"1.1.0","websiteUrl":"https://github.com/smeet666/mcp-books#readme","icons":[{"src":"https://raw.githubusercontent.com/smeet666/mcp-books/main/assets/icon-128.png","mimeType":"image/png","sizes":["128x128"]},{"src":"https://raw.githubusercontent.com/smeet666/mcp-books/main/assets/icon-512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"npm","identifier":"mcp-books","version":"1.1.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Identify your own client. The project's own identifier is appended, so an archive can always reach a human.","name":"BOOKS_USER_AGENT"},{"description":"Widen the gap between two requests to one archive. Each archive keeps its own spacing when this is unset, and this can only make it wider.","name":"BOOKS_MIN_INTERVAL_MS"},{"description":"Deadline for one request to an archive, in milliseconds. Default 45000.","name":"BOOKS_TIMEOUT_MS"},{"description":"Retries on rate limiting and transient failures. Default 3.","name":"BOOKS_MAX_RETRIES"},{"description":"In-memory cache lifetime, in milliseconds. Default 900000. Set 0 to turn it off.","name":"BOOKS_CACHE_TTL_MS"},{"description":"In-memory cache size. Default 200.","name":"BOOKS_CACHE_MAX_ENTRIES"},{"description":"silent, error, info or debug. Default error. Logs go to stderr.","name":"BOOKS_LOG_LEVEL"}]},{"registryType":"mcpb","identifier":"https://github.com/smeet666/mcp-books/releases/download/v1.1.0/mcp-books-1.1.0.mcpb","version":"1.1.0","fileSha256":"cf5ad247905f8e2457216f2117d9e957cf10adb0135c420a2ce5e95822697ce3","transport":{"type":"stdio"}}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-08T18:40:17.501811Z","publishedAt":"2026-08-08T18:40:17.501811Z","updatedAt":"2026-08-08T18:40:17.501811Z","isLatest":true}}}],"metadata":{"count":2}}
