Skip to main content
Glama

DaedalMap CIA World Factbook

Server Details

CIA World Factbook country indicators: infrastructure, energy, demographics, economy, 2002-2026.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
96.3% over 73 days
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
Repository
xyver/daedal-map
GitHub Stars
2
Server Listing
daedal-map

TDQS

A3.6/5.0

Scored across 4 tools

Disambiguation3/5

get_catalog (list pack IDs), get_pack (inspect one pack), and get_data (fetch rows) form a reasonably distinct progression, but the dense descriptions reference non-existent tools like get_geography and get_event, muddying where geometry retrieval and event drill-down actually live. An agent could still select correctly for data workflows, but the boundaries around the geometry path are unclear.

Naming Consistency4/5

All four tools follow a clean get_<noun> pattern (get_catalog, get_data, get_pack, get_tool_help), which is easy to read and predict. get_tool_help is slightly meta compared to the data-oriented siblings but still fits the convention.

Tool Count4/5

Four tools is lean but appropriate for a parametric facade where get_pack and get_data generalize across many data packs. It is arguably a touch thin given the data/geometry duality mentioned, but each tool earns its place.

Completeness2/5

The catalog explicitly offers both data and geometry, but only the data path is represented; geometry families and the referenced get_geography and get_event drill-down tools are absent from the surface. This leaves agents at a dead end for geometry and event workflows.

Available Tools

4 tools
get_catalogList Published Packs or GeographiesA
Read-onlyIdempotent
Inspect

Choose data or geometry to list published pack IDs or family and scope IDs. The response includes a complete catalog download URL. Use get_pack for data or get_geography for geometry. Current catalog: The same geography tools work worldwide across a cataloged baseline of 252 geographic entities, reaching up to Admin 2. Where additional country releases are available, the same calls automatically return deeper administrative tiers or maintained reference families. Additional detail is currently available for Australia, Brazil, Canada, France, Germany, Mexico, United Kingdom, United States.

NameRequiredDescriptionDefault
catalogYesRequired directory selector.

Output Schema

NameRequiredDescription
errorNo
packsNo
detailNo
reasonNo
scopesNo
catalogNo
familiesNo
guidanceNo
warningsNo
next_stepNo
pack_countNo
provenanceNo
request_idNo
download_urlNo
generated_atNo
clarificationNo
result_statusNo
tool_familiesNo
excluded_countNo
resolved_queryNo
catalog_versionNo
uncertain_countNo
uncertain_packsNo

TDQS

A3.5/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 covered. The description's only behavioral addition is that the response carries a catalog download URL, which is already implied by the output schema; the long paragraph about worldwide coverage and per-country releases is scope marketing rather than behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The actionable content (what it lists, the download URL, the get_pack/get_geography routing) is front-loaded, but it is then buried under a lengthy 'Current catalog' paragraph listing 252 entities and eight countries that does nothing for tool selection or invocation.

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?

With annotations covering safety and an output schema covering returns, the description only needs to explain the selector and routing, which it mostly does. However, the undefined 'scope IDs' terminology and the routing to a non-sibling tool leave small gaps for an agent deciding between catalog and pack calls.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the enum values are self-explanatory, so the baseline is 3. The description goes beyond this by mapping each enum value to a distinct return shape ('data' yields pack IDs, 'geometry' yields family and scope IDs), which genuinely adds meaning over the schema.

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?

It names a specific verb ('list') and resource ('published pack IDs or family and scope IDs') and ties the output to the required catalog selector. It is distinguishable from the generic get_data/get_pack siblings, though the phrase 'family and scope IDs' is jargon that is never defined.

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?

It gives explicit routing: 'Use get_pack for data or get_geography for geometry,' which tells the agent when to pick this tool over an alternative. The weakness is that get_geography is not among the listed siblings, so the routing target is ambiguous for the agent.

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

get_dataGet DataA
Read-onlyIdempotent
Inspect

Retrieve rows from one selected published data pack using exact metrics, loc_id-based region filters, time/metric filters, sorting, and a row limit. Disaster event rows include stable event_id values for get_event drill-down. A parent administrative loc_id selects matching descendant rows at the pack's published grain. Call get_pack first; geometry families use their focused next-step tools.

