Skip to main content
Glama
arthursantosmedia-stack

Brazil Retail & Fuel Price Intelligence MCP Server

Mestre Prático & NutriPreço — Brazil Retail & Fuel Price Intelligence MCP Server

MCP Server License: MIT

Official sovereign Model Context Protocol (MCP) server providing real-time audited fuel prices (ANP) and grocery basket indices (SEFAZ NFC-e) across all 27 Brazilian states and 417+ cities.

Built and maintained by Holding Arthur Luis Vieira dos Santos (Mestre Prático & NutriPreço).

🌐 Live Remote MCP Endpoint (Zero-Install HTTP / Edge)

Related MCP server: mcp-brasil

🔌 Quick Setup (Claude Desktop / Cursor / Windsurf)

Add this directly to your claude_desktop_config.json or MCP client settings:

{
  "mcpServers": {
    "mestrepratico": {
      "type": "http",
      "url": "https://mestrepratico.com.br/mcp/v1"
    }
  }
}

🛠️ Available Tools

  1. brazil_fuel_prices

    • Queries official audited fuel prices (Regular Gasoline, Additive Gasoline, Ethanol, Diesel S10, CNG) from Brazil's National Petroleum Agency (ANP) across 4,750+ gas stations in all 27 states (sp, rj, mg, ba, pr, rs, df, etc.).

  2. brazil_grocery_basket

    • Queries and compares audited prices of Brazil's basic food basket (rice, beans, coffee, oil, milk, sugar, beef) sourced from electronic consumer invoices (NFC-e SEFAZ).

  3. cost_of_living_brazil

    • Returns consolidated regional cost-of-living metrics, purchasing power parity, and live BRL/USD comparisons for expats, digital nomads, and economic analysts.

📄 License

MIT License — Holding Arthur Luis Vieira dos Santos.

Available Tools

3 tools
brazil_fuel_pricesA

Queries real-time audited fuel prices (Gasoline, Ethanol, Diesel S10, CNG) from Brazil ANP across 4,750+ stations in all 27 states.

ParametersJSON Schema
NameRequiredDescriptionDefault
ufYesBrazilian state code (e.g., 'sp', 'rj', 'mg', 'ba', 'pr', 'rs', 'df')
cidadeNoCity name or slug (e.g., 'sao-paulo', 'cabo-frio')

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does add useful provenance context (ANP, audited, real-time, coverage figures), and 'Queries' implies a read-only operation, but it says nothing about rate limits, auth requirements, pagination, or return shape.

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?

A single dense sentence with zero filler; the core capability and data scope are front-loaded. Nothing in it is redundant or padded.

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

Completeness4/5

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

For a simple two-parameter read query with full schema coverage and no output schema, the description covers what an agent needs to know before calling it: what data, from where, and how fresh. Only return-format details are absent, and there is no output schema demanding them.

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

Parameters3/5

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

Schema description coverage is 100%, so both 'uf' and 'cidade' are already documented with examples in the schema. The description adds no parameter-level meaning beyond that, making the baseline 3 appropriate.

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 (Queries) and resource (real-time audited fuel prices) plus the data source (ANP) and scope (4,750+ stations, 27 states). An agent can distinguish this from brazil_grocery_basket and cost_of_living_brazil, though the description never explicitly contrasts itself with those siblings.

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 description makes clear you call this when you need Brazilian fuel price data, but it names no alternatives, no when-not-to-use conditions, and no prerequisites. No sibling routing guidance is offered.

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

brazil_grocery_basketB

Queries and compares audited prices of Brazil's basic food basket sourced from electronic consumer invoices (NFC-e SEFAZ).

ParametersJSON Schema
NameRequiredDescriptionDefault
ufYesBrazilian state code (e.g., 'sp', 'rj')
cidadeNoCity name

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses provenance ('audited', 'electronic consumer invoices (NFC-e SEFAZ)'), which tells the agent the data is official and traceable, but says nothing about freshness, coverage, rate limits, or return shape.

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?

