Skip to main content
Glama

Summarize NIAID Data Search Results

niaid_data_summarize
Read-onlyIdempotent

Summarize NIAID Data search results without loading all records. Returns total count, field breakdowns, sample hits, and refinement tips to help narrow queries before fetching full data.

Instructions

Summarize a NIAID Data search without returning all records to the context.

Use this tool BEFORE niaid_data_query when a search may return many results, or when you need to understand what's available before fetching full records. Returns a compact overview: total count, distribution breakdowns across key fields, a small sample of top hits, and specific suggestions for narrowing the search.

This is the right tool when:

  • You don't know how many results a query will return

  • The user asks "what's available about X" or "give me an overview of X"

  • A previous niaid_data_query returned 1000+ hits

  • You need to help the user decide how to filter or focus their search

Args: params (SummarizeInput): Validated input parameters containing: - q (str): Elasticsearch query string (same syntax as niaid_data_query). Use '' to summarize the entire catalog. Default: ''. - sample_size (Optional[int]): Top-scoring records to show as examples (1–20). Does NOT return all results. Default: 5.

Returns: str: Markdown summary containing:

**Overview**
- Total matching records and query time

**Distribution** (fields with data only)
- Resource type breakdown (Dataset, ComputationalTool, ResourceCatalog, …)
- Access conditions (Open, Restricted, Closed)
- Health conditions, infectious agents, species, measurement techniques,
  topic categories, funders — wherever data exists for this query

**Sample records** (top `sample_size` hits by relevance)
- Name, type, ID, and description snippet for each

**Refinement suggestions**
Generated from the actual distribution data:
- Concrete filter additions (e.g., `AND @type:Dataset`)
- Field-specific search tips
- Pagination guidance if proceeding with niaid_data_query

Examples: - Use when: "What COVID-19 resources are available?" -> params with q='COVID-19' - Use when: A query just returned 48,000 results -> params with q= to understand how to narrow it - Use when: "Give me an overview of malaria datasets" -> params with q='malaria' - Don't use when: You need specific records (use niaid_data_query instead) - Don't use when: You have a specific ID (use niaid_data_get instead)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYesInput model for summarizing a potentially large set of NIAID Data results.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

Although annotations already declare readOnlyHint, openWorldHint, and idempotentHint, the description adds meaningful behavioral context beyond them: it does NOT return all records, returns a compact overview, limits sample records to sample_size, and has no side effects. No contradiction exists between annotations and description.

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 long but extremely well-structured with clear sections: overview, when to use, args, returns, and examples. It is front-loaded with the core purpose, and every section adds actionable information without filler.

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?

The description is fully self-contained: it explains the tool's exact output structure, parameter behavior, examples, and exclusions. Given the tool's moderate complexity and rich input schema, this description provides complete guidance for an agent to select and invoke it correctly.

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?

The input schema already covers both parameters with detailed descriptions, giving a strong baseline. The tool description reinforces key semantics ('same syntax as niaid_data_query', 'Use * for the entire catalog', 'Does NOT return all results') and adds practical examples, though much of this duplicates the schema text.

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 opens with a specific action and resource: 'Summarize a NIAID Data search without returning all records to the context.' It clearly distinguishes this from the sibling tools niaid_data_query and niaid_data_get by stating it provides an overview rather than full records.

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?

The description provides explicit when-to-use guidance with a bulleted list ('Use this tool BEFORE niaid_data_query when a search may return many results') and explicit when-not-to-use guidance ('Don't use when: You need specific records (use niaid_data_query instead)'). This fully clarifies tool selection versus alternatives.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mark-aronson/niaid-data-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server