Skip to main content
Glama

List contacts

nextcloud_list_contacts
Read-onlyIdempotent

Lists contacts from a specified Nextcloud address book using its URL, enabling contact lookup, syncing, and address-book management.

Instructions

List contacts in address book.

Input Schema

NameRequiredDescriptionDefault
address_book_urlYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.3.4

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so safety is covered. The description adds essentially no behavioral context beyond restating the operation, such as pagination, return shape, or authentication needs.

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

Conciseness4/5

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

The description is a single front-loaded sentence with no wasted words. It is efficient, though it is arguably too terse given the undocumented required URL parameter.

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

Completeness2/5

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

For a tool with one required, undocumented parameter and no output schema, the description leaves important context missing: how to obtain address_book_url and what the listing returns or how it is scoped. Annotations cover safety but not invocation completeness.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the single required parameter. It only implies that an address book is involved and never explains the expected address_book_url format or where to get it.

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

Purpose4/5

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

The description states a specific verb and resource: listing contacts within an address book. It clearly differs from siblings like nextcloud_list_address_books or nextcloud_create_contact, though it does not explicitly call out those distinctions.

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

Usage Guidelines3/5

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

Usage is implied by 'in address book': the agent knows it must target a specific address book, but there is no explicit guidance on when to use this versus nextcloud_list_address_books or how to obtain the required address_book_url.

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