Skip to main content
Glama

Energetica — Argentine Oil & Gas Data

Server Details

Argentine oil & gas data — 40+ curated tables: production, wells, prices, investments, trade.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over the last 24 hours
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A3.6/5.0

Scored across 14 tools

Disambiguation5/5

Tools have clearly distinct roles: get_* for single-entity profiles, query_* for multi-entity aggregations, and meta-tools describe_data/execute_sql for metadata and custom SQL. The generic execute_sql overlaps with curated tools, but its description explicitly says to prefer curated tools when they fit, eliminating practical ambiguity.

Naming Consistency5/5

All tool names use snake_case with a consistent verb_noun pattern (e.g., get_area, query_production, rank_entities, resolve_entity). Verbs are semantically grouped by purpose (get for single entity, query for multi-entity), making the convention highly predictable.

Tool Count5/5

14 tools is well-scoped for the rich oil & gas data domain, covering production, wells, completions, investments, prices, reserves, trade, rankings, and entity resolution. Each tool earns its place without excessive fragmentation or redundancy.

Completeness4/5

The surface comprehensively covers core data domains with metadata, SQL fallback, entity resolution, and specialized queries. Minor gaps exist, such as no dedicated profile tool for basins, fields, or provinces (only generic grouping or ranking), but agents can work around these with query_* or execute_sql.

Available Tools

14 tools
describe_dataData catalogA
Read-onlyIdempotent
Inspect

Start here. Every table and view: description, period, rows, tool to use, warnings, and the last complete production month. With tablas, also their columns. Example: {tablas: ['pozos']}.

NameRequiredDescriptionDefault
tablasNoTables or views whose columns you need
max_rowsNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, covering the safety profile. The description adds modest behavioral context (the catalog surfaces warnings and the last complete production month, and expands to columns when 'tablas' is passed), but much of that overlaps the output schema, so it adds limited value beyond structured fields.

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?

Very compact and front-loaded — 'Start here' leads, followed by a terse enumeration of returned fields and a usage example. The field list is telegraphic but every clause carries information, and there is no filler.

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?

With an output schema present, the description needn't explain return values, and annotations cover the safety profile; the description supplies the orientation ('start here'), the array semantics, and a call example. The only real gap is that 'max_rows' is never explained, which is a minor omission for a 2-param discovery tool.

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 50%: 'tablas' is documented ('Tables or views whose columns you need') while 'max_rows' is completely undocumented. The description adds a concrete call example ({tablas: ['pozos']}) and clarifies that passing tablas also returns columns, which partly compensates, but 'max_rows' remains unexplained in both schema and description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description makes clear this is the catalog/discovery entry point that enumerates every table and view with metadata (description, period, rows, warnings, recommended tool), and 'Start here' plus the title 'Data catalog' distinguish it from the query_* siblings. It lacks an explicit verb ("describe"/"list"), relying on the field enumeration to convey purpose, but the intent is unambiguous.

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

Usage Guidelines4/5

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

'Start here' is a direct, front-loaded usage directive telling the agent to call this before other tools, and 'tool to use' implies the catalog routes the agent to the query_* siblings. It gives clear when-to-use context but names no explicit alternatives or when-not conditions.

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

execute_sqlRead-only SQLA
Read-onlyIdempotent
Inspect

Run read-only DuckDB SQL (a single SELECT or WITH) over the catalog tables and views. Prefer the curated tools when they fit; call describe_data first for tables and columns. Column names and values are in Spanish. Example: {sql: "SELECT anio, SUM(prod_petroleo_m3) FROM agg_produccion_mensual WHERE formacion = 'vaca muerta' GROUP BY 1 ORDER BY 1"}.

NameRequiredDescriptionDefault
sqlYes
max_rowsNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

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, openWorldHint=false), so the bar is lower, yet the description still adds real context: only a single statement is accepted, and column names/values are in Spanish, which is a non-obvious behavioral gotcha. It does not mention row-limiting behavior or query cost, so it falls short 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 tight sentences, front-loaded with the core capability and followed by routing guidance, prerequisite, a caveat, and a worked example. The example is long but directly earns its place by showing dialect, table naming, and aggregation style.

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?

An output schema exists, so return values need no explanation, and the description covers scope, safety, language gotcha, and prerequisite. The only gap is the undocumented 'max_rows' parameter and the default row cap, which matters for an agent composing open-ended SQL.

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 0%, so the description must carry the burden. It compensates well for the 'sql' parameter with the single-statement rule, the Spanish naming caveat, and a concrete example query, but 'max_rows' is never mentioned anywhere, leaving one of two parameters entirely undocumented.

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 (Run), resource (DuckDB SQL over catalog tables and views), and constraint (read-only, a single SELECT or WITH). This clearly distinguishes it from the curated siblings like query_production and get_well, which the description explicitly positions as preferred alternatives.

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 says when not to use it ('Prefer the curated tools when they fit') and names a required prerequisite workflow ('call describe_data first for tables and columns'). Both the alternative and the ordering constraint are stated, leaving nothing to inference.

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

get_areaConcession area profileB
Read-onlyIdempotent
Inspect

One concession area: 12-month production and year-on-year change, operators and shares, wells by type and state, top wells and the last 24 months. Example: {area_concesion: 'LOMA CAMPANA'}.

NameRequiredDescriptionDefault
max_rowsNo
area_concesionYesArea name; close names are resolved

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, and closed-world, so the safety profile is covered. The description adds genuine scope context beyond that — the exact data window (12 trailing months, last 24 months) — but says nothing about error behavior for unresolved names or what max_rows caps.

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?

Two sentences, zero filler, content scope front-loaded and the example value appended. Every clause conveys callable information.

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?

With an output schema present, return values needn't be explained, and the description still usefully states the data scope and resolution behavior along with a sample input. Only the unexplained max_rows and no-match handling keep it from being fully complete.

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 only 50%: area_concesion is documented and its 'close names are resolved' behavior restated in the description, plus a concrete example value. However, max_rows is unexplained in both schema and description, so the description only partly compensates for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('One concession area') and enumerates the exact profile contents (12-month production, YoY change, operators and shares, wells by type/state, top wells, last 24 months), so an agent can distinguish it from query_production or query_wells. It does not explicitly contrast with get_well/get_company, its closest siblings, so it stops short of a 5.

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

Usage Guidelines2/5

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

No when-to-use, when-not-to-use, or named alternative is given. The content list implies what you get back and the schema note about name resolution hints at usage, but an agent is left to infer that this is the entity-profile entry point versus resolve_entity or get_company.

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

