Skip to main content
Glama

Query cited reference fields

koskamo_query_reference
Read-onlyIdempotent

Filter one supported public reference dataset using its typed fields. Requires a dataset and optional bounded filters, ordering and cursor. Returns matching rows, exact source versions and decimal strings without SQL, cross-unit arithmetic, writes or charges. Source changes expire paging cursors.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum reference rows to return in this page, from 1 to 50.
cursorNoOpaque next_cursor from the same dataset, filters, ordering and source snapshot.
datasetNoPublic reference dataset to query: HTTP status codes, periodic-table elements or CODATA constants.
filtersNoUp to eight field comparisons for the selected dataset, combined with AND. Cross-unit numeric comparisons are unsupported.
order_byNoField from the selected dataset used to order reference rows.
directionNoAscending or descending row ordering.asc

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • changedInput schema / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cursor": {
      -        "maxLength": 2048,
      -        "type": "string"
      -      },
      -      "dataset": {
      -        "const": "http-status-codes",
      -        "type": "string"
      -      },
      -      "direction": {
      -        "default": "asc",
      -        "enum": [
      -          "asc",
      -          "desc"
      -        ],
      -        "type": "string"
      -      },
      -      "filters": {
      -        "default": [],
      -        "items": {
      -          "anyOf": [
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "column": {
      -                  "const": "code",
      -                  "type": "string"
      -                },
      -                "operator": {
      -                  "enum": [
      -                    "eq",
      -                    "gte",
      -                    "lte"
      -                  ],
      -                  "type": "string"
      -                },
      -                "value": {
      -                  "maximum": 599,
      -                  "minimum": 100,
      -                  "type": "integer"
      -                }
      -              },
      -              "required": [
      -                "column",
      -                "operator",
      -                "value"
      -              ],
      -              "type": "object"
      -            },
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "column": {
      -                  "enum": [
      -                    "reason",
      -                    "class_name"
      -                  ],
      -                  "type": "string"
      -                },
      -                "operator": {
      -                  "enum": [
      -                    "eq",
      -                    "contains"
      -                  ],
      -                  "type": "string"
      -                },
      -                "value": {
      -                  "maxLength": 120,
      -                  "minLength": 1,
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "column",
      -                "operator",
      -                "value"
      -              ],
      -              "type": "object"
      -            }
      -          ]
      -        },
      -        "maxItems": 8,
      -        "type": "array"
      -      },
      -      "limit": {
      -        "default": 20,
      -        "maximum": 50,
      -        "minimum": 1,
      -        "type": "integer"
      -      },
      -      "order_by": {
      -        "default": "code",
      -        "enum": [
      -          "code",
      -          "reason"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "dataset"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cursor": {
      -        "maxLength": 2048,
      -        "type": "string"
      -      },
      -      "dataset": {
      -        "const": "periodic-table",
      -        "type": "string"
      -      },
      -      "direction": {
      -        "default": "asc",
      -        "enum": [
      -          "asc",
      -          "desc"
      -        ],
      -        "type": "string"
      -      },
      -      "filters": {
      -        "default": [],
      -        "items": {
      -          "anyOf": [
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "column": {
      -                  "enum": [
      -                    "atomic_number",
      -                    "group",
      -                    "period"
      -                  ],
      -                  "type": "string"
      -                },
      -                "operator": {
      -                  "enum": [
      -                    "eq",
      -                    "gte",
      -                    "lte"
      -                  ],
      -                  "type": "string"
      -                },
      -                "value": {
      -                  "maximum": 118,
      -                  "minimum": 1,
      -                  "type": "integer"
      -                }
      -              },
      -              "required": [
      -                "column",
      -                "operator",
      -                "value"
      -              ],
      -              "type": "object"
      -            },
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "column": {
      -                  "enum": [
      -                    "name",
      -                    "symbol",
      -                    "standard_state"
      -                  ],
      -                  "type": "string"
      -                },
      -                "operator": {
      -                  "enum": [
      -                    "eq",
      -                    "contains"
      -                  ],
      -                  "type": "string"
      -                },
      -                "value": {
      -                  "maxLength": 120,
      -                  "minLength": 1,
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "column",
      -                "operator",
      -                "value"
      -              ],
      -              "type": "object"
      -            }
      -          ]
      -        },
      -        "maxItems": 8,
      -        "type": "array"
      -      },
      -      "limit": {
      -        "default": 20,
      -        "maximum": 50,
      -        "minimum": 1,
      -        "type": "integer"
      -      },
      -      "order_by": {
      -        "default": "atomic_number",
      -        "enum": [
      -          "atomic_number",
      -          "name",
      -          "symbol",
      -          "group",
      -          "period"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "dataset"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cursor": {
      -        "maxLength": 2048,
      -        "type": "string"
      -      },
      -      "dataset": {
      -        "const": "codata-constants",
      -        "type": "string"
      -      },
      -      "direction": {
      -        "default": "asc",
      -        "enum": [
      -          "asc",
      -          "desc"
      -        ],
      -        "type": "string"
      -      },
      -      "filters": {
      -        "default": [],
      -        "items": {
      -          "anyOf": [
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "column": {
      -                  "enum": [
      -                    "quantity",
      -                    "unit"
      -                  ],
      -                  "type": "string"
      -                },
      -                "operator": {
      -                  "enum": [
      -                    "eq",
      -                    "contains"
      -                  ],
      -                  "type": "string"
      -                },
      -                "value": {
      -                  "maxLength": 160,
      -                  "minLength": 1,
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "column",
      -                "operator",
      -                "value"
      -              ],
      -              "type": "object"
      -            },
      -            {
      -              "additionalProperties": false,
      -              "properties": {
      -                "column": {
      -                  "enum": [
      -                    "exact",
      -                    "truncated"
      -                  ],
      -                  "type": "string"
      -                },
      -                "operator": {
      -                  "const": "eq",
      -                  "type": "string"
      -                },
      -                "value": {
      -                  "type": "boolean"
      -                }
      -              },
      -              "required": [
      -                "column",
      -                "operator",
      -                "value"
      -              ],
      -              "type": "object"
      -            }
      -          ]
      -        },
      -        "maxItems": 8,
      -        "type": "array"
      -      },
      -      "limit": {
      -        "default": 20,
      -        "maximum": 50,
      -        "minimum": 1,
      -        "type": "integer"
      -      },
      -      "order_by": {
      -        "default": "quantity",
      -        "enum": [
      -          "quantity",
      -          "unit"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "dataset"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cursor": {
      +        "description": "Opaque next_cursor from the same dataset, filters, ordering and source snapshot.",
      +        "maxLength": 2048,
      +        "type": "string"
      +      },
      +      "dataset": {
      +        "const": "http-status-codes",
      +        "description": "Query the public HTTP status-code reference dataset.",
      +        "type": "string"
      +      },
      +      "direction": {
      +        "default": "asc",
      +        "description": "Ascending or descending row ordering.",
      +        "enum": [
      +          "asc",
      +          "desc"
      +        ],
      +        "type": "string"
      +      },
      +      "filters": {
      +        "default": [],
      +        "description": "Up to eight HTTP field comparisons, combined with AND.",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "const": "code",
      +                  "description": "HTTP status code field.",
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Integer equality, lower bound or upper bound comparison.",
      +                  "enum": [
      +                    "eq",
      +                    "gte",
      +                    "lte"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "HTTP status code from 100 to 599 to compare.",
      +                  "maximum": 599,
      +                  "minimum": 100,
      +                  "type": "integer"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "HTTP reason phrase or response class field.",
      +                  "enum": [
      +                    "reason",
      +                    "class_name"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Exact text equality or substring containment.",
      +                  "enum": [
      +                    "eq",
      +                    "contains"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Text to compare against the selected HTTP field.",
      +                  "maxLength": 120,
      +                  "minLength": 1,
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            }
      +          ]
      +        },
      +        "maxItems": 8,
      +        "type": "array"
      +      },
      +      "limit": {
      +        "default": 20,
      +        "description": "Maximum reference rows to return in this page, from 1 to 50.",
      +        "maximum": 50,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "order_by": {
      +        "default": "code",
      +        "description": "HTTP field used to order rows.",
      +        "enum": [
      +          "code",
      +          "reason"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "dataset"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cursor": {
      +        "description": "Opaque next_cursor from the same dataset, filters, ordering and source snapshot.",
      +        "maxLength": 2048,
      +        "type": "string"
      +      },
      +      "dataset": {
      +        "const": "periodic-table",
      +        "description": "Query the public periodic-table reference dataset.",
      +        "type": "string"
      +      },
      +      "direction": {
      +        "default": "asc",
      +        "description": "Ascending or descending row ordering.",
      +        "enum": [
      +          "asc",
      +          "desc"
      +        ],
      +        "type": "string"
      +      },
      +      "filters": {
      +        "default": [],
      +        "description": "Up to eight element field comparisons, combined with AND.",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "Periodic-table integer field.",
      +                  "enum": [
      +                    "atomic_number",
      +                    "group",
      +                    "period"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Integer equality, lower bound or upper bound comparison.",
      +                  "enum": [
      +                    "eq",
      +                    "gte",
      +                    "lte"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Integer to compare against the selected element field.",
      +                  "maximum": 118,
      +                  "minimum": 1,
      +                  "type": "integer"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "Periodic-table text field.",
      +                  "enum": [
      +                    "name",
      +                    "symbol",
      +                    "standard_state"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Exact text equality or substring containment.",
      +                  "enum": [
      +                    "eq",
      +                    "contains"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Text to compare against the selected element field.",
      +                  "maxLength": 120,
      +                  "minLength": 1,
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            }
      +          ]
      +        },
      +        "maxItems": 8,
      +        "type": "array"
      +      },
      +      "limit": {
      +        "default": 20,
      +        "description": "Maximum reference rows to return in this page, from 1 to 50.",
      +        "maximum": 50,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "order_by": {
      +        "default": "atomic_number",
      +        "description": "Element field used to order rows.",
      +        "enum": [
      +          "atomic_number",
      +          "name",
      +          "symbol",
      +          "group",
      +          "period"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "dataset"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cursor": {
      +        "description": "Opaque next_cursor from the same dataset, filters, ordering and source snapshot.",
      +        "maxLength": 2048,
      +        "type": "string"
      +      },
      +      "dataset": {
      +        "const": "codata-constants",
      +        "description": "Query the public CODATA constants reference dataset.",
      +        "type": "string"
      +      },
      +      "direction": {
      +        "default": "asc",
      +        "description": "Ascending or descending row ordering.",
      +        "enum": [
      +          "asc",
      +          "desc"
      +        ],
      +        "type": "string"
      +      },
      +      "filters": {
      +        "default": [],
      +        "description": "Up to eight CODATA field comparisons, combined with AND; cross-unit numeric comparisons are unsupported.",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "CODATA quantity name or source-reported unit field.",
      +                  "enum": [
      +                    "quantity",
      +                    "unit"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Exact text equality or substring containment.",
      +                  "enum": [
      +                    "eq",
      +                    "contains"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Text to compare against the selected CODATA field.",
      +                  "maxLength": 160,
      +                  "minLength": 1,
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "Whether the source declares an exact value or truncates its reported digits.",
      +                  "enum": [
      +                    "exact",
      +                    "truncated"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "const": "eq",
      +                  "description": "Boolean equality; numeric comparisons are unsupported.",
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Boolean value required for the selected source-status field.",
      +                  "type": "boolean"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            }
      +          ]
      +        },
      +        "maxItems": 8,
      +        "type": "array"
      +      },
      +      "limit": {
      +        "default": 20,
      +        "description": "Maximum reference rows to return in this page, from 1 to 50.",
      +        "maximum": 50,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "order_by": {
      +        "default": "quantity",
      +        "description": "CODATA field used to order rows.",
      +        "enum": [
      +          "quantity",
      +          "unit"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "dataset"
      +    ],
      +    "type": "object"
      +  }
      +]
    • addedInput schema / properties
      Added value: +{
      +  "cursor": {
      +    "description": "Opaque next_cursor from the same dataset, filters, ordering and source snapshot.",
      +    "maxLength": 2048,
      +    "type": "string"
      +  },
      +  "dataset": {
      +    "anyOf": [
      +      {
      +        "const": "http-status-codes",
      +        "description": "Query the public HTTP status-code reference dataset.",
      +        "type": "string"
      +      },
      +      {
      +        "const": "periodic-table",
      +        "description": "Query the public periodic-table reference dataset.",
      +        "type": "string"
      +      },
      +      {
      +        "const": "codata-constants",
      +        "description": "Query the public CODATA constants reference dataset.",
      +        "type": "string"
      +      }
      +    ],
      +    "description": "Public reference dataset to query: HTTP status codes, periodic-table elements or CODATA constants."
      +  },
      +  "direction": {
      +    "default": "asc",
      +    "description": "Ascending or descending row ordering.",
      +    "enum": [
      +      "asc",
      +      "desc"
      +    ],
      +    "type": "string"
      +  },
      +  "filters": {
      +    "anyOf": [
      +      {
      +        "default": [],
      +        "description": "Up to eight HTTP field comparisons, combined with AND.",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "const": "code",
      +                  "description": "HTTP status code field.",
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Integer equality, lower bound or upper bound comparison.",
      +                  "enum": [
      +                    "eq",
      +                    "gte",
      +                    "lte"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "HTTP status code from 100 to 599 to compare.",
      +                  "maximum": 599,
      +                  "minimum": 100,
      +                  "type": "integer"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "HTTP reason phrase or response class field.",
      +                  "enum": [
      +                    "reason",
      +                    "class_name"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Exact text equality or substring containment.",
      +                  "enum": [
      +                    "eq",
      +                    "contains"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Text to compare against the selected HTTP field.",
      +                  "maxLength": 120,
      +                  "minLength": 1,
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            }
      +          ]
      +        },
      +        "maxItems": 8,
      +        "type": "array"
      +      },
      +      {
      +        "default": [],
      +        "description": "Up to eight element field comparisons, combined with AND.",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "Periodic-table integer field.",
      +                  "enum": [
      +                    "atomic_number",
      +                    "group",
      +                    "period"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Integer equality, lower bound or upper bound comparison.",
      +                  "enum": [
      +                    "eq",
      +                    "gte",
      +                    "lte"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Integer to compare against the selected element field.",
      +                  "maximum": 118,
      +                  "minimum": 1,
      +                  "type": "integer"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "Periodic-table text field.",
      +                  "enum": [
      +                    "name",
      +                    "symbol",
      +                    "standard_state"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Exact text equality or substring containment.",
      +                  "enum": [
      +                    "eq",
      +                    "contains"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Text to compare against the selected element field.",
      +                  "maxLength": 120,
      +                  "minLength": 1,
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            }
      +          ]
      +        },
      +        "maxItems": 8,
      +        "type": "array"
      +      },
      +      {
      +        "default": [],
      +        "description": "Up to eight CODATA field comparisons, combined with AND; cross-unit numeric comparisons are unsupported.",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "CODATA quantity name or source-reported unit field.",
      +                  "enum": [
      +                    "quantity",
      +                    "unit"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "description": "Exact text equality or substring containment.",
      +                  "enum": [
      +                    "eq",
      +                    "contains"
      +                  ],
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Text to compare against the selected CODATA field.",
      +                  "maxLength": 160,
      +                  "minLength": 1,
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "column": {
      +                  "description": "Whether the source declares an exact value or truncates its reported digits.",
      +                  "enum": [
      +                    "exact",
      +                    "truncated"
      +                  ],
      +                  "type": "string"
      +                },
      +                "operator": {
      +                  "const": "eq",
      +                  "description": "Boolean equality; numeric comparisons are unsupported.",
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "description": "Boolean value required for the selected source-status field.",
      +                  "type": "boolean"
      +                }
      +              },
      +              "required": [
      +                "column",
      +                "operator",
      +                "value"
      +              ],
      +              "type": "object"
      +            }
      +          ]
      +        },
      +        "maxItems": 8,
      +        "type": "array"
      +      }
      +    ],
      +    "description": "Up to eight field comparisons for the selected dataset, combined with AND. Cross-unit numeric comparisons are unsupported."
      +  },
      +  "limit": {
      +    "default": 20,
      +    "description": "Maximum reference rows to return in this page, from 1 to 50.",
      +    "maximum": 50,
      +    "minimum": 1,
      +    "type": "integer"
      +  },
      +  "order_by": {
      +    "anyOf": [
      +      {
      +        "default": "code",
      +        "description": "HTTP field used to order rows.",
      +        "enum": [
      +          "code",
      +          "reason"
      +        ],
      +        "type": "string"
      +      },
      +      {
      +        "default": "atomic_number",
      +        "description": "Element field used to order rows.",
      +        "enum": [
      +          "atomic_number",
      +          "name",
      +          "symbol",
      +          "group",
      +          "period"
      +        ],
      +        "type": "string"
      +      },
      +      {
      +        "default": "quantity",
      +        "description": "CODATA field used to order rows.",
      +        "enum": [
      +          "quantity",
      +          "unit"
      +        ],
      +        "type": "string"
      +      }
      +    ],
      +    "description": "Field from the selected dataset used to order reference rows."
      +  }
      +}
  2. Added

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description nonetheless adds real behavioral context: exact source versions are returned, values come back as decimal strings rather than floating point, no writes or charges occur, and source changes invalidate paging cursors — the cursor-expiry caveat is the most valuable addition. It stops short of describing error behavior or what happens when a cursor is stale.

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?

Four short sentences, front-loaded with the core action and scope, then requirements, then return and constraint notes. The negation chain ('without SQL, cross-unit arithmetic, writes or charges') is compressed but readable; nothing is padding, though that clause is dense enough to cost a point.

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

Completeness3/5

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

An output schema exists, so return-value detail is not strictly required, and the description covers the essentials for a filtered-list tool. Against a six-parameter polymorphic schema with three mutually exclusive dataset variants, however, it omits any pointer to how an agent discovers valid datasets or fields, which is the main comprehension gap for this tool.

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 description coverage is 100%, so the schema already carries per-parameter meaning and the baseline is 3. The description adds a little beyond it by framing filters as bounded, ordering and cursor as optional, and by naming the cross-unit arithmetic prohibition, which is genuinely semantic. It does not add dataset-specific field or operator guidance, which is where an agent would most need help with the three-branch oneOf.

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?

States a specific verb and resource: filter one supported public reference dataset by its typed fields, returning matching rows. That distinguishes it from siblings like koskamo_get_reference_schema and koskamo_list_datasets, though it never names those siblings as the discovery path, so the differentiation is implicit rather than explicit.

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: an agent can infer this is the read path for reference datasets, and the 'without SQL' and 'no cross-unit arithmetic' clauses hint at what the tool deliberately does not do. But it gives no explicit routing such as 'use koskamo_list_datasets to discover dataset names' or 'use koskamo_get_reference_schema to see filterable fields', and no when-not-to-use guidance against the 30+ siblings.

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.

Resources