MCP server for BiblioCommons-powered public libraries — search, place holds, manage your account
Project description
bibliocommons-mcp
MCP server for placing holds, searching, and managing your account at BiblioCommons-powered public libraries.
Install
pipx install bibliocommons-mcp
Requires Python 3.11+.
Quick Start
bibliocommons-mcp init
claude mcp add bibliocommons bibliocommons-mcp --scope user
init walks the prompts, validates live against the gateway, and writes the config file for you. Manual setup: docs/configuration.md. For Claude Desktop, Cursor, or other MCP clients: docs/mcp-clients.md.
Try asking
Place a hold on something at my branch.
Show my current holds with queue positions.
What's due back this week?
Cancel a hold.
Tools
All mutation tools accept a list of IDs/refs — pass [id] for the common single-item case.
| Tool | Description |
|---|---|
search |
Search the catalog, optionally filtered by format |
availability |
Show per-branch status for a bib |
place_hold |
Place physical holds at your pickup branch |
borrow_digital |
Borrow one or more available digital items |
place_digital_hold |
Join the Libby waitlist for unavailable digital items |
list_holds |
Show current holds and queue positions |
ready_for_pickup |
Show only the holds waiting at your branch |
cancel_hold |
Cancel holds (native bulk; one DELETE per call) |
list_loans |
Show checkouts with due dates |
renew_loan |
Renew physical checkouts (native bulk; one PATCH per call) |
check_in_loan |
Return digital checkouts early |
list_branches |
List all branches at your library |
library_health |
Check login and report hold quotas |
Library compatibility
The same gateway serves every BiblioCommons-powered library — see docs/known-libraries.md for what's been verified. If yours isn't listed, file a compatibility report once you try it.
Requirements
- Python 3.11+
- A BiblioCommons library account in good standing (card + PIN)
- The library must run on BiblioCommons (visit
{name}.bibliocommons.comand confirm)
Further reading
docs/architecture.md— gateway client design and API quirksdocs/format-codes.md— format facet codesdocs/troubleshooting.md— common errors and fixesdocs/roadmap.md— what's planned nextdocs/releasing.md— automated release flow
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bibliocommons_mcp-0.4.0.tar.gz.
File metadata
- Download URL: bibliocommons_mcp-0.4.0.tar.gz
- Upload date:
- Size: 762.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6749c91ac1e368c9483a779e01bd4b2b2b6f8988528a62a5d19235a7114022a
|
|
| MD5 |
ad64580d186a3e73dd1376ac9dc9626e
|
|
| BLAKE2b-256 |
38353085e82672500c75757a8076b3d8305df1867d1aa34ca8fcdb8d22a147df
|
Provenance
The following attestation bundles were made for bibliocommons_mcp-0.4.0.tar.gz:
Publisher:
publish.yml on pdugan20/bibliocommons-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bibliocommons_mcp-0.4.0.tar.gz -
Subject digest:
e6749c91ac1e368c9483a779e01bd4b2b2b6f8988528a62a5d19235a7114022a - Sigstore transparency entry: 1650732616
- Sigstore integration time:
-
Permalink:
pdugan20/bibliocommons-mcp@89b0a2d4e3c39015722d4c5f144518a73d941bb7 -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/pdugan20
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@89b0a2d4e3c39015722d4c5f144518a73d941bb7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file bibliocommons_mcp-0.4.0-py3-none-any.whl.
File metadata
- Download URL: bibliocommons_mcp-0.4.0-py3-none-any.whl
- Upload date:
- Size: 460.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fae01d70a534d35e001216311edcad8beecb116b7ce441d41ddd7724a29391fa
|
|
| MD5 |
86036d4713fafac9bb571127950092c5
|
|
| BLAKE2b-256 |
03fb5e248df4c1e34b36fdd5e4009862c9b8ba235f58c71eed68f393b81e2271
|
Provenance
The following attestation bundles were made for bibliocommons_mcp-0.4.0-py3-none-any.whl:
Publisher:
publish.yml on pdugan20/bibliocommons-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bibliocommons_mcp-0.4.0-py3-none-any.whl -
Subject digest:
fae01d70a534d35e001216311edcad8beecb116b7ce441d41ddd7724a29391fa - Sigstore transparency entry: 1650732639
- Sigstore integration time:
-
Permalink:
pdugan20/bibliocommons-mcp@89b0a2d4e3c39015722d4c5f144518a73d941bb7 -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/pdugan20
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@89b0a2d4e3c39015722d4c5f144518a73d941bb7 -
Trigger Event:
push
-
Statement type: