Skip to main content
Glama

Запрос к датасету

query_dataset
Read-onlyIdempotent

Run JSONata expressions against a named dataset to filter or transform records; use a dataset ID or alias map as the expression root.

Instructions

Когда вызывать: нужна выборка JSONata поверх именованного датасета (корневой $ — данные датасета; для манифеста модели — seaf_jsonata_query). origin — ID датасета или {алиас: dataset_id} (тогда $ — мапа, датасет как $."алиас"); source оборачивается в (...) автоматически. Возвращает результат выражения; доступны любые датасеты, включая seaf.ds.* — сужайте выборку: ответ считается на портале целиком. Дальше: seaf_jsonata_query, если данных нет в датасете.

Input Schema

NameRequiredDescriptionDefault
originYesID датасета или {алиас: dataset_id}
paramsNoПараметры датасета (опционально, передаются как есть)
sourceYesВыражение JSONata над датасетом

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

The annotations already cover the safe-read profile (readOnlyHint, idempotentHint, destructiveHint=false), so the description only needed to add what they don't say — and it does: source is auto-wrapped in parentheses, any dataset including seaf.ds.* is reachable, and the answer is computed whole on the portal, which is a real cost signal. It stops short of stating permissions or result-size limits, so it falls just short of full disclosure.

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?

It is front-loaded with a 'when to call' clause and every sentence carries information (root $ semantics, origin forms, auto-wrapping, cost warning, fallback). The telegraphic, parenthesis-heavy style is dense but not padded; a slightly more linear phrasing would reach 5.

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?

There is no output schema, and the description compensates by saying the tool returns the expression's result and that evaluation happens entirely on the portal. Given three parameters, a nested origin type, and annotations that already declare the safety profile, this is essentially complete for correct invocation.

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%, so a 3 is the baseline; the description earns extra credit by explaining that origin accepts either a dataset ID or an {alias: dataset_id} map, and — importantly — what that choice does to the root $ (a map, with the dataset at $."alias"), plus that source gets wrapped automatically. The optional params object is left to its schema description, which is acceptable.

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 states a specific verb and resource — a JSONata selection over a named dataset — and immediately separates it from the sibling seaf_jsonata_query by naming which resource each one targets. An agent reading only the description can tell these two query tools 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 Guidelines5/5

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

It opens with an explicit 'Когда вызывать' condition (you need a JSONata selection over a named dataset), names the alternative for the model manifest case (seaf_jsonata_query), and closes with a fallback rule ('use seaf_jsonata_query if the data isn't in the dataset'). The conditions for choosing among siblings are spelled out rather than inferred.

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