NameRequiredDescriptionDefault
sortNoSort by a sortable field from get_pack; direction defaults to asc.
limitNoMaximum number of rows to return for the requested source or pack.
outputNoOptional response controls. v1 supports rows only.
filtersYes
metricsYesExact metric ids from get_pack. Use event_count for aggregate counts only when get_pack publishes it.
pack_idYesPack identifier from get_catalog. Newly catalog-admitted packs require no MCP schema change.
request_idNoOptional caller-supplied request id for tracing and idempotency.

Output Schema

NameRequiredDescription
rowsNo
sortNo
errorNo
limitNo
reasonNo
pack_idNo
guidanceNo
warningsNo
next_stepNo
row_countNo
source_idNo
truncatedNo
provenanceNo
query_modeNo
request_idNo
capability_idNo
clarificationNo
filters_appliedNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/non-destructive/closed-world, so the safety profile is covered. The description adds real behavioral context beyond that: parent administrative loc_ids expand to descendant rows at the pack's published grain, and disaster event rows carry stable event_id values for drill-down. No permission, rate-limit, or failure behavior is described, but that is a minor gap.

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 front-loaded sentences with no filler; the core action and its inputs come first, then drill-down, hierarchy, and prerequisite notes. The final clause about 'geometry families' is slightly cryptic but not wasteful.

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 7-parameter tool with nested filter/sort objects and an output schema, the description covers the essential query model and prerequisites. Return-format details are correctly delegated to the output schema; only minor gaps remain around limit defaults and the output/request_id controls.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 86%, so the baseline is 3; the description earns above that by explaining the hierarchy semantics of loc_id filters (a parent selects matching descendants) and clarifying that metrics must be exact published ids. It does not say much about sort, limit, output, or request_id, but those are already documented in 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?

States a specific verb and resource ('Retrieve rows from one selected published data pack') and enumerates the selection mechanisms (metrics, loc_id region filters, time/metric filters, sorting, row limit). The prerequisite on get_pack and the note about geometry families implicitly separate it from its catalog/pack siblings.

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?

'Call get_pack first' gives an explicit prerequisite, and 'geometry families use their focused next-step tools' routes a class of users away from this tool. It stops short of naming those alternative tools or stating when-not conditions for non-geometry cases, so it is clear context rather than full when/when-not guidance.

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

get_packInspect One Data PackA
Read-onlyIdempotent
Inspect

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

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

Output Schema

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

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description's additional value is the pre-flight framing (cheap inspection ahead of get_data) and a summary of returned content. It does not add anything about unknown-ID behavior or lookup cost, so it is solid but not rich.

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 sentence that front-loads the verb and resource and ends with the routing cue. Every clause carries information; nothing is padded or redundant.

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 an output schema present, the description need not enumerate return fields, and annotations plus a 100%-covered single parameter handle the rest. The only thin spot is behavior when an unknown or stale pack ID is passed, which the description never touches.

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 the single pack_id parameter is well documented in the schema itself (origin in get_catalog, note about newly admitted packs). The description only adds the emphasis that the ID must be exact, which is marginal but consistent with the baseline for fully covered schemas.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (inspect), a specific resource (one exact data pack ID), and what the inspection yields (metrics, time coverage, query metadata). This cleanly separates it from get_catalog (enumeration) and get_data (retrieval) without the agent needing to open any 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 for when this tool belongs in a workflow, and the schema's 'from get_catalog' note completes the chain. There are no stated exclusions or failure conditions, so it falls just short of a full when/when-not statement.

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

get_tool_helpGet Tool HelpA
Read-onlyIdempotent
Inspect

Describe one tool visible on this facade, including its exact contract, or return a bounded workflow overview for one supported topic.

NameRequiredDescriptionDefault
topicNoWorkflow overview. Do not combine with tool_name.
questionNoOptional question used only with a topic overview.
tool_nameNoExact tool name from tools/list. Do not combine with topic.

Output Schema