get_companyCompany profileB
Read-onlyIdempotent
Inspect

One operator: 12-month production, national share, year-on-year change, areas, basins, wells, investments, reserves and, if listed, share price and SEC financials. Example: {empresa: 'VISTA ENERGY ARGENTINA SAU'}.

NameRequiredDescriptionDefault
empresaYesCompany name; close names are resolved
max_rowsNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/closed-world, so the bar is low; the description still adds real context by disclosing the conditional nature of share price and SEC financials ("if listed") and that the payload spans many domains. It does not describe pagination or how many rows the profile returns, but with annotations and an output schema in place this is solid added value.

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?

Two sentences, front-loaded with the scope ("One operator") followed by the payload inventory and an inline parameter example. The long comma-separated list is dense but each item earns its place by telling the agent what the profile returns.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-parameter tool with annotations and an output schema, the description is mostly adequate, but it spends words enumerating returns the output schema likely already defines while leaving max_rows entirely unexplained. One concrete gap remains for an agent tuning result size.

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 50%: empresa is documented in the schema and reinforced by a concrete example value, but max_rows is undocumented in both schema and description. The example adds marginal value over the schema for empresa while leaving the row-limit parameter fully opaque.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The verb is implicit (get) but the resource and scope are precise: a single-operator profile bundling production, share, change, areas, basins, wells, investments, reserves, and conditional share price/SEC financials. It clearly reads as an aggregate snapshot rather than a raw query, though it never names the sibling queries (query_production, query_investments, etc.) it supersedes.

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

Usage Guidelines2/5

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

"One operator" hints at single-entity scoping, but the description never says when to use this versus query_production, query_reserves, or rank_entities. No prerequisites, no when-not guidance, and the example illustrates the parameter rather than the usage context.

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

get_wellWell profileA
Read-onlyIdempotent
Inspect

One well by idpozo or sigla: registry data, IP30/90/180, cumulative volumes, recent GOR and water cut, last 36 months of production, fracture jobs and trajectory. Example: {sigla: 'YPF.Nq.LCa-1001(h)'}.

NameRequiredDescriptionDefault
siglaNoWell code; close codes are resolved
idpozoNo
max_rowsNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety is covered. The description adds real behavioral value beyond them by disclosing the breadth of the payload (production history depth, fracture jobs, trajectory), which lets an agent anticipate a large response and plan around it. It does not cover pagination or behavior when no identifier is supplied.

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?

Two sentences, front-loaded with the access pattern before the payload list, and the example earns its place by pinning down the identifier syntax. The middle enumeration is dense but each item is a distinct data category rather than filler.

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?

An output schema exists, so the description's enumeration of returned data is partly redundant but harmless. The notable gap is that zero parameters are required, yet the description never says what happens if neither sigla nor idpozo is provided, nor what max_rows controls.

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 only 33%, so the description carries extra burden and partially meets it: the worked example clarifies the sigla string format ('YPF.Nq.LCa-1001(h)'), which the schema only describes as 'Well code'. But idpozo is given no meaning at all and max_rows is never mentioned, even though it governs the response size implied by the long data enumeration.

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?

Starts with a specific verb+resource and cardinality ('One well by idpozo or sigla'), then enumerates exactly what the caller gets back: registry data, IP30/90/180, cumulative volumes, GOR, water cut, 36 months of production, fracture jobs, trajectory. An agent can distinguish this from the plural, filter-oriented sibling query_wells 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 Guidelines3/5

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

The description implies the usage context (you must already know a specific well identifier) and supplies a concrete sigla example, which is genuinely helpful. However, it never states when to prefer this over query_wells or resolve_entity, nor any prerequisite or exclusion, so usage is left to inference.

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

query_completionsFracture jobs (completions)C
Read-onlyIdempotent
Inspect

Fracture jobs by year, company (the one that reported the job), area, formation or well: wells, stages, stages per well, lateral length, proppant, water. Example: {formacion: 'vaca muerta', fecha_desde: '2025', agrupar_por: ['empresa']}.

NameRequiredDescriptionDefault
cuencaNo
empresaNo
max_rowsNo
formacionNo
agrupar_porNoDefault anio
fecha_desdeNoCompletion (end of fracture) from
fecha_hastaNo
area_concesionNo
subtipo_reservorioNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

C2.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so the safety profile is covered by structured data. The description adds no behavioral context beyond that - no note on aggregation semantics, how the metric set is chosen, or default date scope - so it earns only the baseline.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the resource and stays short (two sentences plus an example), which is good. But the dense run-on list mixes dimensions with metrics and the 'Example' payload is not clearly labeled as showing input syntax, so the structure is compact yet ambiguous.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the input side is incomplete: six of nine parameters are undocumented in anyone's schema or the description, and it is unclear what controls which metrics are returned. For a 9-parameter aggregation tool this leaves real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 22%, so the description must carry the load, but it only illustrates formacion/fecha_desde/agrupar_por via the example. It leaves cuenca, empresa, area_concesion, subtipo_reservorio, fecha_hasta and max_rows unexplained, and the metrics it enumerates (wells, stages, lateral length, proppant, water) are not parameters at all, which risks misleading an agent about what it can filter on.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific resource (fracture jobs/completions) and lists the dimensions it can be grouped by, so the general intent is inferrable. However it conflates output metrics (wells, stages, proppant, water) with filterable dimensions, so an agent cannot cleanly tell what is returned vs. filtered, and it does nothing to distinguish itself from siblings like query_production or query_wells.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance and never names an alternative among the many query_* siblings. There is no mention of prerequisites, exclusions, or how it differs from query_production/query_reserves/query_wells, which all sound similarly domain-adjacent.

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

query_investmentsUpstream investmentsA
Read-onlyIdempotent
Inspect

Upstream oil & gas investments in Argentina by company, basin, year and concept, in millions of USD (drilling, workovers, pipelines, facilities, seismic…). Example: {cuenca: 'NEUQUINA', anio_desde: 2023, concepto: 'perforacion'}.

NameRequiredDescriptionDefault
cuencaNo
empresaNo
conceptoNoInvestment concept, partial match ignoring accents (e.g. 'perforacion', 'reparacion de pozos', 'gasoductos', 'sismica')
max_rowsNo
anio_desdeNoYear of the sworn statement (DDJJ)
anio_hastaNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=false, so safety is covered; the description adds materially useful context beyond that — output units in millions of USD and the concept taxonomy (drilling, workovers, pipelines, facilities, seismic). It says nothing about result size limits or pagination, so it stops short 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences: the data scope and units come first, then filter dimensions, then a compact example. No filler, though the ellipsis list of concepts is mildly loose.

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?