A single front-loaded sentence with no filler; the resource and its data source are packed efficiently with zero redundancy against title or annotations.

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 two-parameter read-only query with full schema coverage, the description covers what the data is but omits how 'compares' works (across states, cities, or time), the required geographic granularity, and any indication of return shape in the absence of an output schema. Adequate but with visible gaps.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters are already documented in the schema (uf as Brazilian state code, cidade as city name). The description adds no syntax, format, or interaction detail beyond what the schema provides, matching the baseline of 3.

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 pair (queries and compares) and a specific resource (Brazil's basic food basket prices), plus its provenance (NFC-e SEFAZ audited invoices). This clearly separates it from brazil_fuel_prices and cost_of_living_brazil by data domain, though it never names those siblings explicitly.

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 when-to-use guidance, no mention of alternatives for price/cost queries, and no prerequisites. The only hint of usage is the word 'compares,' which implies cross-location comparison but leaves the agent to infer the trigger conditions.

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

cost_of_living_brazilB

Returns consolidated regional cost-of-living index and purchasing power parity (BRL/USD) in Brazil.

ParametersJSON Schema
NameRequiredDescriptionDefault
ufNoState code
comparar_com_dolarNoConvert to USD

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. 'Returns' implies a read-only operation and it discloses the output content (index plus PPP rate and currency pair), which is useful. However, it says nothing about data source, update cadence, geographic granularity when uf is omitted, or whether the tool works with zero parameters.

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?

A single front-loaded sentence with no filler. Each element (index, PPP, currency pair, geography) earns its place.

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

Completeness4/5

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

For a simple read tool with no output schema and fully documented optional parameters, the description covers the core return content adequately. Minor gaps remain around scope behavior when uf is omitted and the empty-parameter case.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters are documented in the schema itself. The mention of BRL/USD loosely maps to comparar_com_dolar, but no format, default, or behavior for an empty uf is added 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?

States a specific verb (Returns) and resource (regional cost-of-living index and purchasing power parity in BRL/USD) scoped to Brazil. It is clearly distinguishable from siblings like brazil_fuel_prices and brazil_grocery_basket by subject matter, though it never explicitly contrasts with them.

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 offers no when-to-use guidance, no prerequisites, and never references the sibling tools that cover adjacent Brazilian economic data. The agent must infer applicability purely from the resource name.

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. 3 tool updatesv1.0.0
    • First observedbrazil_fuel_prices
    • First observedbrazil_grocery_basket
    • First observedcost_of_living_brazil

TDQS

B3.4/5.0

Scored across 3 tools

Disambiguation4/5

Each tool targets a distinct dataset: fuel prices, grocery basket, and cost-of-living index. There is mild conceptual overlap between brazil_grocery_basket and cost_of_living_brazil (both touch on consumer costs), but the descriptions make the boundary reasonably clear.

Naming Consistency3/5

Two tools follow a 'brazil_<noun>' prefix pattern (brazil_fuel_prices, brazil_grocery_basket), but cost_of_living_brazil puts the country at the end instead. Readable overall, but the pattern breaks in a small set where consistency is easy to achieve.

Tool Count3/5

Three tools is thin for a data-intelligence server covering multiple datasets. Each tool earns its place, but the surface feels like a minimal MVP rather than a well-rounded set.

Completeness3/5

All three tools are read-only queries with no apparent supporting operations such as listing covered states, stations, time ranges, or comparing regions across datasets. The core query surface exists, but agents will hit dead ends for discovery and drill-down tasks.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    Query a variety of data from Brasil resources seamlessly. Access information on postal codes, area codes, banks, holidays, taxes, and more through a unified interface. Enhance your AI agents and applications with rich and updated data from BrasilAPI effortlessly.
    6
    7
    -
  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Connects AI agents to 28 Brazilian public APIs, providing over 200 tools to access data on economy, legislation, transparency, and the judiciary. It enables complex queries and cross-referencing of government datasets like IBGE, the Central Bank, and the National Congress through natural language.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides business intelligence, compliance tools, and economic data for Latin America, including Brazilian company lookups, tax ID validation for multiple countries, and economic indicators from official government sources.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables agents to query 153 live Brazilian government data tools across federal and state sources, including economy, legislature, judiciary, elections, health, education, and more, reading directly from original APIs.
    MIT