Skip to main content
Glama

find_libraries

Read-only

Search for Libby-participating libraries by name, city, or postal code and return their keys; confirm the correct match before using a key.

Instructions

Find libraries that use Libby by name, city or postal code, and return their keys.

Several libraries can match (branches, consortia, special collections); confirm the right one with the user before using its key.

Input Schema

NameRequiredDescriptionDefault
queryYesLibrary name, city or postal code.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so safety is covered. The description adds genuinely useful behavior beyond that: results may be ambiguous because branches, consortia, and special collections all match, and a user confirmation step is required before consuming the key. It omits ranking or result-count behavior, keeping it below a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the action and return value, followed by the ambiguity warning. Nothing is redundant or padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read tool with a full output schema and existing annotations, the description covers the only real risk: ambiguous matches requiring user confirmation before the key is used downstream. No essential calling information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single query parameter is already documented as 'Library name, city or postal code.' The description restates that same set without adding format details such as the two-character minimum or fuzzy-match behavior, so it stays at the baseline for schema-documented params.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (find libraries), the matching criteria (name, city, postal code), and what is returned (keys). No sibling tool in the list performs library resolution, so the tool is unambiguous against search_titles, get_availability, connect_account, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear operational guidance: multiple libraries can match, and the agent should confirm the correct one with the user before using its key. It does not explicitly state prerequisites or when-not-to-use (e.g., when a key is already known), so it stops short of full when/when-not routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.