An output schema exists, so return values need no explanation, and the description covers what the data is, its units and a working call example. The remaining gap is guidance on filter combinations and result limits, which is minor for a read-only filtered query.

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 only 33%, and only concepto and anio_desde carry descriptions. The description compensates partially by mapping the Spanish parameter names to dimensions (cuenca=basin, empresa=company, concepto=concept, anio_desde/year) and by demonstrating them in the example, but max_rows and anio_hasta remain unexplained in both places.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the specific resource (upstream oil & gas investments in Argentina), the breakdown dimensions (company, basin, year, concept) and the unit (millions of USD), which separates it from siblings like query_production, query_prices and query_reserves. It lacks an explicit verb ('query') and never names a sibling, so it is clear but not fully differentiated.

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

Usage Guidelines3/5

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

Usage is only implied: the worked example shows a typical invocation with cuenca/anio_desde/concepto, which hints at filtered lookups, but there is no statement of when to prefer this over execute_sql, rank_entities or the other query_* tools, and no note that all filters are optional.

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

query_pricesEnergy prices and exchange ratesA
Read-onlyIdempotent
Inspect

International and local energy prices: WTI, Brent, Henry Hub (daily, USD), Argentine crude price used for royalties by province (monthly, USD/bbl) and ARS/USD exchange rates (daily). Most recent first. Example: {serie: 'BRENT', fecha_desde: '2024', frecuencia: 'mensual'}.

NameRequiredDescriptionDefault
serieYes
max_rowsNo
provinciaNoOnly CRUDO_LOCAL; omit for every province
frecuenciaNoAverage; CRUDO_LOCAL is monthly
fecha_desdeNo
fecha_hastaNoInclusive

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, closed-world), so the description's job is supplementary. It adds genuinely useful behavior beyond the annotations: default ordering ('Most recent first') and per-series frequency/units (daily USD, monthly USD/bbl). It stays silent on max_rows defaults and pagination, which keeps it short 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences with no filler: data inventory first, then the ordering behavior, then a concrete example. Every clause carries information, though the middle inventory sentence is dense enough that it borders on a run-on.

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?

With an output schema present, return values need no explanation, and the description covers series semantics, frequencies, currencies, and call syntax. The only real omissions are the max_rows default/limit behavior and the accepted date format outside the example, which are minor for a read-only lookup tool.

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 description coverage is only 50%, so the description has to compensate, and it does for the most important parameter: it maps the bare enum values (BRENT, HENRY_HUB, CRUDO_LOCAL, USD_BLUE/MEP/CCL) to their real meaning and frequency. The example also pins the fecha_desde format. max_rows and fecha_hasta remain undocumented beyond the schema's 'Inclusive' note.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific resource and enumerates the exact series returned (WTI, Brent, Henry Hub, Argentine crude, ARS/USD rates), which makes it clearly distinguishable from siblings like query_production or query_trade. There is no explicit verb ('query'/'retrieve'), but the content coverage is specific enough that an agent knows exactly what data it yields.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: the enumerated series and the worked example show the call shape, but there is no explicit when-to-use, when-not-to-use, or named alternative among the query_* siblings. For a fairly distinct dataset the routing risk is low, so this is adequate but incomplete.

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

query_productionMonthly hydrocarbon productionA
Read-onlyIdempotent
Inspect

Oil, gas and water production (2006–present) by entity and period, grouped by up to 3 dimensions: volumes, BOE, producing/reporting wells, daily rate, GOR, water cut. Example: {area_concesion: "LOMA CAMPANA", fecha_desde: "2025", agrupar_por: ["anio"]}.

NameRequiredDescriptionDefault
cuencaNo
idpozoNo
empresaNo
max_rowsNo
metricasNoDefault petroleo, gas, agua (+ pozos_productores by mes); caudal_diario = volume / calendar days
formacionNo
provinciaNo
tipo_pozoNoe.g. Petrolífero, Gasífero
yacimientoNo
agrupar_porNoUp to 3 dimensions; default [mes]
fecha_desdeNo
fecha_hastaNoInclusive
tipo_recursoNo
area_concesionNo
subtipo_recursoNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/openWorldHint=false, so the safety profile is covered. The description adds genuine context beyond that: the 2006–present coverage window, the set of computable metrics, and the hard constraint of at most 3 grouping dimensions. It still omits operational behavior such as row limits or rate limits.

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?

Two tightly packed sentences: scope and metrics first, then an inline example. No filler, and the most decision-relevant information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation. However, for a 15-parameter, zero-required query tool with sparse schema descriptions, the definition does not explain how the many filter parameters interact, what the defaults are, or when to use this versus the other query tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 15 parameters and only 27% schema description coverage, the description carries most of the burden but does not deliver. It restates metricas and agrupar_por (which the schema already documents) while leaving cuenca, idpozo, empresa, max_rows, formacion, provincia, yacimiento, fecha_hasta, tipo_recurso and subtipo_recurso unexplained in both places.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource — querying oil, gas and water production by entity and period — with the data window (2006–present) and grouping capability. An agent can tell it is a production-data query, but it never distinguishes itself from sibling query_* tools such as query_wells or query_completions.

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

Usage Guidelines3/5

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

Usage is only implied: the example payload shows one way to call it, but there is no statement of when to prefer this over execute_sql, describe_data, or the other query_* siblings, and no exclusions or prerequisites.

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

query_reservesHydrocarbon reservesA
Read-onlyIdempotent
Inspect

P1/P2/P3 oil and gas reserves at Dec 31 by year, basin, company and resource type (end of useful life); oil and gas in separate columns. Default: latest year. Example: {anio: [2024], agrupar_por: ['cuenca'], categorias: ['P1']}.

NameRequiredDescriptionDefault
anioNoYears; default the latest
cuencaNo
empresaNo
max_rowsNo
categoriasNoDefault P1, P2, P3
agrupar_porNoDefault anio
tipo_recursoNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false. The description adds domain-specific context: reserves are measured at Dec 31, end of useful life, oil and gas are returned in separate columns, and the default year is the latest. It doesn't discuss auth, rate limits, or result size, but with annotations covering the safety profile this is adequate.

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?

