Skip to main content
Glama
itmplatform

ITM Platform MCP Server

Official

get_custom_fields

Retrieve custom field definitions for ITM Platform entities (project, task, risk, issue, service, activity, purchase, revenue) to identify names, types, and requirements for DataMart queries.

Instructions

Get the account's custom field definitions for an entity type: project, task, risk, issue, service, activity, purchase, or revenue. Returns Id, BaseId, Name, TypeId, TypeName (Text, Number, Percentage, Date, HTML, RYGList, DropDownList, List), Description, Required.

VALUES live in DataMart under "customFields", keyed by the display Name exactly as returned here (case- and accent-sensitive, may contain trailing spaces). Query via query_datamart, e.g. project {"customFields": 1} or where {"customFields.": ...}. On multilingual accounts the key follows each component's language; fetch definitions per languageId to learn the variant names of the same BaseId. Dropdown values: get_custom_field_options.

Input Schema

NameRequiredDescriptionDefault
entityYesThe entity type whose custom field definitions to retrieve
languageIdNoLanguage: 1=English, 2=Spanish, 3=Portuguese (default: your user language)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it enumerates the returned fields, warns that DataMart keys are case- and accent-sensitive and may carry trailing spaces, and explains multilingual keying per languageId. It omits permissions/pagination/refresh behavior, but for a read-only definition lookup this is substantial context.

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?

Front-loads the purpose, then return shape, then the non-obvious DataMart key semantics, then sibling routing — a sensible information order. Slight redundancy in re-listing the eight entity types already encoded in the enum, and the trailing-spaces warning is dense but earns its place.

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?

There is no output schema, so the description compensates by listing the returned fields (Id, BaseId, Name, TypeId, TypeName, Description, Required). Combined with the DataMart key guidance and the sibling pointer, an agent has enough to call it and use the result correctly; only auth/pagination behavior is unstated.

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?

Schema coverage is 100%, so baseline is 3, but the description adds real meaning for languageId: on multilingual accounts key names follow each component's language and definitions must be fetched per languageId to map variants of the same BaseId. The entity list merely restates the enum and adds no new meaning.

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?

States a specific verb (get) and resource (custom field definitions) plus the exact entity scope covered. It also distinguishes itself from the closely named sibling get_custom_field_options, so an agent can route without opening both schemas.

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?

Gives concrete downstream routing: query values via query_datamart with examples of the filter shape, and use get_custom_field_options for dropdown values. It lacks an explicit negative case (e.g. versus get_reference_data), but the positive guidance is unusually actionable.

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