Skip to main content
Glama

unhcr-refugees-mcp-server

Describe staged dataframes

unhcr_dataframe_describe
Read-onlyIdempotent

Describe a dataframe (df_XXXXX_XXXXX) staged by the unhcr_get_* tools — any response carrying a dataset handle staged its full result here — or list them all where this deployment allows listing. Each entry gives the source tool, query parameters, creation and expiry time, row count, whether the upstream fetch was complete, and the column schema. Read the columns here before writing SQL for unhcr_dataframe_query.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoOne dataframe to describe, as df_XXXXX_XXXXX (uppercase letters and digits): the dataset.name a unhcr_get_* result returned, or a register_as name. Omit to list every staged dataframe; a deployment that serves unauthenticated callers over HTTP turns listing off, and there the name is required.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent when the call failed. Absent on success.
noticeNoGuidance when nothing is staged or the named dataframe is gone.
dataframesNoStaged dataframes, newest first. Empty when none are staged.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, closed-world behavior, but the description adds real context: listing may be turned off for unauthenticated HTTP deployments, and entries carry creation/expiry time and a fetch-completeness flag. That is meaningful beyond the annotations, though permissions/error behavior is not discussed.

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?

Front-loads what is described and what is returned in two dense sentences with no filler. Slightly long, but every clause (source, listing constraint, entry fields, query follow-up) earns its place.

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?

With an output schema present, return values need not be explained, and the description still covers the listing caveat, entry contents, and the follow-up workflow. Nothing needed to invoke it correctly is missing.

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 param already documents the pattern, the register_as/dataset.name source, and the omit-to-list semantics. The description mostly restates this, so the baseline 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?

Names a specific verb (describe) and resource (dataframe staged by unhcr_get_* tools), and distinguishes the list-all mode. It also names the sibling unhcr_dataframe_query, so an agent can tell it apart from the query tool without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Explicitly instructs 'Read the columns here before writing SQL for unhcr_dataframe_query', giving a clear when-to-use and the alternative. It also states the deployment condition under which listing is unavailable and name becomes required.

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.