Two sentences with a front-loaded summary of the data and dimensions, followed by default behavior and a compact example. No unnecessary text.

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?

The output schema documents return values and annotations cover the safety profile, so the description needn't repeat those. It provides the domain scope, default year, and a sample query, leaving only minor gaps like max_rows and explicit sibling routing.

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 43%, so the description must compensate. It illustrates anio, agrupar_por, and categorias in the example and mentions year, basin, company, and resource type, but leaves max_rows undocumented and doesn't explain the enum values for tipo_recurso beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource (P1/P2/P3 oil and gas reserves) and the dimensions (year, basin, company, resource type) plus output shape (oil and gas in separate columns). It doesn't explicitly contrast with sibling query tools like query_production, but the domain is distinct enough for an agent to select it.

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

Usage Guidelines3/5

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

It states the default behavior ('Default: latest year') and provides a sample request object, which helps parameter usage. However, it gives no explicit when-to-use guidance or comparison to alternatives such as query_production or query_trade.

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

query_tradeHydrocarbon trade balanceB
Read-onlyIdempotent
Inspect

Argentina hydrocarbon exports and imports by month: crude oil (HS 2709), refined products (HS 2710) and natural gas (HS 2711), FOB USD and kg. Example: {anio: 2025, flow: 'export', producto: 'crude'}.

NameRequiredDescriptionDefault
anioNo
flowNoTrade flow direction
max_rowsNo
productoNoProduct category

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful domain context: geographic scope, monthly granularity, the HS-coded product taxonomy, and reporting units. It says nothing about pagination, defaults for optional params, or result limits, so it clears the lowered bar but does not exceed it.

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?

Two sentences: the data scope is front-loaded, followed by a compact example. Every element 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.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and annotations cover safety and determinism. However, with zero required parameters the description should clarify defaults (e.g., what happens if producto or flow is omitted, what max_rows defaults to), and it does not. Adequate but with a clear gap for an all-optional-parameter query tool.

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 50% (flow and producto documented in-schema; anio and max_rows not). The description compensates partly by listing the product categories that map to the 'producto' enum and by giving a concrete example ({anio: 2025, flow: 'export', producto: 'crude'}) that demonstrates value shapes. It still leaves max_rows and the anio format undiscussed, so it adds only marginal meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (Argentina hydrocarbon exports/imports by month) and enumerates the exact products with HS codes (2709, 2710, 2711) and units (FOB USD, kg). This clearly distinguishes it as the trade-data query within the query_* family, though it never names a sibling tool to contrast against.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance, and no alternatives are mentioned. The example invocation shows the call syntax but does not tell the agent when to reach for this tool versus query_prices or query_production.

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

query_wellsWells searchB
Read-onlyIdempotent
Inspect

Wells in the registry (~86,000): location, type, current status and operator, cumulative production, first and last month with production, IP30. Example: {provincia: 'Neuquén', subtipo_recurso: 'SHALE', tipo_estado: 'activos'}.

NameRequiredDescriptionDefault
ordenNo
cuencaNo
empresaNo
max_rowsNo
formacionNo
provinciaNo
tipo_pozoNoe.g. Petrolífero, Gasífero
yacimientoNo
tipo_estadoNoExact registry status (e.g. Abandonado, Parado Transitoriamente) or 'activos'
segun_padronNo
tipo_recursoNo
area_concesionNo
con_produccionNo
subtipo_recursoNo
primera_produccion_desdeNoFirst month with oil or gas > 0 (or the registry fecha_primera_prod with segun_padron)
primera_produccion_hastaNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and closed-world behavior, so safety is covered. The description usefully adds dataset scale (~86,000 wells) and the exact output fields, which informs the agent about result shape. It is silent on pagination, the max_rows default, or ordering behavior, so it adds moderate but not rich context.

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?

Two sentences: the first front-loads the resource and output fields, the second provides a concrete filter example. No filler, no repetition of the title, and the most decision-relevant information leads.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the description correctly focuses on scope and fields. However, for a 16-parameter, zero-required, 19%-documented search tool, the description does not explain how filters combine, the meaning of orden, or the default page size, leaving real gaps for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 19% across 16 parameters, so the description carries a heavy compensation burden. The example illustrates only three filters (provincia, subtipo_recurso, tipo_estado) and hints at the 'activos' shorthand, leaving cuenca, empresa, formacion, orden, max_rows, con_produccion and the date bounds unexplained. It adds marginal value over the schema without closing the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource (wells in the registry), its scale (~86,000), and enumerates the returned fields: location, type, status, operator, cumulative production, first/last production month, IP30. This clearly distinguishes it from single-record siblings like get_well. It does not explicitly name why it differs from query_production or rank_entities, so it falls short of a 5.

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

Usage Guidelines3/5

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

There is no explicit when-to-use/when-not statement and no reference to alternatives such as get_well or query_production. The example query object implies intended usage (filtering by provincia, subtipo_recurso, tipo_estado) but leaves the agent to infer routing. Implied usage only.

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

rank_entitiesRankingsA
Read-onlyIdempotent
Inspect

Top N wells, areas, companies, fields, basins or formations by production, BOE, GOR, water cut, growth, new wells or IP30/90/180 (raw, per meter, per stage). Example: {entidad: 'pozo', metrica: 'ip30', subtipo_recurso: 'SHALE', tipo_pozo: 'Petrolífero', fecha_desde: '2025', fecha_hasta: '2025'}.

NameRequiredDescriptionDefault
nNoDefault 10
ordenNo
cuencaNo
empresaNo
entidadYes
metricaYesip*: wells of a first-production cohort (or their average per entity); others over the period
max_rowsNo
formacionNo
provinciaNo
tipo_pozoNoe.g. Petrolífero, Gasífero
yacimientoNo
fecha_desdeNoDefault: 12 months to fecha_hasta
fecha_hastaNoInclusive; default the last complete month
area_concesionNo
subtipo_recursoNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint=false), lowering the bar. The description adds essentially nothing behavioral beyond that — no note on result-size caps, how n interacts with max_rows, or cost/latency for large rankings. It is adequate only because the annotations carry the safety story.

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?

