Skip to main content
Glama

List Relations

hudu_list_relations
Read-onlyIdempotent

List every relation in Hudu to read exact fromable_type/toable_type strings. Pages through all records; each link appears twice with is_inverse marking mirror. No filters, so use for inspecting before creating relations.

Instructions

List relations in Hudu. A relation is a link between any two Hudu records — an asset to the password that opens it, an article to the company it documents — stored as a from/to pair of type-and-id. Hudu exposes no update route for relations, so changing one means deleting it and creating a replacement.

This endpoint takes no filters whatsoever — not by record, not by type, not by company. Finding the relations on one asset therefore means paging through the whole set and matching fromable_type/fromable_id (or the toable_ pair) yourself. Expect to see each link twice: creating a relation also creates its mirror in the opposite direction, and is_inverse: true marks the mirror copy. Use this list to read the exact fromable_type/toable_type strings your instance uses before creating one.

Returns an object with items plus pagination facts. Note that the Hudu API returns no total count for any collection, so page_was_full is the only honest signal that more records exist — read pagination_note before concluding a list is complete.

Operation class: Read.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page number. Hudu has no cursor or offset — only pages.
fieldsNoReturn only these top-level fields on each record. Use it to keep large lists small — e.g. ["id","name","company_id"]. Unknown field names are ignored.
page_sizeNoRecords per page (1-100, default 25). Hudu publishes no maximum, so this client clamps at 100; larger values are rejected here rather than silently altered by the server.
response_formatNoOutput shape. 'json' (default) is compact and machine-readable; 'markdown' is easier for a person to read but larger.json
Behavior5/5

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

Beyond the annotations (readOnlyHint, idempotentHint, openWorldHint, destructiveHint), the description reveals important behaviors: mirror entries with `is_inverse: true`, no total count, `page_was_full` as the only completion signal, and the endpoint's lack of filters. It also warns about pagination nuance. No contradiction with annotations is present.

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 front-loaded with a clear purpose, then efficiently covers limitations, mirror behavior, and pagination caveats. Each sentence delivers useful information, though it is somewhat longer than strictly necessary. The structure is logical and aids consumption.

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

Completeness4/5

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

Given the absence of an output schema, the description adequately explains the return shape ('object with items plus pagination facts') and the key nuance of no total count with `page_was_full`. It also documents the from/to pair structure and inverse flag. It is complete enough for the tool's moderate complexity, though a few response field names (e.g., exact pagination keys) are left vague.

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?

The schema covers all four parameters (page, fields, page_size, response_format) with detailed descriptions, so the baseline is 3. The description adds minimal parameter-specific meaning; it only indirectly references pagination behavior and filter absence. It does not improve on the schema's already strong semantic coverage.

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?

The description opens with a specific verb and resource, 'List relations in Hudu', and immediately defines what a relation is ('a link between any two Hudu records'). This distinguishes it clearly from sibling list tools (e.g., hudu_list_assets) and from hudu_create_relation, making the tool's purpose unambiguous.

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

Usage Guidelines5/5

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

The description provides explicit usage guidance: 'Use this list to read the exact fromable_type/toable_type strings your instance uses before creating one.' It also explains when not to expect filtering ('takes no filters whatsoever') and describes the manual paging approach, plus the no-update alternative of deleting and creating a replacement. This gives concrete when/when-not direction.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ZenixSolutions/hudu-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server