NameRequiredDescription
okNo
errorNo
titleNo
accessNo
reasonNo
purposeNo
examplesNo
guidanceNo
warningsNo
next_stepNo
tool_nameNo
provenanceNo
request_idNo
input_schemaNo
clarificationNo
recommended_next_callsNo
important_output_fieldsNo

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, covering the safety profile. The description adds a bit of behavioral context by mentioning 'exact contract' and 'bounded workflow overview', but it does not disclose potential error conditions or response formats. This is acceptable given the annotations, so a 3 is appropriate.

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?

The description is a single, well-structured sentence that efficiently presents both modes without redundancy. Every phrase adds value, and it is front-loaded with the primary action.

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?

The description is adequate but relies heavily on the schema for constraints (e.g., oneOf logic, enum values, mutual exclusivity). It does not mention optional parameters or edge cases, but given the rich schema and annotations, it covers the essential purpose. A 3 reflects that it is sufficient but not exhaustive.

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 each parameter already has a thorough description (e.g., 'Do not combine with tool_name'). The tool description adds no extra parameter detail beyond the schema, so the baseline of 3 applies.

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 clearly states the tool's purpose: describe a tool (with its exact contract) or return a workflow overview for a supported topic. It uses specific verbs and resources, and the two modes are distinct. This differentiates it from sibling data-fetching tools like get_data and get_catalog.

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 description implies when to use each mode by stating the two options, and the schema enforces mutual exclusivity. However, it does not explicitly name alternatives or state when NOT to use this tool (e.g., for actual data retrieval). Still, the purpose is clear enough for an agent to infer correct usage.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • Changedget_catalog15 fields changed
      • removedInput schema / properties / catalog / default
        Removed value: -"data"
      • changedInput schema / properties / catalog / description
        Previous value: -"Catalog family. The geography facade defaults to geometry; other facades default to data."New value: +"Required directory selector."
      • removedInput schema / properties / country_scope
        Removed value: -{
        -  "description": "Optional ISO3 focus for catalog='geometry' with detail='lite'.",
        -  "type": "string"
        -}
      • removedInput schema / properties / detail
        Removed value: -{
        -  "default": "lite",
        -  "description": "Use lite to select a pack, full for expanded metric/query inventories, or download for the complete raw catalog URL.",
        -  "enum": [
        -    "lite",
        -    "full",
        -    "download"
        -  ],
        -  "type": "string"
        -}
      • removedInput schema / properties / loc_id
        Removed value: -{
        -  "description": "Optional DaedalMap loc_id for catalog='data'. Combine with time_range to discover packs confirmed for both place and time. For place details without pack filtering, use get_loc_id_info.",
        -  "type": "string"
        -}
      • removedInput schema / properties / time_range
        Removed value: -{
        -  "additionalProperties": false,
        -  "description": "Optional inclusive discovery window for catalog='data'. At least one bound is required.",
        -  "properties": {
        -    "end": {
        -      "anyOf": [
        -        {
        -          "type": "string"
        -        },
        -        {
        -          "type": "integer"
        -        }
        -      ]
        -    },
        -    "start": {
        -      "anyOf": [
        -        {
        -          "type": "string"
        -        },
        -        {
        -          "type": "integer"
        -        }
        -      ]
        -    }
        -  },
        -  "type": "object"
        -}
      • addedInput schema / required
        Added value: +[
        +  "catalog"
        +]
      • changedOutput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "catalog",
        -      "detail"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "error"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "catalog"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "error"
        +    ]
        +  }
        +]
      • addedOutput schema / properties / excluded_count
        Added value: +{
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedOutput schema / properties / families
        Added value: +{
        +  "items": {
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / resolved_query
        Added value: +{
        +  "type": "object"
        +}
      • addedOutput schema / properties / result_status
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / scopes
        Added value: +{
        +  "items": {
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / uncertain_count
        Added value: +{
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedOutput schema / properties / uncertain_packs
        Added value: +{
        +  "items": {
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_data1 field changed
      • changedInput schema / properties / filters / additionalProperties
        Previous value: -{
        -  "anyOf": [
        -    {
        -      "type": [
        -        "string",
        -        "number",
        -        "integer",
        -        "boolean",
        -        "null"
        -      ]
        -    },
        -    {
        -      "items": {
        -        "type": [
        -          "string",
        -          "number",
        -          "integer",
        -          "boolean"
        -        ]
        -      },
        -      "type": "array"
        -    }
        -  ]
        -}New value: +false
    • Changedget_pack5 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. 1 tool update
    • Changedget_data13 fields changed
      • addedInput schema / properties / filters / additionalProperties
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": [
        +        "string",
        +        "number",
        +        "integer",
        +        "boolean",
        +        "null"
        +      ]
        +    },
        +    {
        +      "items": {
        +        "type": [
        +          "string",
        +          "number",
        +          "integer",
        +          "boolean"
        +        ]
        +      },
        +      "type": "array"
        +    }
        +  ]
        +}
      • removedInput schema / properties / filters / description
        Removed value: -"Structured filters including time, region_ids, and compare clauses."
      • addedInput schema / properties / filters / properties
        Added value: +{
        +  "compare": {
        +    "description": "Threshold filters using filterable fields or selected metric ids published by get_pack.",
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "field": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "op": {
        +          "enum": [
        +            "=",
        +            "!=",
        +            ">",
        +            ">=",
        +            "<",
        +            "<="
        +          ],
        +          "type": "string"
        +        },
        +        "value": {}
        +      },
        +      "required": [
        +        "field",
        +        "op",
        +        "value"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "equals": {
        +    "additionalProperties": {
        +      "anyOf": [
        +        {
        +          "type": [
        +            "string",
        +            "number",
        +            "integer",
        +            "boolean",
        +            "null"
        +          ]
        +        },
        +        {
        +          "items": {
        +            "type": [
        +              "string",
        +              "number",
        +              "integer",
        +              "boolean"
        +            ]
        +          },
        +          "type": "array"
        +        }
        +      ]
        +    },
        +    "description": "Exact field/value filters using filterable fields published by get_pack.",
        +    "type": "object"
        +  },
        +  "region_ids": {
        +    "description": "Canonical country or hierarchical loc_ids from get_pack, such as JPN or USA-TX.",
        +    "items": {
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "minItems": 1,
        +    "type": "array",
        +    "uniqueItems": true
        +  },
        +  "time": {
        +    "additionalProperties": false,
        +    "anyOf": [
        +      {
        +        "required": [
        +          "value"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "start"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "end"
        +        ]
        +      }
        +    ],
        +    "description": "Inclusive ISO-8601 date/datetime or integer-year selection. Use YYYY-MM-DD, not partial YYYY-MM strings.",
        +    "properties": {
        +      "end": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "format": "date",
        +            "type": "string"
        +          },
        +          {
        +            "type": "integer"
        +          }
        +        ]
        +      },
        +      "granularity": {
        +        "enum": [
        +          "daily",
        +          "weekly",
        +          "monthly",
        +          "yearly",
        +          "timestamp"
        +        ],
        +        "type": "string"
        +      },
        +      "start": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "format": "date",
        +            "type": "string"
        +          },
        +          {
        +            "type": "integer"
        +          }
        +        ]
        +      },
        +      "value": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "format": "date",
        +            "type": "string"
        +          },
        +          {
        +            "type": "integer"
        +          }
        +        ]
        +      }
        +    },
        +    "type": "object"
        +  }
        +}
      • changedInput schema / properties / metrics / description
        Previous value: -"Metric ids to return. Use event_count for aggregate counts when supported."New value: +"Exact metric ids from get_pack. Use event_count for aggregate counts only when get_pack publishes it."
      • addedInput schema / properties / metrics / items / minLength
        Added value: +1
      • addedInput schema / properties / metrics / minItems
        Added value: +1
      • addedInput schema / properties / metrics / uniqueItems
        Added value: +true
      • addedInput schema / properties / output / additionalProperties
        Added value: +false
      • changedInput schema / properties / output / description
        Previous value: -"Optional output controls such as response format hints."New value: +"Optional response controls. v1 supports rows only."
      • addedInput schema / properties / output / properties
        Added value: +{
        +  "format": {
        +    "default": "rows",
        +    "enum": [
        +      "rows"
        +    ],
        +    "type": "string"
        +  },
        +  "include_provenance": {
        +    "default": false,
        +    "type": "boolean"
        +  }
        +}
      • addedInput schema / properties / pack_id / minLength
        Added value: +1
      • changedInput schema / properties / sort / anyOf
        Previous value: -[
        -  {
        -    "type": "array"
        -  },
        -  {
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "direction": {
        +        "enum": [
        +          "asc",
        +          "desc"
        +        ],
        +        "type": "string"
        +      },
        +      "field": {
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "field"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "items": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direction": {
        +          "enum": [
        +            "asc",
        +            "desc"
        +          ],
        +          "type": "string"
        +        },
        +        "field": {
        +          "minLength": 1,
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  }
        +]
      • changedInput schema / properties / sort / description
        Previous value: -"Optional sort instructions for row-returning queries."New value: +"Sort by a sortable field from get_pack; direction defaults to asc."
  3. 1 tool update
    • Changedget_catalog2 fields changed
      • addedInput schema / properties / loc_id
        Added value: +{
        +  "description": "Optional DaedalMap loc_id for catalog='data'. Combine with time_range to discover packs confirmed for both place and time. For place details without pack filtering, use get_loc_id_info.",
        +  "type": "string"
        +}
      • addedInput schema / properties / time_range
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Optional inclusive discovery window for catalog='data'. At least one bound is required.",
        +  "properties": {
        +    "end": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "integer"
        +        }
        +      ]
        +    },
        +    "start": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "integer"
        +        }
        +      ]
        +    }
        +  },
        +  "type": "object"
        +}
  4. 5 tool updates
    • Changedget_catalog9 fields changed
      • addedInput schema / properties / catalog
        Added value: +{
        +  "default": "data",
        +  "description": "Catalog family. The geography facade defaults to geometry; other facades default to data.",
        +  "enum": [
        +    "data",
        +    "geometry"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / country_scope
        Added value: +{
        +  "description": "Optional ISO3 focus for catalog='geometry' with detail='lite'.",
        +  "type": "string"
        +}
      • addedInput schema / properties / detail
        Added value: +{
        +  "default": "lite",
        +  "description": "Use lite to select a pack, full for expanded metric/query inventories, or download for the complete raw catalog URL.",
        +  "enum": [
        +    "lite",
        +    "full",
        +    "download"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / anyOf
        Previous value: -[
        -  {
        -    "required": [
        -      "packs"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "error"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "catalog",
        +      "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_url
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / next_step / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "action"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "tool"
        +    ]
        +  }
        +]
      • removedOutput schema / properties / next_step / required
        Removed value: -[
        -  "action"
        -]
    • Addedget_data
    • Changedget_pack13 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"
        -]
    • Changedget_tool_help7 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "not": {
        +      "required": [
        +        "topic"
        +      ]
        +    },
        +    "required": [
        +      "tool_name"
        +    ]
        +  },
        +  {
        +    "not": {
        +      "required": [
        +        "tool_name"
        +      ]
        +    },
        +    "required": [
        +      "topic"
        +    ]
        +  }
        +]
      • addedInput schema / properties / question
        Added value: +{
        +  "description": "Optional question used only with a topic overview.",
        +  "type": "string"
        +}
      • changedInput schema / properties / tool_name / description
        Previous value: -"Exact tool name from tools/list."New value: +"Exact tool name from tools/list. Do not combine with topic."
      • addedInput schema / properties / topic
        Added value: +{
        +  "description": "Workflow overview. Do not combine with tool_name.",
        +  "enum": [
        +    "overview",
        +    "data",
        +    "disasters",
        +    "custom_data",
        +    "geometry"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "tool_name"
        -]
      • addedOutput schema / properties / next_step / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "action"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "tool"
        +    ]
        +  }
        +]
      • removedOutput schema / properties / next_step / required
        Removed value: -[
        -  "action"
        -]
    • Removedquery_dataset
  5. 1 tool update
    • Changedget_pack1 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"
        +}
  6. 4 tool updates
    • Changedget_catalog1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": true,
        +  "anyOf": [
        +    {
        +      "required": [
        +        "packs"
        +      ]
        +    },
        +    {
        +      "required": [
        +        "error"
        +      ]
        +    }
        +  ],
        +  "properties": {
        +    "catalog_version": {
        +      "type": "string"
        +    },
        +    "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"
        +    },
        +    "generated_at": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "guidance": {
        +      "type": "object"
        +    },
        +    "next_step": {
        +      "additionalProperties": true,
        +      "properties": {
        +        "action": {
        +          "type": "string"
        +        },
        +        "arguments": {
        +          "type": "object"
        +        },
        +        "tool": {
        +          "type": "string"
        +        },
        +        "url": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "action"
        +      ],
        +      "type": "object"
        +    },
        +    "pack_count": {
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "packs": {
        +      "items": {
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "provenance": {
        +      "type": "object"
        +    },
        +    "reason": {
        +      "type": "string"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "tool_families": {
        +      "items": {
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "warnings": {
        +      "items": {
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "type": "object"
        +}
    • Changedget_pack1 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"
        +}
    • Changedget_tool_help1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": true,
        +  "anyOf": [
        +    {
        +      "required": [
        +        "ok",
        +        "tool_name"
        +      ]
        +    },
        +    {
        +      "required": [
        +        "error"
        +      ]
        +    }
        +  ],
        +  "properties": {
        +    "access": {
        +      "type": "object"
        +    },
        +    "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"
        +    },
        +    "examples": {
        +      "type": "array"
        +    },
        +    "guidance": {
        +      "type": "object"
        +    },
        +    "important_output_fields": {
        +      "type": "array"
        +    },
        +    "input_schema": {
        +      "type": "object"
        +    },
        +    "next_step": {
        +      "additionalProperties": true,
        +      "properties": {
        +        "action": {
        +          "type": "string"
        +        },
        +        "arguments": {
        +          "type": "object"
        +        },
        +        "tool": {
        +          "type": "string"
        +        },
        +        "url": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "action"
        +      ],
        +      "type": "object"
        +    },
        +    "ok": {
        +      "type": "boolean"
        +    },
        +    "provenance": {
        +      "type": "object"
        +    },
        +    "purpose": {
        +      "type": "string"
        +    },
        +    "reason": {
        +      "type": "string"
        +    },
        +    "recommended_next_calls": {
        +      "type": "array"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "title": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "tool_name": {
        +      "type": "string"
        +    },
        +    "warnings": {
        +      "items": {
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "type": "object"
        +}
    • Changedquery_dataset1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": true,
        +  "anyOf": [
        +    {
        +      "required": [
        +        "source_id",
        +        "row_count",
        +        "rows"
        +      ]
        +    },
        +    {
        +      "required": [
        +        "error"
        +      ]
        +    }
        +  ],
        +  "properties": {
        +    "capability_id": {
        +      "type": "string"
        +    },
        +    "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"
        +    },
        +    "filters_applied": {
        +      "type": "object"
        +    },
        +    "guidance": {
        +      "type": "object"
        +    },
        +    "limit": {
        +      "type": "integer"
        +    },
        +    "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"
        +    },
        +    "query_mode": {
        +      "type": "string"
        +    },
        +    "reason": {
        +      "type": "string"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "row_count": {
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "rows": {
        +      "items": {
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "sort": {
        +      "type": "array"
        +    },
        +    "source_id": {
        +      "type": "string"
        +    },
        +    "truncated": {
        +      "type": "boolean"
        +    },
        +    "warnings": {
        +      "items": {
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "type": "object"
        +}
  7. 2 tool updates
    • Changedget_pack1 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."
    • Changedquery_dataset1 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."
  8. 1 tool update
    • Addedget_tool_help

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to query cross-country macroeconomic and financial statistics, including GDP, inflation, fiscal balance, debt, exchange rates, trade, and balance-of-payments data for comparison and time-series analysis.
    9 npm
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables querying 29,500+ World Bank development indicators for 200+ countries across 60+ years via MCP, with 7 tools for browsing topics, sources, countries, and indicators.
    352 npm
    3
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to discover, retrieve, and compare official international development indicators from sources such as the World Bank, FAOSTAT, WHO, UNICEF, and IMF, while preserving source identifiers, units, and citations.
    10
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.