Skip to main content
Glama

DaedalMap Administrative Boundaries (loc_id to polygon)

Inspect One Data Pack

get_pack
Read-onlyIdempotent

Inspect one exact data pack ID for its metrics, time coverage, and query metadata before get_data.

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": {
      "pack_id": "<pack_id>"
    },
    "name": "get_pack"
  }
}

Input Schema

NameRequiredDescriptionDefault
pack_idYesPack identifier from get_catalog. Newly catalog-admitted packs require no MCP schema change.

Output Schema

NameRequiredDescriptionDefault
errorNo
detailNo
reasonNo
catalogNo
pack_idNo
sourcesNo
guidanceNo
warningsNo
full_callNo
next_stepNo
provenanceNo
request_idNo
download_urlNo
clarificationNo
download_callNo
material_policyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • removedInput schema / properties / catalog
      Removed value: -{
      -  "description": "Metadata family. When omitted, geometry facades default to geometry and known geometry-family ids are inferred; all other calls default to data.",
      -  "enum": [
      -    "data",
      -    "geometry"
      -  ],
      -  "type": "string"
      -}
    • removedInput schema / properties / country_scope
      Removed value: -{
      -  "description": "Optional ISO3 country for a geometry family. Omit it to learn which countries publish the family; provide it for country-specific versions, vintages, levels, and artifacts.",
      -  "pattern": "^[A-Za-z]{3}$",
      -  "type": "string"
      -}
    • removedInput schema / properties / detail
      Removed value: -{
      -  "default": "lite",
      -  "description": "Use lite to decide and start, full for detailed MCP query metadata, or download for the complete raw metadata file.",
      -  "enum": [
      -    "lite",
      -    "full",
      -    "download"
      -  ],
      -  "type": "string"
      -}
    • removedInput schema / properties / release_unit
      Removed value: -{
      -  "description": "Optional non-country geometry release unit such as GLOBAL or MARINE. Do not combine with country_scope.",
      -  "pattern": "^[A-Za-z0-9_-]+$",
      -  "type": "string"
      -}
    • changedOutput schema / properties / catalog / enum
      Previous value: -[
      -  "data",
      -  "geometry"
      -]New value: +[
      +  "data"
      +]
  2. Changed13 schema fields changed
    • addedInput schema / properties / catalog
      Added value: +{
      +  "description": "Metadata family. When omitted, geometry facades default to geometry and known geometry-family ids are inferred; all other calls default to data.",
      +  "enum": [
      +    "data",
      +    "geometry"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / country_scope
      Added value: +{
      +  "description": "Optional ISO3 country for a geometry family. Omit it to learn which countries publish the family; provide it for country-specific versions, vintages, levels, and artifacts.",
      +  "pattern": "^[A-Za-z]{3}$",
      +  "type": "string"
      +}
    • changedInput schema / properties / detail / description
      Previous value: -"Use lite for normal discovery. Use full only for one selected pack when its complete public metadata is required."New value: +"Use lite to decide and start, full for detailed MCP query metadata, or download for the complete raw metadata file."
    • changedInput schema / properties / detail / enum
      Previous value: -[
      -  "lite",
      -  "full"
      -]New value: +[
      +  "lite",
      +  "full",
      +  "download"
      +]
    • addedInput schema / properties / release_unit
      Added value: +{
      +  "description": "Optional non-country geometry release unit such as GLOBAL or MARINE. Do not combine with country_scope.",
      +  "pattern": "^[A-Za-z0-9_-]+$",
      +  "type": "string"
      +}
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "required": [
      -      "pack_id"
      -    ]
      -  },
      -  {
      -    "required": [
      -      "error"
      -    ]
      -  }
      -]New value: +[
      +  {
      +    "required": [
      +      "catalog",
      +      "pack_id",
      +      "detail"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "error"
      +    ]
      +  }
      +]
    • addedOutput schema / properties / catalog
      Added value: +{
      +  "enum": [
      +    "data",
      +    "geometry"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / detail
      Added value: +{
      +  "enum": [
      +    "lite",
      +    "full",
      +    "download"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / download_call
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / download_url
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / full_call
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / next_step / anyOf
      Added value: +[
      +  {
      +    "required": [
      +      "action"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "tool"
      +    ]
      +  }
      +]
    • removedOutput schema / properties / next_step / required
      Removed value: -[
      -  "action"
      -]
  3. Changed1 schema field changed
    • addedInput schema / properties / detail
      Added value: +{
      +  "default": "lite",
      +  "description": "Use lite for normal discovery. Use full only for one selected pack when its complete public metadata is required.",
      +  "enum": [
      +    "lite",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  4. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": true,
      +  "anyOf": [
      +    {
      +      "required": [
      +        "pack_id"
      +      ]
      +    },
      +    {
      +      "required": [
      +        "error"
      +      ]
      +    }
      +  ],
      +  "properties": {
      +    "clarification": {
      +      "type": "object"
      +    },
      +    "error": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "code": {
      +          "type": "string"
      +        },
      +        "details": {
      +          "type": "object"
      +        },
      +        "message": {
      +          "type": "string"
      +        },
      +        "retry_hint": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "code",
      +        "message"
      +      ],
      +      "type": "object"
      +    },
      +    "guidance": {
      +      "type": "object"
      +    },
      +    "material_policy": {
      +      "type": "object"
      +    },
      +    "next_step": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "action": {
      +          "type": "string"
      +        },
      +        "arguments": {
      +          "type": "object"
      +        },
      +        "tool": {
      +          "type": "string"
      +        },
      +        "url": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "action"
      +      ],
      +      "type": "object"
      +    },
      +    "pack_id": {
      +      "type": "string"
      +    },
      +    "provenance": {
      +      "type": "object"
      +    },
      +    "reason": {
      +      "type": "string"
      +    },
      +    "request_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "sources": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "warnings": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  5. Changed1 schema field changed
    • changedInput schema / properties / pack_id / description
      Previous value: -"Pack identifier such as 'currency', 'earthquakes', 'floods', 'hurricanes', 'tornadoes', 'tsunamis', 'un_sdg', 'volcanoes', 'world_factbook', or 'worldpop'."New value: +"Pack identifier from get_catalog. Newly catalog-admitted packs require no MCP schema change."
  6. First observed

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is fully covered without the description. The description adds the useful preflight framing and the categories of information returned, but says nothing about failure behavior for an unknown or malformed pack_id.

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?

A single tight sentence with the scope constraint and the return summary up front and the workflow cue last. No filler, no restatement of the title.

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?

With one required parameter, a full output schema, and rich annotations, the description covers everything an agent needs to decide and call correctly. Only the invalid-ID behavior is unaddressed, which is a minor gap given the output schema handles return values.

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 coverage is 100% and the single pack_id parameter is already documented as coming from get_catalog. The description's only addition is emphasizing "one exact" ID, which implicitly rules out patterns or fuzzy matching — a marginal but real clarification over the schema.

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 pairs a specific verb ("Inspect") with a precisely scoped resource ("one exact data pack ID") and enumerates what is returned: metrics, time coverage, and query metadata. It also positions itself against the sibling get_data, so an agent can tell the two apart without opening either schema.

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 phrase "before get_data" gives an explicit sequencing rule, telling the agent this is a pre-flight step rather than a data-retrieval call. It stops short of stating when-not to use it or naming get_catalog as the prerequisite source for the pack_id, so it is clear context without full routing guidance.

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.