Two compact sentences, front-loaded with the capability statement followed by a concrete example. No filler, though the example consumes a fair share of a short description that could have spent that space on parameter meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and annotations cover safety. However, for a 15-parameter tool with only 33% schema coverage, the description omits default ordering, the n/max_rows distinction, and filter-combination behavior, leaving real gaps for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33% across 15 parameters, so the description should compensate but largely does not. It restates enum values already in the schema and gives one example payload, leaving n, orden, max_rows, provincia, empresa, cuenca, area_concesion, yacimiento, formacion and the n-vs-max_rows relationship unexplained.

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 (rank / 'top N') and enumerates the rankable resources (wells, areas, companies, fields, basins, formations) and ranking metrics (production, BOE, GOR, water cut, growth, new wells, IP30/90/180 variants). This is clearly distinguishable from the sibling query_* tools, which retrieve data rather than produce ordered rankings.

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

Usage Guidelines3/5

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

Usage is only implied: the 'Top N ... by ...' framing and the worked example suggest when to reach for it, but there is no explicit when-to-use, when-not-to-use, or named alternative (e.g. execute_sql or query_production for raw rows). The agent must infer the boundary against siblings.

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

resolve_entityFind companies, areas, fields and wellsB
Read-onlyIdempotent
Inspect

Free text → exact names for filters (companies, areas, fields, formations, basins, provinces, wells), with context and last month with production. Example: {texto: 'palmar', tipo: 'yacimiento'}.

NameRequiredDescriptionDefault
tipoNo
textoYesName or part of it
max_rowsNo

Output Schema

NameRequiredDescription
metaYes
rowsYes
columnsYes
sectionsNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and closed-world, so the safety profile is covered. The description adds that results come back 'with context and last month with production', which is genuine extra behavioral context, but it says nothing about matching semantics (partial vs exact, case, accent handling) or result limits.

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?

Two compact sentences plus a concrete example, with the core transformation front-loaded and no filler. The example's Spanish keys are terse but directly actionable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values needn't be detailed, and the tool is a safe read. Still, gaps remain for an agent to call it confidently: 'max_rows' behavior, default reference month for production, and matching rules for the required 'texto' parameter.

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?

With only 33% schema coverage, the description must compensate and it partially does: the category list helps decode the Spanish 'tipo' enum (yacimiento=field, cuenca=basin, etc.), and the example shows the call shape. However 'max_rows' is never explained and the enum-to-category mapping is only inferrable, not stated.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear transformation (free text → exact names) plus the explicit enumeration of entity categories, so an agent knows this is a name-resolution/lookup tool. It reads as distinguishable from siblings like get_company or query_wells, though it never names an alternative to contrast against.

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

Usage Guidelines3/5

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

