LibraryMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SECRET_KEY | Yes | Secret key used for JWT token signing | |
| BACKEND_URL | Yes | URL of the FastAPI backend, e.g., http://localhost:8000 | |
| ADMIN_PASSWORD | Yes | Admin password for JWT authentication | |
| ADMIN_USERNAME | Yes | Admin username for JWT authentication |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_booksA | Searches for books in the library by title, author, or genre. Returns matching books with their availability status. |
| get_bookB | Retrieves full details of a single book by its ID. |
| add_bookC | Adds a new book to the library catalog. ISBN must be unique. |
| update_bookA | Updates book metadata or copy count by book ID. Only provided fields are updated. |
| delete_bookA | Removes a book from the catalog by book ID. Fails if the book has active loans. |
| list_membersA | Lists all library members with optional filters by name, email, or active status. |
| register_memberA | Registers a new library member with a name and email address. Email must be unique. |
| get_memberA | Retrieves a member's profile, loan history, and outstanding fines by member ID. |
| delete_memberA | Deletes a member account by member ID. Fails if the member has active loans or unpaid fines. |
| borrow_bookA | Borrows a book for a member, creating a loan record. Fails if the book has no available copies or the member already has an active loan for it. |
| return_bookA | Returns a borrowed book for a member, closing the loan and calculating any overdue fines ($0.50/day). Fails if no active loan exists for the member and book. |
| get_loansA | Lists all active (not yet returned) loans for a member by member ID. |
| check_finesA | Returns the total outstanding fines for a member, including overdue active loans and unpaid fines from returned books. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Most tools have clearly distinct purposes: book catalog, member management, loans, and fines form separate clusters. The main overlap is that get_member includes loan history and outstanding fines, which also have dedicated tools, but the descriptions are clear enough to avoid serious confusion.
All tools follow a consistent verb_noun snake_case pattern, such as get_book, update_book, borrow_book, and list_members. There are no mixed conventions or vague generic verbs, making the API predictable.
13 tools is well-scoped for a library management domain, covering books, members, loans, and fines without excessive granularity. Each tool represents a meaningful operation that earns its place in the set.
Book catalog coverage is solid, and borrow/return/fine-check workflows are present. However, there is no update_member tool, and fines can only be checked, never paid or cleared, leaving an unresolved state for members with unpaid fines.