Skip to main content
Glama
LibreDesk MCP

LibreDesk MCP

by Passe12345

get_contacts

Retrieve and filter LibreDesk contacts with pagination and sorting to locate customer records and review contact details.

Instructions

Get Contacts Requires the contacts:read_all permission. GET /api/v1/contacts Tags: Contacts

Input Schema

NameRequiredDescriptionDefault
pageNoPage number (defaults to 1) (query parameter)
orderNoSort direction (case-insensitive). Used only with `order_by`, defaults to ascending. (query parameter)
filtersNoJSON-encoded filter. Either an array of conditions that are AND-ed, e.g. `[{"model":"conversations","field":"status_id","operator":"equals","value":"1"}]`, or a group `{"logic":"AND","rules":[...]}` with at most one level of nested groups. Operators: `equals`, `not equals`, `greater than`, `less than`, `set`, `not set`, `in`, `between`, `contains`, `ilike`, `not contains`. Filterable fields: `users` (email, created_at, updated_at). (query parameter)
order_byNoField to sort by, as `model.field`. Results are unordered when omitted. (query parameter)
page_sizeNoNumber of items per page (defaults to 30, max 500) (query parameter)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

C2.9/5.0
Behavior3/5

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

With no annotations supplied, the description carries the full behavioral burden and does add one genuinely useful fact: the required `contacts:read_all` permission scope. It stops there, saying nothing about read-only semantics, rate limits, result size, or pagination behavior beyond what the schema already encodes.

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?

Very short and front-loaded, with the permission requirement placed early. The trailing "Tags: Contacts" line is metadata noise that does not help an agent decide or call.

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?

For a five-parameter list tool with no output schema and no annotations, the definition is thin: it never states what a contact record looks like or whether results are paginated beyond the page parameters. The permission note is the only substantive addition beyond the schema.

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 description coverage is 100%, so page, page_size, order, order_by and the JSON filters parameter are all fully documented in the schema itself. The description adds no parameter meaning at all, which is acceptable only because the schema does the heavy lifting.

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

Purpose3/5

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

The description names a verb and resource ("Get Contacts") and confirms it via the endpoint GET /api/v1/contacts, so an agent can tell this is a read/list operation. However, it never distinguishes itself from siblings like search_contacts or get_contact, leaving the exact scope (full list vs. single record vs. filtered search) to inference.

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

Usage Guidelines2/5

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

There is no when-to-use guidance and no mention of any alternative tool. The agent must guess whether to call this or search_contacts when looking for a specific contact.

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

Deploy Server

Other Tools