Skip to main content
Glama

Lovie Company Formation

Get Categorization Rule

transaction_get_categorization_rule
Read-only

Read one transaction categorization rule by id: which merchants, amounts or directions it matches, the Category or chart-of-accounts account matching transactions are booked to, its priority in the evaluation order, its status and posting, its version, and its health (applied_count, last_applied_at, correction_count, dead, clean_bookings_in_window of track_record_window). Read-only.

Input Schema

NameRequiredDescriptionDefault
ruleIdYesUUID value wrapper.
companyIdYesUUID value wrapper.

Output Schema

NameRequiredDescriptionDefault
ruleNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / rule / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "actionType": {
      -        "enum": [
      -          "RULE_ACTION_TYPE_UNSPECIFIED",
      -          "RULE_ACTION_TYPE_BOOK",
      -          "RULE_ACTION_TYPE_EXCLUDE",
      -          "RULE_ACTION_TYPE_SPLIT"
      -        ],
      -        "type": "string"
      -      },
      -      "actions": {
      -        "items": {
      -          "properties": {
      -            "fieldCode": {
      -              "type": "string"
      -            },
      -            "optionPath": {
      -              "type": "string"
      -            },
      -            "target": {
      -              "enum": [
      -                "RULE_ACTION_TARGET_UNSPECIFIED",
      -                "RULE_ACTION_TARGET_COUNTERPARTY",
      -                "RULE_ACTION_TARGET_TRANSACTION"
      -              ],
      -              "type": "string"
      -            }
      -          },
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "amountMax": {
      -        "type": "string"
      -      },
      -      "amountMin": {
      -        "type": "string"
      -      },
      -      "appliedCount": {
      -        "type": "integer"
      -      },
      -      "appliedThisMonth": {
      -        "type": "integer"
      -      },
      -      "approvedAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "approvedBy": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "autoAccept": {
      -        "type": "boolean"
      -      },
      -      "autoPostConsentedAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "autoPostMaxAmount": {
      -        "type": "string"
      -      },
      -      "cleanBookingsInWindow": {
      -        "type": "integer"
      -      },
      -      "companyId": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "conditions": {
      -        "items": {
      -          "properties": {
      -            "amountMax": {
      -              "type": "string"
      -            },
      -            "amountMin": {
      -              "type": "string"
      -            },
      -            "group": {
      -              "type": "integer"
      -            },
      -            "kind": {
      -              "enum": [
      -                "RULE_CONDITION_KIND_UNSPECIFIED",
      -                "RULE_CONDITION_KIND_COUNTERPARTY",
      -                "RULE_CONDITION_KIND_NAME_CONTAINS",
      -                "RULE_CONDITION_KIND_DESCRIPTOR_REGEX",
      -                "RULE_CONDITION_KIND_MERCHANT_REGEX",
      -                "RULE_CONDITION_KIND_MCC",
      -                "RULE_CONDITION_KIND_PROVIDER",
      -                "RULE_CONDITION_KIND_ACCOUNT_ID",
      -                "RULE_CONDITION_KIND_CURRENCY",
      -                "RULE_CONDITION_KIND_AMOUNT_RANGE",
      -                "RULE_CONDITION_KIND_DIRECTION",
      -                "RULE_CONDITION_KIND_CARD",
      -                "RULE_CONDITION_KIND_TEAM_MEMBER",
      -                "RULE_CONDITION_KIND_CATEGORY",
      -                "RULE_CONDITION_KIND_ALL"
      -              ],
      -              "type": "string"
      -            },
      -            "negate": {
      -              "type": "boolean"
      -            },
      -            "reviewStatus": {
      -              "enum": [
      -                "RULE_CONDITION_REVIEW_STATUS_UNSPECIFIED",
      -                "RULE_CONDITION_REVIEW_STATUS_APPROVED",
      -                "RULE_CONDITION_REVIEW_STATUS_IN_REVIEW"
      -              ],
      -              "type": "string"
      -            },
      -            "textValue": {
      -              "type": "string"
      -            },
      -            "uuidValue": {
      -              "type": "string"
      -            }
      -          },
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "correctionCount": {
      -        "type": "integer"
      -      },
      -      "counterpartyId": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "createdAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "dead": {
      -        "type": "boolean"
      -      },
      -      "direction": {
      -        "enum": [
      -          "RULE_DIRECTION_UNSPECIFIED",
      -          "RULE_DIRECTION_MONEY_IN",
      -          "RULE_DIRECTION_MONEY_OUT"
      -        ],
      -        "type": "string"
      -      },
      -      "glAccountPath": {
      -        "type": "string"
      -      },
      -      "id": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "isActive": {
      -        "type": "boolean"
      -      },
      -      "lastAppliedAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "name": {
      -        "anyOf": [
      -          {
      -            "description": "Human-readable name (1-255 Unicode chars).",
      -            "properties": {
      -              "value": {
      -                "maxLength": 255,
      -                "minLength": 1,
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "nameContains": {
      -        "type": "string"
      -      },
      -      "origin": {
      -        "enum": [
      -          "RULE_ORIGIN_UNSPECIFIED",
      -          "RULE_ORIGIN_USER",
      -          "RULE_ORIGIN_AI",
      -          "RULE_ORIGIN_PLATFORM",
      -          "RULE_ORIGIN_HABIT"
      -        ],
      -        "type": "string"
      -      },
      -      "posting": {
      -        "enum": [
      -          "RULE_POSTING_UNSPECIFIED",
      -          "RULE_POSTING_REVIEW",
      -          "RULE_POSTING_AUTO_POST"
      -        ],
      -        "type": "string"
      -      },
      -      "priority": {
      -        "type": "integer"
      -      },
      -      "proposalId": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "ruleCode": {
      -        "type": "string"
      -      },
      -      "splitLines": {
      -        "items": {
      -          "properties": {
      -            "glAccountPath": {
      -              "type": "string"
      -            },
      -            "isRemainder": {
      -              "type": "boolean"
      -            },
      -            "position": {
      -              "type": "integer"
      -            },
      -            "splitAmount": {
      -              "type": "string"
      -            },
      -            "splitPercent": {
      -              "type": "string"
      -            }
      -          },
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "status": {
      -        "enum": [
      -          "RULE_STATUS_UNSPECIFIED",
      -          "RULE_STATUS_DRAFT",
      -          "RULE_STATUS_ACTIVE",
      -          "RULE_STATUS_PAUSED",
      -          "RULE_STATUS_SUPERSEDED",
      -          "RULE_STATUS_REJECTED"
      -        ],
      -        "type": "string"
      -      },
      -      "trackRecordWindow": {
      -        "type": "integer"
      -      },
      -      "updatedAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "version": {
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "companyId",
      -      "name"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "actionType": {
      +        "enum": [
      +          "RULE_ACTION_TYPE_UNSPECIFIED",
      +          "RULE_ACTION_TYPE_BOOK",
      +          "RULE_ACTION_TYPE_EXCLUDE",
      +          "RULE_ACTION_TYPE_SPLIT"
      +        ],
      +        "type": "string"
      +      },
      +      "actions": {
      +        "items": {
      +          "properties": {
      +            "fieldCode": {
      +              "type": "string"
      +            },
      +            "optionPath": {
      +              "type": "string"
      +            },
      +            "target": {
      +              "enum": [
      +                "RULE_ACTION_TARGET_UNSPECIFIED",
      +                "RULE_ACTION_TARGET_COUNTERPARTY",
      +                "RULE_ACTION_TARGET_TRANSACTION"
      +              ],
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "amountMax": {
      +        "type": "string"
      +      },
      +      "amountMin": {
      +        "type": "string"
      +      },
      +      "appliedCount": {
      +        "type": "integer"
      +      },
      +      "appliedThisMonth": {
      +        "type": "integer"
      +      },
      +      "approvedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "approvedBy": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "autoAccept": {
      +        "type": "boolean"
      +      },
      +      "autoPostConsentedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "autoPostMaxAmount": {
      +        "type": "string"
      +      },
      +      "category": {
      +        "anyOf": [
      +          {
      +            "properties": {
      +              "key": {
      +                "anyOf": [
      +                  {
      +                    "description": "Lowercase kebab-case code identifier.",
      +                    "properties": {
      +                      "value": {
      +                        "pattern": "^[a-z0-9]+(-[a-z0-9]+)*$",
      +                        "type": "string"
      +                      }
      +                    },
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "ownerKey": {
      +                "type": "string"
      +              },
      +              "ownerType": {
      +                "enum": [
      +                  "OWNER_TYPE_UNSPECIFIED",
      +                  "OWNER_TYPE_SYSTEM",
      +                  "OWNER_TYPE_COMPANY",
      +                  "OWNER_TYPE_INTEGRATION"
      +                ],
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "key"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "cleanBookingsInWindow": {
      +        "type": "integer"
      +      },
      +      "companyId": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "conditions": {
      +        "items": {
      +          "properties": {
      +            "amountMax": {
      +              "type": "string"
      +            },
      +            "amountMin": {
      +              "type": "string"
      +            },
      +            "group": {
      +              "type": "integer"
      +            },
      +            "kind": {
      +              "enum": [
      +                "RULE_CONDITION_KIND_UNSPECIFIED",
      +                "RULE_CONDITION_KIND_COUNTERPARTY",
      +                "RULE_CONDITION_KIND_NAME_CONTAINS",
      +                "RULE_CONDITION_KIND_DESCRIPTOR_REGEX",
      +                "RULE_CONDITION_KIND_MERCHANT_REGEX",
      +                "RULE_CONDITION_KIND_MCC",
      +                "RULE_CONDITION_KIND_PROVIDER",
      +                "RULE_CONDITION_KIND_ACCOUNT_ID",
      +                "RULE_CONDITION_KIND_CURRENCY",
      +                "RULE_CONDITION_KIND_AMOUNT_RANGE",
      +                "RULE_CONDITION_KIND_DIRECTION",
      +                "RULE_CONDITION_KIND_CARD",
      +                "RULE_CONDITION_KIND_TEAM_MEMBER",
      +                "RULE_CONDITION_KIND_CATEGORY",
      +                "RULE_CONDITION_KIND_ALL"
      +              ],
      +              "type": "string"
      +            },
      +            "negate": {
      +              "type": "boolean"
      +            },
      +            "reviewStatus": {
      +              "enum": [
      +                "RULE_CONDITION_REVIEW_STATUS_UNSPECIFIED",
      +                "RULE_CONDITION_REVIEW_STATUS_APPROVED",
      +                "RULE_CONDITION_REVIEW_STATUS_IN_REVIEW"
      +              ],
      +              "type": "string"
      +            },
      +            "textValue": {
      +              "type": "string"
      +            },
      +            "uuidValue": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "correctionCount": {
      +        "type": "integer"
      +      },
      +      "counterpartyId": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "createdAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "dead": {
      +        "type": "boolean"
      +      },
      +      "direction": {
      +        "enum": [
      +          "RULE_DIRECTION_UNSPECIFIED",
      +          "RULE_DIRECTION_MONEY_IN",
      +          "RULE_DIRECTION_MONEY_OUT"
      +        ],
      +        "type": "string"
      +      },
      +      "glAccountPath": {
      +        "type": "string"
      +      },
      +      "id": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "isActive": {
      +        "type": "boolean"
      +      },
      +      "lastAppliedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "name": {
      +        "anyOf": [
      +          {
      +            "description": "Human-readable name (1-255 Unicode chars).",
      +            "properties": {
      +              "value": {
      +                "maxLength": 255,
      +                "minLength": 1,
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "nameContains": {
      +        "type": "string"
      +      },
      +      "origin": {
      +        "enum": [
      +          "RULE_ORIGIN_UNSPECIFIED",
      +          "RULE_ORIGIN_USER",
      +          "RULE_ORIGIN_AI",
      +          "RULE_ORIGIN_PLATFORM",
      +          "RULE_ORIGIN_HABIT"
      +        ],
      +        "type": "string"
      +      },
      +      "posting": {
      +        "enum": [
      +          "RULE_POSTING_UNSPECIFIED",
      +          "RULE_POSTING_REVIEW",
      +          "RULE_POSTING_AUTO_POST"
      +        ],
      +        "type": "string"
      +      },
      +      "priority": {
      +        "type": "integer"
      +      },
      +      "proposalId": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "ruleCode": {
      +        "type": "string"
      +      },
      +      "splitLines": {
      +        "items": {
      +          "properties": {
      +            "glAccountPath": {
      +              "type": "string"
      +            },
      +            "isRemainder": {
      +              "type": "boolean"
      +            },
      +            "position": {
      +              "type": "integer"
      +            },
      +            "splitAmount": {
      +              "type": "string"
      +            },
      +            "splitPercent": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "status": {
      +        "enum": [
      +          "RULE_STATUS_UNSPECIFIED",
      +          "RULE_STATUS_DRAFT",
      +          "RULE_STATUS_ACTIVE",
      +          "RULE_STATUS_PAUSED",
      +          "RULE_STATUS_SUPERSEDED",
      +          "RULE_STATUS_REJECTED"
      +        ],
      +        "type": "string"
      +      },
      +      "trackRecordWindow": {
      +        "type": "integer"
      +      },
      +      "updatedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "version": {
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "companyId",
      +      "name"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed1 schema field changed
    • changedOutput schema / properties / rule / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "amountMax": {
      -        "type": "string"
      -      },
      -      "amountMin": {
      -        "type": "string"
      -      },
      -      "autoAccept": {
      -        "type": "boolean"
      -      },
      -      "companyId": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "counterpartyId": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "createdAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "direction": {
      -        "enum": [
      -          "RULE_DIRECTION_UNSPECIFIED",
      -          "RULE_DIRECTION_MONEY_IN",
      -          "RULE_DIRECTION_MONEY_OUT"
      -        ],
      -        "type": "string"
      -      },
      -      "glAccountPath": {
      -        "type": "string"
      -      },
      -      "id": {
      -        "anyOf": [
      -          {
      -            "description": "UUID value wrapper.",
      -            "properties": {
      -              "value": {
      -                "format": "uuid",
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "isActive": {
      -        "type": "boolean"
      -      },
      -      "name": {
      -        "anyOf": [
      -          {
      -            "description": "Human-readable name (1-255 Unicode chars).",
      -            "properties": {
      -              "value": {
      -                "maxLength": 255,
      -                "minLength": 1,
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "nameContains": {
      -        "type": "string"
      -      },
      -      "priority": {
      -        "type": "integer"
      -      },
      -      "updatedAt": {
      -        "anyOf": [
      -          {
      -            "format": "date-time",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      }
      -    },
      -    "required": [
      -      "companyId",
      -      "name"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "actionType": {
      +        "enum": [
      +          "RULE_ACTION_TYPE_UNSPECIFIED",
      +          "RULE_ACTION_TYPE_BOOK",
      +          "RULE_ACTION_TYPE_EXCLUDE",
      +          "RULE_ACTION_TYPE_SPLIT"
      +        ],
      +        "type": "string"
      +      },
      +      "actions": {
      +        "items": {
      +          "properties": {
      +            "fieldCode": {
      +              "type": "string"
      +            },
      +            "optionPath": {
      +              "type": "string"
      +            },
      +            "target": {
      +              "enum": [
      +                "RULE_ACTION_TARGET_UNSPECIFIED",
      +                "RULE_ACTION_TARGET_COUNTERPARTY",
      +                "RULE_ACTION_TARGET_TRANSACTION"
      +              ],
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "amountMax": {
      +        "type": "string"
      +      },
      +      "amountMin": {
      +        "type": "string"
      +      },
      +      "appliedCount": {
      +        "type": "integer"
      +      },
      +      "appliedThisMonth": {
      +        "type": "integer"
      +      },
      +      "approvedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "approvedBy": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "autoAccept": {
      +        "type": "boolean"
      +      },
      +      "autoPostConsentedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "autoPostMaxAmount": {
      +        "type": "string"
      +      },
      +      "cleanBookingsInWindow": {
      +        "type": "integer"
      +      },
      +      "companyId": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "conditions": {
      +        "items": {
      +          "properties": {
      +            "amountMax": {
      +              "type": "string"
      +            },
      +            "amountMin": {
      +              "type": "string"
      +            },
      +            "group": {
      +              "type": "integer"
      +            },
      +            "kind": {
      +              "enum": [
      +                "RULE_CONDITION_KIND_UNSPECIFIED",
      +                "RULE_CONDITION_KIND_COUNTERPARTY",
      +                "RULE_CONDITION_KIND_NAME_CONTAINS",
      +                "RULE_CONDITION_KIND_DESCRIPTOR_REGEX",
      +                "RULE_CONDITION_KIND_MERCHANT_REGEX",
      +                "RULE_CONDITION_KIND_MCC",
      +                "RULE_CONDITION_KIND_PROVIDER",
      +                "RULE_CONDITION_KIND_ACCOUNT_ID",
      +                "RULE_CONDITION_KIND_CURRENCY",
      +                "RULE_CONDITION_KIND_AMOUNT_RANGE",
      +                "RULE_CONDITION_KIND_DIRECTION",
      +                "RULE_CONDITION_KIND_CARD",
      +                "RULE_CONDITION_KIND_TEAM_MEMBER",
      +                "RULE_CONDITION_KIND_CATEGORY",
      +                "RULE_CONDITION_KIND_ALL"
      +              ],
      +              "type": "string"
      +            },
      +            "negate": {
      +              "type": "boolean"
      +            },
      +            "reviewStatus": {
      +              "enum": [
      +                "RULE_CONDITION_REVIEW_STATUS_UNSPECIFIED",
      +                "RULE_CONDITION_REVIEW_STATUS_APPROVED",
      +                "RULE_CONDITION_REVIEW_STATUS_IN_REVIEW"
      +              ],
      +              "type": "string"
      +            },
      +            "textValue": {
      +              "type": "string"
      +            },
      +            "uuidValue": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "correctionCount": {
      +        "type": "integer"
      +      },
      +      "counterpartyId": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "createdAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "dead": {
      +        "type": "boolean"
      +      },
      +      "direction": {
      +        "enum": [
      +          "RULE_DIRECTION_UNSPECIFIED",
      +          "RULE_DIRECTION_MONEY_IN",
      +          "RULE_DIRECTION_MONEY_OUT"
      +        ],
      +        "type": "string"
      +      },
      +      "glAccountPath": {
      +        "type": "string"
      +      },
      +      "id": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "isActive": {
      +        "type": "boolean"
      +      },
      +      "lastAppliedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "name": {
      +        "anyOf": [
      +          {
      +            "description": "Human-readable name (1-255 Unicode chars).",
      +            "properties": {
      +              "value": {
      +                "maxLength": 255,
      +                "minLength": 1,
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "nameContains": {
      +        "type": "string"
      +      },
      +      "origin": {
      +        "enum": [
      +          "RULE_ORIGIN_UNSPECIFIED",
      +          "RULE_ORIGIN_USER",
      +          "RULE_ORIGIN_AI",
      +          "RULE_ORIGIN_PLATFORM",
      +          "RULE_ORIGIN_HABIT"
      +        ],
      +        "type": "string"
      +      },
      +      "posting": {
      +        "enum": [
      +          "RULE_POSTING_UNSPECIFIED",
      +          "RULE_POSTING_REVIEW",
      +          "RULE_POSTING_AUTO_POST"
      +        ],
      +        "type": "string"
      +      },
      +      "priority": {
      +        "type": "integer"
      +      },
      +      "proposalId": {
      +        "anyOf": [
      +          {
      +            "description": "UUID value wrapper.",
      +            "properties": {
      +              "value": {
      +                "format": "uuid",
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "ruleCode": {
      +        "type": "string"
      +      },
      +      "splitLines": {
      +        "items": {
      +          "properties": {
      +            "glAccountPath": {
      +              "type": "string"
      +            },
      +            "isRemainder": {
      +              "type": "boolean"
      +            },
      +            "position": {
      +              "type": "integer"
      +            },
      +            "splitAmount": {
      +              "type": "string"
      +            },
      +            "splitPercent": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "status": {
      +        "enum": [
      +          "RULE_STATUS_UNSPECIFIED",
      +          "RULE_STATUS_DRAFT",
      +          "RULE_STATUS_ACTIVE",
      +          "RULE_STATUS_PAUSED",
      +          "RULE_STATUS_SUPERSEDED",
      +          "RULE_STATUS_REJECTED"
      +        ],
      +        "type": "string"
      +      },
      +      "trackRecordWindow": {
      +        "type": "integer"
      +      },
      +      "updatedAt": {
      +        "anyOf": [
      +          {
      +            "format": "date-time",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "version": {
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "companyId",
      +      "name"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  3. Added

TDQS

B3.2/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, and the description repeats "Read-only." It adds useful field-level expectations, including health metrics, but does not disclose permission requirements, not-found behavior, rate limits, or other behavioral traits beyond the annotations.

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 one front-loaded sentence that immediately states the action and then enumerates the returned information. It is efficient, though the long field enumeration is somewhat dense and partly redundant with the output schema.

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?

For a simple read-by-id tool with an output schema, full parameter description coverage, and read-only annotations, the description provides enough context to invoke it correctly. It leaves minor gaps around usage alternatives and error behavior, but nothing critical for correct invocation.

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 baseline is 3 even though the description adds little parameter detail. It mentions "by id" but does not explain the required companyId scoping or the UUID wrapper structure beyond what the schema already provides.

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?

The description uses a specific verb and resource: "Read one transaction categorization rule by id." It also enumerates the matched criteria and returned fields, so the agent knows exactly what the tool retrieves. It does not explicitly distinguish itself from sibling list or preview tools, which keeps it below a 5.

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?

The phrase "by id" implies the caller must already have a rule identifier, but there is no explicit guidance about when to use this tool versus transaction_get_list_categorization_rules or transaction_preview_categorization_rule. No exclusions or alternatives are named.

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.