The phrase 'for filters' implies the intended workflow (resolve a loose name before using it in a filtered query), but there is no explicit when-to-use, when-not-to-use, or comparison with sibling lookups such as get_well or rank_entities.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 16 tool updates
    • Addeddescribe_data
    • Changedexecute_sql8 fields changed
      • removedInput schema / properties / max_rows / description
        Removed value: -"Rows to return (default 200; capped by your tier). The result says if rows were cut."
      • removedInput schema / properties / max_rows / maximum
        Removed value: -9007199254740991
      • changedInput schema / properties / max_rows / type
        Previous value: -"integer"New value: +"number"
      • removedInput schema / properties / sql / description
        Removed value: -"SQL query (a single SELECT or WITH)"
      • addedOutput schema / properties / columns / items / properties / unit
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / meta / properties / definitions
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / meta / properties / notes
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / sections
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "columns": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "type": {
        +              "type": "string"
        +            },
        +            "unit": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "type"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "rows": {
        +        "items": {
        +          "items": {},
        +          "type": "array"
        +        },
        +        "type": "array"
        +      },
        +      "truncated": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "columns",
        +      "rows",
        +      "truncated"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Addedget_area
    • Addedget_company
    • Removedget_data_freshness
    • Removedget_schema
    • Addedget_well
    • Addedquery_completions
    • Changedquery_investments17 fields changed
      • changedInput schema / properties / anio_desde / description
        Previous value: -"Start year"New value: +"Year of the sworn statement (DDJJ)"
      • removedInput schema / properties / anio_desde / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / anio_desde / minimum
        Removed value: --9007199254740991
      • changedInput schema / properties / anio_desde / type
        Previous value: -"integer"New value: +"number"
      • removedInput schema / properties / anio_hasta / description
        Removed value: -"End year"
      • removedInput schema / properties / anio_hasta / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / anio_hasta / minimum
        Removed value: --9007199254740991
      • changedInput schema / properties / anio_hasta / type
        Previous value: -"integer"New value: +"number"
      • removedInput schema / properties / cuenca / description
        Removed value: -"Basin, partial match"
      • removedInput schema / properties / empresa / description
        Removed value: -"Company, partial match"
      • removedInput schema / properties / max_rows / description
        Removed value: -"Rows to return (default 200; capped by your tier). The result says if rows were cut."
      • removedInput schema / properties / max_rows / maximum
        Removed value: -9007199254740991
      • changedInput schema / properties / max_rows / type
        Previous value: -"integer"New value: +"number"
      • addedOutput schema / properties / columns / items / properties / unit
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / meta / properties / definitions
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / meta / properties / notes
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / sections
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "columns": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "type": {
        +              "type": "string"
        +            },
        +            "unit": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "type"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "rows": {
        +        "items": {
        +          "items": {},
        +          "type": "array"
        +        },
        +        "type": "array"
        +      },
        +      "truncated": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "columns",
        +      "rows",
        +      "truncated"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedquery_prices12 fields changed
      • removedInput schema / properties / fecha_desde / description
        Removed value: -"Start period YYYY, YYYY-MM or YYYY-MM-DD"
      • changedInput schema / properties / fecha_hasta / description
        Previous value: -"End period YYYY, YYYY-MM or YYYY-MM-DD, inclusive"New value: +"Inclusive"
      • changedInput schema / properties / frecuencia / description
        Previous value: -"Aggregation (average). Default: diario for daily series; CRUDO_LOCAL is monthly"New value: +"Average; CRUDO_LOCAL is monthly"
      • removedInput schema / properties / max_rows / description
        Removed value: -"Rows to return (default 200; capped by your tier). The result says if rows were cut."
      • removedInput schema / properties / max_rows / maximum
        Removed value: -9007199254740991
      • changedInput schema / properties / max_rows / type
        Previous value: -"integer"New value: +"number"
      • changedInput schema / properties / provincia / description
        Previous value: -"Only for CRUDO_LOCAL: province. Omit to get every province"New value: +"Only CRUDO_LOCAL; omit for every province"
      • removedInput schema / properties / serie / description
        Removed value: -"Price series to query"
      • addedOutput schema / properties / columns / items / properties / unit
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / meta / properties / definitions
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / meta / properties / notes
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / sections
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "columns": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "type": {
        +              "type": "string"
        +            },
        +            "unit": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "type"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "rows": {
        +        "items": {
        +          "items": {},
        +          "type": "array"
        +        },
        +        "type": "array"
        +      },
        +      "truncated": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "columns",
        +      "rows",
        +      "truncated"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedquery_production26 fields changed
      • changedInput schema / properties / agrupar_por / description
        Previous value: -"Group results by dimension. Default: mes"New value: +"Up to 3 dimensions; default [mes]"
      • removedInput schema / properties / agrupar_por / enum
        Removed value: -[
        -  "mes",
        -  "anio",
        -  "cuenca",
        -  "empresa",
        -  "formacion"
        -]
      • addedInput schema / properties / agrupar_por / items
        Added value: +{
        +  "enum": [
        +    "mes",
        +    "anio",
        +    "empresa",
        +    "cuenca",
        +    "provincia",
        +    "area_concesion",
        +    "yacimiento",
        +    "formacion",
        +    "tipo_recurso",
        +    "subtipo_recurso",
        +    "tipo_pozo",
        +    "idpozo"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / agrupar_por / maxItems
        Added value: +3
      • changedInput schema / properties / agrupar_por / type
        Previous value: -"string"New value: +"array"
      • addedInput schema / properties / area_concesion
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / cuenca / description
        Removed value: -"Basin, partial match (e.g. NEUQUINA, GOLFO SAN JORGE, CUYANA, AUSTRAL, NOROESTE)"
      • removedInput schema / properties / empresa / description
        Removed value: -"Operating company, partial match (e.g. YPF, PAN AMERICAN, VISTA, TECPETROL)"
      • removedInput schema / properties / fecha_desde / description
        Removed value: -"Start period YYYY or YYYY-MM (e.g. 2020-01)"
      • changedInput schema / properties / fecha_hasta / description
        Previous value: -"End period YYYY or YYYY-MM, inclusive (e.g. 2025-12)"New value: +"Inclusive"
      • removedInput schema / properties / formacion / description
        Removed value: -"Geological formation, partial match (e.g. VACA MUERTA, D-129)"
      • addedInput schema / properties / idpozo
        Added value: +{
        +  "items": {
        +    "type": "number"
        +  },
        +  "maxItems": 50,
        +  "type": "array"
        +}
      • removedInput schema / properties / max_rows / description
        Removed value: -"Rows to return (default 200; capped by your tier). The result says if rows were cut."
      • removedInput schema / properties / max_rows / maximum
        Removed value: -9007199254740991
      • changedInput schema / properties / max_rows / type
        Previous value: -"integer"New value: +"number"
      • addedInput schema / properties / metricas
        Added value: +{
        +  "description": "Default petroleo, gas, agua (+ pozos_productores by mes); caudal_diario = volume / calendar days",
        +  "items": {
        +    "enum": [
        +      "petroleo",
        +      "gas",
        +      "agua",
        +      "boe",
        +      "gor",
        +      "water_cut",
        +      "pozos_productores",
        +      "pozos_informantes",
        +      "caudal_diario"
        +    ],
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / provincia
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / recurso
        Removed value: -{
        -  "description": "Resource type filter. Default: todos",
        -  "enum": [
        -    "petroleo",
        -    "gas",
        -    "agua",
        -    "todos"
        -  ],
        -  "type": "string"
        -}
      • addedInput schema / properties / subtipo_recurso
        Added value: +{
        +  "enum": [
        +    "SHALE",
        +    "TIGHT"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / tipo_pozo
        Added value: +{
        +  "description": "e.g. Petrolífero, Gasífero",
        +  "type": "string"
        +}
      • addedInput schema / properties / tipo_recurso
        Added value: +{
        +  "enum": [
        +    "CONVENCIONAL",
        +    "NO CONVENCIONAL",
        +    "SIN RESERVORIO",
        +    "NO DISCRIMINADO"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / yacimiento
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / columns / items / properties / unit
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / meta / properties / definitions
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / meta / properties / notes
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / sections
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "columns": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "type": {
        +              "type": "string"
        +            },
        +            "unit": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "type"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "rows": {
        +        "items": {
        +          "items": {},
        +          "type": "array"
        +        },
        +        "type": "array"
        +      },
        +      "truncated": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "columns",
        +      "rows",
        +      "truncated"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Addedquery_reserves
    • Changedquery_trade11 fields changed
      • removedInput schema / properties / anio / description
        Removed value: -"Filter by year"
      • removedInput schema / properties / anio / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / anio / minimum
        Removed value: --9007199254740991
      • changedInput schema / properties / anio / type
        Previous value: -"integer"New value: +"number"
      • removedInput schema / properties / max_rows / description
        Removed value: -"Rows to return (default 200; capped by your tier). The result says if rows were cut."
      • removedInput schema / properties / max_rows / maximum
        Removed value: -9007199254740991
      • changedInput schema / properties / max_rows / type
        Previous value: -"integer"New value: +"number"
      • addedOutput schema / properties / columns / items / properties / unit
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / meta / properties / definitions
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / meta / properties / notes
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / sections
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "columns": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "type": {
        +              "type": "string"
        +            },
        +            "unit": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "type"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "rows": {
        +        "items": {
        +          "items": {},
        +          "type": "array"
        +        },
        +        "type": "array"
        +      },
        +      "truncated": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "columns",
        +      "rows",
        +      "truncated"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedquery_wells23 fields changed
      • addedInput schema / properties / area_concesion
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / con_produccion / description
        Removed value: -"Only wells with cumulative production > 0"
      • removedInput schema / properties / cuenca / description
        Removed value: -"Basin, partial match (NEUQUINA, GOLFO SAN JORGE, etc.)"
      • removedInput schema / properties / empresa / description
        Removed value: -"Operating company, partial match"
      • removedInput schema / properties / formacion / description
        Removed value: -"Geological formation, partial match"
      • removedInput schema / properties / max_rows / description
        Removed value: -"Rows to return (default 200; capped by your tier). The result says if rows were cut."
      • removedInput schema / properties / max_rows / maximum
        Removed value: -9007199254740991
      • changedInput schema / properties / max_rows / type
        Previous value: -"integer"New value: +"number"
      • addedInput schema / properties / orden
        Added value: +{
        +  "enum": [
        +    "acumulado",
        +    "ip30",
        +    "primera_produccion"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / primera_produccion_desde
        Added value: +{
        +  "description": "First month with oil or gas > 0 (or the registry fecha_primera_prod with segun_padron)",
        +  "type": "string"
        +}
      • addedInput schema / properties / primera_produccion_hasta
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / provincia / description
        Removed value: -"Province, partial match ignoring case and accents (e.g. Neuquén, Chubut, Santa Cruz)"
      • addedInput schema / properties / segun_padron
        Added value: +{
        +  "type": "boolean"
        +}
      • addedInput schema / properties / subtipo_recurso
        Added value: +{
        +  "enum": [
        +    "SHALE",
        +    "TIGHT"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / tipo_estado / description
        Previous value: -"Exact well status, or 'activos' for all active states (Extracción Efectiva, En Inyección Efectiva, Otras Situación Activo)"New value: +"Exact registry status (e.g. Abandonado, Parado Transitoriamente) or 'activos'"
      • removedInput schema / properties / tipo_estado / enum
        Removed value: -[
        -  "Extracción Efectiva",
        -  "Abandonado",
        -  "En Estudio",
        -  "En Reserva para Recup. Sec./Asist.",
        -  "Parado Transitoriamente",
        -  "En Inyección Efectiva",
        -  "A Abandonar",
        -  "En Espera de Reparación",
        -  "Otras Situación Inactivo",
        -  "Abandono Temporario",
        -  "Parado Alta Relación Agua/Petróleo",
        -  "En Reserva de Gas",
        -  "Otras Situación Activo",
        -  "Parado Alta Relación Gas/Petróleo",
        -  "En Reparación",
        -  "Mantenimiento de Presión",
        -  "activos"
        -]
      • addedInput schema / properties / tipo_pozo
        Added value: +{
        +  "description": "e.g. Petrolífero, Gasífero",
        +  "type": "string"
        +}
      • removedInput schema / properties / tipo_recurso / description
        Removed value: -"Resource type (NO CONVENCIONAL = shale/tight)"
      • addedInput schema / properties / yacimiento
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / columns / items / properties / unit
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / meta / properties / definitions
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / meta / properties / notes
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / sections
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "columns": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "name": {
        +              "type": "string"
        +            },
        +            "type": {
        +              "type": "string"
        +            },
        +            "unit": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "type"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "rows": {
        +        "items": {
        +          "items": {},
        +          "type": "array"
        +        },
        +        "type": "array"
        +      },
        +      "truncated": {
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "columns",
        +      "rows",
        +      "truncated"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Addedrank_entities
    • Addedresolve_entity
  2. 8 tool updates
    • Changedexecute_sql4 fields changed
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / sql / description
        Previous value: -"SQL query (SELECT or WITH only)"New value: +"SQL query (a single SELECT or WITH)"
      • addedInput schema / properties / sql / minLength
        Added value: +1
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedget_data_freshness2 fields changed
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedget_schema3 fields changed
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 1000; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / tabla / description
        Previous value: -"Specific table name. Omit to get all tables."New value: +"Table or view name. Omit to get every table"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedquery_investments11 fields changed
      • addedInput schema / properties / anio_desde / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / anio_desde / minimum
        Added value: +-9007199254740991
      • changedInput schema / properties / anio_desde / type
        Previous value: -"number"New value: +"integer"
      • addedInput schema / properties / anio_hasta / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / anio_hasta / minimum
        Added value: +-9007199254740991
      • changedInput schema / properties / anio_hasta / type
        Previous value: -"number"New value: +"integer"
      • changedInput schema / properties / concepto / description
        Previous value: -"Investment concept, partial match (e.g. 'perforacion', 'reparacion de pozos', 'gasoductos', 'sismica')"New value: +"Investment concept, partial match ignoring accents (e.g. 'perforacion', 'reparacion de pozos', 'gasoductos', 'sismica')"
      • changedInput schema / properties / cuenca / description
        Previous value: -"Basin filter"New value: +"Basin, partial match"
      • changedInput schema / properties / empresa / description
        Previous value: -"Company filter"New value: +"Company, partial match"
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedquery_prices3 fields changed
      • changedInput schema / properties / frecuencia / description
        Previous value: -"Frequency aggregation. Default: diario for intl prices, mensual for local"New value: +"Aggregation (average). Default: diario for daily series; CRUDO_LOCAL is monthly"
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedquery_production5 fields changed
      • changedInput schema / properties / cuenca / description
        Previous value: -"Basin name filter (e.g. NEUQUINA, GOLFO SAN JORGE, CUYANA, AUSTRAL, NOROESTE)"New value: +"Basin, partial match (e.g. NEUQUINA, GOLFO SAN JORGE, CUYANA, AUSTRAL, NOROESTE)"
      • changedInput schema / properties / empresa / description
        Previous value: -"Operating company filter (e.g. YPF, PAN AMERICAN ENERGY, VISTA, TECPETROL)"New value: +"Operating company, partial match (e.g. YPF, PAN AMERICAN, VISTA, TECPETROL)"
      • changedInput schema / properties / formacion / description
        Previous value: -"Geological formation filter (e.g. VACA MUERTA, D-129, CENTENARIO)"New value: +"Geological formation, partial match (e.g. VACA MUERTA, D-129)"
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedquery_trade5 fields changed
      • addedInput schema / properties / anio / maximum
        Added value: +9007199254740991
      • addedInput schema / properties / anio / minimum
        Added value: +-9007199254740991
      • changedInput schema / properties / anio / type
        Previous value: -"number"New value: +"integer"
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
    • Changedquery_wells7 fields changed
      • changedInput schema / properties / cuenca / description
        Previous value: -"Basin filter (NEUQUINA, GOLFO SAN JORGE, etc.)"New value: +"Basin, partial match (NEUQUINA, GOLFO SAN JORGE, etc.)"
      • changedInput schema / properties / empresa / description
        Previous value: -"Operating company filter"New value: +"Operating company, partial match"
      • changedInput schema / properties / formacion / description
        Previous value: -"Geological formation"New value: +"Geological formation, partial match"
      • removedInput schema / properties / limit
        Removed value: -{
        -  "description": "Max results, default 100",
        -  "maximum": 1000,
        -  "minimum": 1,
        -  "type": "number"
        -}
      • addedInput schema / properties / max_rows
        Added value: +{
        +  "description": "Rows to return (default 200; capped by your tier). The result says if rows were cut.",
        +  "maximum": 9007199254740991,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedInput schema / properties / provincia / description
        Previous value: -"Province filter, partial match ignoring case and accents (e.g. Neuquén, Chubut, Santa Cruz)"New value: +"Province, partial match ignoring case and accents (e.g. Neuquén, Chubut, Santa Cruz)"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "columns": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "name": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "type"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "meta": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "max_rows": {
        +          "type": "number"
        +        },
        +        "query_ms": {
        +          "type": "number"
        +        },
        +        "returned": {
        +          "type": "number"
        +        },
        +        "sources": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "sql": {
        +          "type": "string"
        +        },
        +        "truncated": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "returned",
        +        "truncated",
        +        "max_rows",
        +        "sources",
        +        "query_ms"
        +      ],
        +      "type": "object"
        +    },
        +    "rows": {
        +      "items": {
        +        "items": {},
        +        "type": "array"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "columns",
        +    "rows",
        +    "meta"
        +  ],
        +  "type": "object"
        +}
  3. 3 tool updates
    • Changedquery_investments1 field changed
      • changedInput schema / properties / concepto / description
        Previous value: -"Investment concept (e.g. perforacion, terminacion, infraestructura)"New value: +"Investment concept, partial match (e.g. 'perforacion', 'reparacion de pozos', 'gasoductos', 'sismica')"
    • Changedquery_prices2 fields changed
      • addedInput schema / properties / provincia
        Added value: +{
        +  "description": "Only for CRUDO_LOCAL: province. Omit to get every province",
        +  "enum": [
        +    "NEUQUEN",
        +    "CHUBUT",
        +    "MENDOZA",
        +    "SANTA CRUZ",
        +    "SALTA",
        +    "RIO NEGRO",
        +    "LA PAMPA",
        +    "TIERRA DEL FUEGO",
        +    "FORMOSA",
        +    "JUJUY",
        +    "ESTADO NACIONAL"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / serie / enum
        Previous value: -[
        -  "WTI",
        -  "BRENT",
        -  "HENRY_HUB",
        -  "ESCALANTE",
        -  "MEDANITO",
        -  "USD_OFICIAL",
        -  "USD_BLUE",
        -  "USD_MEP",
        -  "USD_CCL"
        -]New value: +[
        +  "WTI",
        +  "BRENT",
        +  "HENRY_HUB",
        +  "CRUDO_LOCAL",
        +  "USD_OFICIAL",
        +  "USD_MAYORISTA",
        +  "USD_BLUE",
        +  "USD_MEP",
        +  "USD_CCL"
        +]
    • Changedquery_wells1 field changed
      • changedInput schema / properties / provincia / description
        Previous value: -"Province filter (NEUQUEN, CHUBUT, MENDOZA, etc.)"New value: +"Province filter, partial match ignoring case and accents (e.g. Neuquén, Chubut, Santa Cruz)"
  4. 3 tool updates
    • Changedquery_prices2 fields changed
      • changedInput schema / properties / fecha_desde / description
        Previous value: -"Start date YYYY-MM-DD"New value: +"Start period YYYY, YYYY-MM or YYYY-MM-DD"
      • changedInput schema / properties / fecha_hasta / description
        Previous value: -"End date YYYY-MM-DD"New value: +"End period YYYY, YYYY-MM or YYYY-MM-DD, inclusive"
    • Changedquery_production2 fields changed
      • changedInput schema / properties / fecha_desde / description
        Previous value: -"Start date YYYY-MM (e.g. 2020-01)"New value: +"Start period YYYY or YYYY-MM (e.g. 2020-01)"
      • changedInput schema / properties / fecha_hasta / description
        Previous value: -"End date YYYY-MM (e.g. 2025-12)"New value: +"End period YYYY or YYYY-MM, inclusive (e.g. 2025-12)"
    • Changedquery_wells4 fields changed
      • changedInput schema / properties / tipo_estado / description
        Previous value: -"Well status (e.g. Activo, Inactivo, Abandonado)"New value: +"Exact well status, or 'activos' for all active states (Extracción Efectiva, En Inyección Efectiva, Otras Situación Activo)"
      • addedInput schema / properties / tipo_estado / enum
        Added value: +[
        +  "Extracción Efectiva",
        +  "Abandonado",
        +  "En Estudio",
        +  "En Reserva para Recup. Sec./Asist.",
        +  "Parado Transitoriamente",
        +  "En Inyección Efectiva",
        +  "A Abandonar",
        +  "En Espera de Reparación",
        +  "Otras Situación Inactivo",
        +  "Abandono Temporario",
        +  "Parado Alta Relación Agua/Petróleo",
        +  "En Reserva de Gas",
        +  "Otras Situación Activo",
        +  "Parado Alta Relación Gas/Petróleo",
        +  "En Reparación",
        +  "Mantenimiento de Presión",
        +  "activos"
        +]
      • changedInput schema / properties / tipo_recurso / description
        Previous value: -"Resource type"New value: +"Resource type (NO CONVENCIONAL = shale/tight)"
      • changedInput schema / properties / tipo_recurso / enum
        Previous value: -[
        -  "PETROLEO",
        -  "GAS",
        -  "AMBOS"
        -]New value: +[
        +  "CONVENCIONAL",
        +  "NO CONVENCIONAL",
        +  "SIN RESERVORIO",
        +  "NO DISCRIMINADO"
        +]
  5. 8 tool updates
    • First observedexecute_sql
    • First observedget_data_freshness
    • First observedget_schema
    • First observedquery_investments
    • First observedquery_prices
    • First observedquery_production
    • First observedquery_trade
    • First observedquery_wells

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    B
    maintenance
    Lets AI assistants answer natural-language questions about Argentina's official statistics — inflation, salaries, basic baskets, poverty, employment, activity, trade and population — by querying a daily-updated mirror of the 19 INDEC catalog datasets with SQL, no registration or token required. It also returns cited periods, flags provisional or confidential data, and enforces rate limits.
    17
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides primary-source lithium and battery-metals mining data from SEC/ASX/TSX/SEDAR filings, with production, costs, reserves, and financials for 40 producers and 49 mines, paid per request via USDC on Base.
    66 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to query Argentina’s official INDEC statistics through its public API, covering inflation, baskets, wages, economic activity, poverty, population, and foreign trade. Provides Spanish-language tools, resources, and prompts for discovering datasets, filtering series, aggregating data, and generating economic reports.
    19
    628 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources