Skip to main content
Glama
adama007

testlink-mcp-server

by adama007

list_custom_fields_for_project

Probe candidate custom field names against a representative test case to discover which fields are populated for a TestLink project. Returns only fields with non-empty values.

Instructions

Best-effort custom field discovery. TestLink's XML-RPC API has NO endpoint to enumerate custom field definitions for a project — only to read a named field's value on a specific test case. Supply a representative test case plus a list of candidate field names (visible in TestLink Admin > Custom Fields) and this probes each one, returning only the fields that resolved to a non-empty value for that test case.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
versionYes
testProjectIdYes
testCaseExternalIdYesA representative test case in the target project.
candidateFieldNamesYesField names to probe, e.g. from the admin UI.
Behavior4/5

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

With no annotations provided, the description carries the behavioral disclosure burden. It reveals the best-effort nature, the probing mechanism (multiple calls per candidate), and the filtering behavior (only fields with non-empty values are returned). It also discloses the API limitation. Missing details like permissions, error handling, and performance impact, but core behavior is transparent.

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

Conciseness5/5

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

The description is three sentences, each delivering essential information: the overall goal, the API context and limitation, and the required inputs/behavior. There is no fluff or redundancy. It is front-loaded with the tool's purpose and provides all necessary guidance in a compact form.

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?

The description explains the workaround nature, input requirements, and return filtering (only non-empty values). Since there is no output schema, this suffices to set expectations. It doesn't cover error handling or what happens if no fields match, but for a discovery tool with no annotations, the provided context is largely complete.

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

Parameters4/5

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

The description adds meaningful context beyond the schema: it explains that testCaseExternalId is a 'representative test case' and that candidateFieldNames come from the admin UI. With 50% schema coverage, this compensates for missing descriptions. It doesn't detail version and testProjectId, but they are self-explanatory from names.

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 clearly states the tool's purpose as custom field discovery via probing, and distinguishes it from the sibling get_custom_field_value by explaining the API's limitation (no enumeration endpoint, only reading named field values on a test case). It specifies the resource (custom fields for a project) and the action (list/discover), making it unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool: when needing to discover custom field definitions for a project, given the API limitation. It also describes preconditions (a representative test case and candidate field names). However, it does not explicitly name alternatives or exclusions, so it doesn't fully meet the 'explicit when/when-not' standard.

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/adama007/MCP-TESTLINK'

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