Skip to main content
Glama

Get Open Context Search Facets

opencontext.archaeology.facets
Read-onlyIdempotent

Retrieve aggregated facet statistics for a search query across Open Context without downloading individual records. Returns: total matched record count, query time, earliest and latest date range in BCE/CE across all matches, geographic distribution (continent-level facets with counts, e.g. Asia 99K, Europe 89K), item type breakdown (Subjects of Observation, Media, Documents, Projects), top matching excavation projects with counts, and linked-data description facets (Creator, License, Subject, etc.). Use this tool to quickly understand the scope and geographic/temporal distribution of archaeological records matching a query before retrieving individual items with opencontext.archaeology.search. Pass an empty string to get global database statistics.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query to compute facets for (e.g. "Roman pottery", "Bronze Age"). Use an empty string "" to get facets across the entire Open Context database.
item_typeNoOptional filter to restrict facet computation to a specific item type. "subjects" for excavated objects; "media" for images/3D; "documents" for field notes; "all" or omit to aggregate across all types.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent only when the call failed. Includes error code, message, request_id, and any provider-specific extras.
resultNoTool response payload. Shape varies per tool — consult the tool description and inputSchema. May be an object, array, string, or number depending on the upstream provider response.

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 declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds meaningful behavioral context beyond that: it notes the tool returns aggregated statistics rather than downloading records, enumerates the full response payload, and specifies the empty-string behavior for global stats. It also surfaces the BCE/CE date-range convention. This is significant added value without contradicting the annotations.

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?

The description front-loads the core purpose and the no-download contrast, then organizes the return payload as a compact, comma-separated list. The usage guidance is integrated naturally. It is denser than average but every sentence carries distinct information; no filler or redundancy.

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?

Given that an output schema exists and annotations cover safety/idempotency, the description is complete: it states what the tool does, what it returns, when to use it in relation to the sibling search tool, and the special empty-string case. No material information is missing for an agent to select and invoke this tool correctly.

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%, with both 'query' and 'item_type' fully documented in the input schema, including the empty-string convention and enum meanings. The description reinforces the empty-string usage but does not add information beyond what the schema already provides. Baseline 3 is appropriate because the schema carries the parameter semantics.

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 'Retrieve aggregated facet statistics for a search query across Open Context without downloading individual records,' a specific verb-resource pairing that clearly defines the tool. It goes further to enumerate the exact return dimensions (total count, query time, date range, geography, item type, projects, linked-data facets), making the purpose unambiguous. It explicitly differentiates from the sibling opencontext.archaeology.search, which is a search tool for retrieving records rather than summaries.

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 usage guidance: 'Use this tool to quickly understand the scope and geographic/temporal distribution of archaeological records matching a query before retrieving individual items with opencontext.archaeology.search.' This gives a clear when-to-use instruction and names the alternative. It also documents the global-database case: 'Pass an empty string to get global database statistics.' No inference is 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.