Skip to main content
Glama

List a Lookup Table's Rows

get_dimension
Read-onlyIdempotent

The rows of one shared lookup table: district, school, county, census tract, or demographic codes with their names and attributes, in key order so paging is stable. describe_dimension gives the schema. Pages are small; when truncated is true, bulk_export gives the REST API address for the full table.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "name": "<name>"
    },
    "name": "get_dimension"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYesLookup table (dimension) name: districts, schools, counties, tracts, block_groups, or demographics.
limitNoRows per page (default 100, at most 500).
offsetNoNumber of rows to skip, for paging.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changed
    • addedInput schema / properties / limit / description
      Added value: +"Rows per page (default 100, at most 500)."
    • addedInput schema / properties / limit / maximum
      Added value: +500
    • addedInput schema / properties / limit / minimum
      Added value: +1
    • addedInput schema / properties / name / description
      Added value: +"Lookup table (dimension) name: districts, schools, counties, tracts, block_groups, or demographics."
    • addedInput schema / properties / name / enum
      Added value: +[
      +  "block_groups",
      +  "counties",
      +  "demographics",
      +  "districts",
      +  "schools",
      +  "tracts"
      +]
    • addedInput schema / properties / offset / description
      Added value: +"Number of rows to skip, for paging."
    • addedInput schema / properties / offset / minimum
      Added value: +0
  2. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, closed-world behavior, and the description adds real context beyond that: rows come back in key order for stable paging, pages are small, and a `truncated` flag signals that bulk_export should be used instead. It doesn't spell out the truncation threshold or exact page size defaults, leaving some behavioral detail unstated.

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?

Three tight sentences, zero filler, with the resource and table list front-loaded and the escape hatches (describe_dimension, bulk_export) placed after. Every clause carries information the caller needs.

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

Completeness5/5

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

For a read-only paged list tool with a full schema, rich annotations, and an output schema, the description covers everything an agent needs: what it returns, ordering guarantees, paging limits, and where to go when results are truncated. No gaps remain.

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% and every parameter already carries bounds, defaults, and an enum, so the schema does the heavy lifting. The description adds only the paging-stability rationale and the small-page caveat, which is a modest supplement rather than new parameter-level meaning — the baseline 3 fits.

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?

Identifies a specific resource (rows of one shared lookup table) and enumerates the concrete tables it covers, so it is unmistakable next to describe_dimension. The verb is implied by the noun phrase 'The rows of...' rather than stated outright, which keeps it just shy of 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 Guidelines4/5

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

Explicitly routes two adjacent needs to alternatives: schema questions go to describe_dimension, and oversized results go to bulk_export when `truncated` is true. It never states a positive 'use this when you need X' condition for get_dimension itself, so the guidance is clear but not exhaustive.

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