Skip to main content
Glama

list_records

Retrieve records from a PocketBase collection with filtering, sorting, field selection, relation expansion, and pagination controls.

Instructions

List records in a collection with filtering, sorting, and pagination.

Input Schema

NameRequiredDescriptionDefault
pageNoThe page number to return. Defaults to 1.
sortNoSort expression (e.g. '-created', '+title').
expandNoComma-separated list of relations to expand (e.g. 'author,tags').
fieldsNoComma-separated list of fields to return (e.g. 'id,title,created').
filterNoPocketBase filter expression (e.g. "status = 'published'").
per_pageNoNumber of records per page. Defaults to 30.
collectionYesThe collection name or ID.
skip_totalNoIf true, skip the total counts query for faster responses.

Output Schema

NameRequiredDescriptionDefault
pageYes
itemsYes
perPageYes
totalItemsYes
totalPagesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden, and it only discloses that pagination exists. It does not state that this is a read-only operation, whether collection access rules or auth apply, how results are ordered by default, or the cost implications of the total-count query that skip_total hints at. An output schema exists, so return-value explanation is not required.

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?

A single front-loaded sentence with no filler, and the core capability set appears immediately. It is efficient, though the brevity borders on under-specification for an eight-parameter tool.

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

Completeness3/5

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

With 100% schema coverage and an output schema, the structural load is already carried elsewhere, so the short description is not fatal. However, for an eight-parameter list tool with no annotations, it says nothing about access control, default ordering, or the performance tradeoff behind skip_total, leaving gaps an agent would want filled.

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%, so all eight parameters, including the PocketBase filter syntax, sort expression format, expand, fields, and skip_total, are already documented in the schema. The description's 'filtering, sorting, and pagination' merely summarizes a subset of those parameters and adds no semantics beyond the schema, so the baseline 3 applies.

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 sentence gives a specific verb ('List') and resource ('records in a collection') and names the three capabilities (filtering, sorting, pagination), which is enough to distinguish it from get_record and create_record. It stops short of explicitly contrasting with siblings like list_collections, so it is clear but not fully differentiated.

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?

Enumeration is implicitly the use case, but there is no explicit 'use this when...' statement, no mention of when to prefer get_record for a single item, and no prerequisites such as collection permissions or auth requirements. The agent must infer the routing from the tool name.

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