Skip to main content
Glama

Gaia Adql Query

gaia_adql_query
Read-onlyIdempotent

Run a read-only ADQL (SQL-like) query against the ESA Gaia archive — the full DR3 catalogue plus its cross-match and variability tables — for questions a cone search cannot express: colour-magnitude cuts, proper-motion selections, cluster membership, cross-matches to 2MASS/SDSS/Hipparcos. Only SELECT is permitted and results are capped at 2,000 rows. Main table: gaiadr3.gaia_source.

Input Schema

NameRequiredDescriptionDefault
limitNoRow cap applied on top of any TOP in the query (default 100, max 2000).
queryYesAn ADQL SELECT statement, e.g. "SELECT TOP 10 source_id, ra, dec, phot_g_mean_mag FROM gaiadr3.gaia_source WHERE parallax > 100 ORDER BY phot_g_mean_mag ASC". Geometry uses CONTAINS(POINT('ICRS', ra, dec), CIRCLE('ICRS', ra0, dec0, radius_deg)) = 1.

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 the safety profile (readOnlyHint, idempotentHint, destructiveHint=false), but the description adds enforcement context the annotations do not: SELECT-only restriction and a 2,000-row result cap. It does not mention auth requirements, rate limits, or how invalid ADQL is reported, so it falls shy of a 5.

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?

Three sentences, front-loaded with the verb and scope, then the differentiator, then the hard limits. Every clause earns its place with no filler or restatement of the title.

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 no-output-schema query tool, the description supplies the catalogue context, allowed statement type, and result cap — enough to invoke correctly. Minor gap: it does not describe returned columns or error/empty-result behavior, though these are largely derivable from the user's own SELECT.

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%, so both `query` and `limit` are already documented with examples in the schema. The description only restates the row cap (2,000) and the main table name, adding marginal semantics beyond the schema — the baseline 3 applies when the schema carries the parameter burden.

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 ('Run a read-only ADQL query against the ESA Gaia archive') and scopes it to the DR3 catalogue plus cross-match/variability tables. It explicitly differentiates itself from a cone search and names the main table (gaiadr3.gaia_source), so an agent can distinguish it from gaia_cone_search and gaia_source_by_id without opening the 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?

Gives explicit when-to-use routing ('for questions a cone search cannot express') and enumerates concrete triggering cases: colour-magnitude cuts, proper-motion selections, cluster membership, cross-matches. It also states the hard constraint (only SELECT permitted), which tells the agent when the tool will refuse.

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.