Skip to main content
Glama

Vtiger MCP by usefulapi

List or search records

vtiger_list_records
Read-only

Records of one module, optionally filtered (all filters AND-ed), sorted and paged. Builds a SELECT for GET /query. The vendor returns at most 100 records per call; pass next_offset as offset for the next page. Name the fields you need: a full record has 100+ fields.

Input Schema

NameRequiredDescriptionDefault
limitNoRecords per page, 1-100 (default 20).
fieldsNoFields to return (default all). Example: ["id","firstname","lastname","email"].
moduleYesModule name, for example Contacts, Accounts, Leads, Potentials (deals), Cases, Calendar (tasks and events). Names come from vtiger_list_modules.
offsetNoRecords to skip (default 0). Use next_offset from the previous reply.
filtersNoConditions combined with AND. Example: [{field:'leadstatus',op:'=',value:'Hot'},{field:'lastname',op:'like',value:'Sm%'}].
order_byNoField to sort by (default id).
descendingNoSort descending (default false).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Adds real context beyond readOnlyHint=true: the vendor caps results at 100 per call, next_offset should be fed back as offset, and full records carry 100+ fields so callers should name fields. These are operational traits the annotations do not cover. It does not mention rate limits or error 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.

Conciseness4/5

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

Three compact sentences, each carrying information: scope first, then pagination mechanics, then the field-selection warning. The 'builds a SELECT for GET /query' clause is implementation detail but is short enough to justify itself for debugging.

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?

There is no output schema, and the description still covers what an agent needs: pagination cap and continuation, the AND semantics of filters, and the cost of omitting fields. Combined with a fully documented schema and a read-only annotation, nothing essential 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 description coverage is 100%, so the schema already documents limit, fields, offset, filters, order_by and descending, including the AND-combination example. The description largely restates this ('all filters AND-ed', 'pass next_offset as offset') and only adds the practical advice to name fields rather than request everything.

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?

Opens with a specific verb+resource: records of one module, optionally filtered/sorted/paged, and notes it builds a SELECT for GET /query. It is clear what the tool does, but it does not explicitly contrast itself with the sibling vtiger_query (raw query) or vtiger_lookup, which an agent would need to choose between.

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 only implied: 'Records of one module, optionally filtered' tells the agent this is the general listing path, but there is no explicit when-to-use / when-not-to-use guidance and no named alternative such as vtiger_query or vtiger_count_records. The agent must infer routing from sibling names alone.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.