Skip to main content
Glama

Emendas parlamentares do Brasil

Server Details

Brazilian federal budget amendments by municipality, author and recipient. Paid via Lightning.

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
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
projects-betanull/painel-emendas
GitHub Stars
0
ChatGPT
–
Claude
–

TDQS

A3.7/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: payment (comprar_acesso), activation (ativar_acesso), free municipality lookup (buscar_municipio), paid detailed summary (resumo_municipio), and ranking (ranking_municipios). The only apparent overlap—buscar and resumo both returning total received—is a standard list-vs-detail distinction, not ambiguity.

Naming Consistency4/5

All names are snake_case Portuguese and readable, but the pattern mixes verb_noun (ativar_acesso, buscar_municipio, comprar_acesso) with noun_noun (ranking_municipios, resumo_municipio). This is a minor deviation, not chaotic.

Tool Count5/5

Five tools is well-scoped for a focused data API with paid access: two handle payment/activation and three cover municipal queries. Each tool earns its place without obvious redundancy or missing obvious companion tools.

Completeness3/5

Core municipal workflows (search, summary, ranking) and access management are covered. However, there are notable gaps for the broad 'emendas parlamentares' domain: no cross-cutting queries by author, beneficiary, area, or year, and no direct lookup by IBGE code without a name search.

Available Tools

5 tools
ativar_acessoAInspect

Confere o pagamento de uma fatura gerada por comprar_acesso e devolve o token de acesso de 24 horas.

NameRequiredDescriptionDefault
fatura_idYes

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full burden. It does disclose a meaningful trait — the returned token has a 24-hour lifetime — but it is silent on what happens when payment is not yet confirmed (error vs. pending status), whether repeated calls are safe/idempotent, and whether it mutates state to 'activate' access.

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?

One front-loaded sentence that states the verification step and the result with zero filler. Nothing is repeated from the schema or title, and the ordering (check payment → return token) mirrors the actual call flow.

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 one-parameter tool with no output schema, the description covers the essential: what it consumes (an invoice from comprar_acesso) and what it yields (a 24-hour token). The remaining gap is failure/pending behavior, which matters because the tool is gated on a payment check.

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?

With a single parameter at 0% schema coverage, the description is the only source of meaning, and it does add key provenance: fatura_id is the invoice produced by comprar_acesso. It does not state the expected format or whether the id can come from elsewhere, but the provenance note is the essential context an agent needs.

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 uses a specific verb+resource pair ('Confere o pagamento de uma fatura') and names the concrete outcome ('devolve o token de acesso de 24 horas'), which lets an agent distinguish it from the sibling comprar_acesso. It stops just short of 5 because it doesn't explicitly contrast itself with the other siblings or state the scope of what it does not do.

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: by saying the fatura is 'gerada por comprar_acesso', it suggests this tool is the step after a purchase. There is no explicit 'use this when…', no statement about prerequisites (must a purchase exist?), and no alternatives or exclusions given.

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

buscar_municipioAInspect

Encontra municípios pelo nome e devolve código IBGE, UF e total recebido em emendas parlamentares (gratuito).

NameRequiredDescriptionDefault
nomeYesNome ou parte do nome do município

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the disclosure burden. It does add real value by naming the return fields and flagging that the call is free, but it says nothing about partial-match behavior, result caps, pagination, or what happens when no município matches.

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?

One front-loaded sentence with the action first and the returned fields after; nothing 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 one-parameter lookup with no output schema, the description adequately covers what comes back (IBGE code, UF, emendas total) and the cost model. Only edge-case behavior — no matches, many matches, result limits — is left uncovered.

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 100% and there is only one parameter, whose description already defines it as a name or name fragment. The prose adds no format, accent/case-handling, or minimum-length guidance beyond the schema, so the baseline 3 applies.

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 and resource ("Encontra municípios"), the lookup key ("pelo nome"), and the exact payload returned (código IBGE, UF, total de emendas). It does not differentiate itself from siblings like resumo_municipio or ranking_municipios, so an agent must infer that this is the name-based lookup vs. the detail/ranking tools.

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 tool takes a name fragment, and "(gratuito)" hints that it works without the paid access granted by ativar_acesso/comprar_acesso. There is no explicit statement of when to pick this over resumo_municipio (which presumably gives per-municipality detail) or any exclusion.

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

comprar_acessoAInspect

Gera uma fatura Lightning para um passe de 24 horas às ferramentas pagas. Pague a fatura e depois chame ativar_acesso com o id.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/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 burden. It does disclose the important behavioral fact that this creates an invoice whose payment happens outside the tool, and that a separate activation call is required — useful sequencing information. However, it says nothing about expiry of the invoice itself, whether repeated calls create duplicate invoices, or any auth/rate constraints.

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 waste, with the generative action stated first and the required follow-up step second. Nothing needs trimming or reordering.

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 parameterless tool with no output schema, the description should explain what the caller receives back — the invoice and, critically, the id needed for the next step. It only implies this indirectly via 'chame ativar_acesso com o id', and omits the external payment mechanics and pass pricing/expiry, leaving a meaningful gap for a purchase flow.

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?

The tool takes zero parameters, so the baseline is 4 and there is genuinely no parameter meaning to add. The description's only parameter-adjacent content is the reference to passing 'o id' to ativar_acesso, which is about a different tool's input rather than this one's.

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

Purpose5/5

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

The description names a specific verb and resource — 'Gera uma fatura Lightning' for a 'passe de 24 horas às ferramentas pagas' — and explicitly distinguishes itself from the sibling ativar_acesso by positioning this as the step before it. An agent can tell what the tool produces without opening any schema.

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?

It gives a clear trigger condition (acquiring a 24-hour pass to paid tools) and a two-step workflow: pay the invoice, then call ativar_acesso with the id. It does not state when this should NOT be used (e.g., if an access pass is already active, or how to check that), so it falls short of explicit exclusions.

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

ranking_municipiosBInspect

Ranking dos municípios que mais receberam emendas, no Brasil ou numa UF, por valor total e por habitante (municípios acima de 50 mil habitantes). Requer token pago.

NameRequiredDescriptionDefault
ufNoSigla da UF (ex.: SP) ou BR para o Brasil
tokenYes

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 burden and does disclose two important traits: the paid-token requirement and the 50k-population cutoff that silently excludes smaller municipalities. It says nothing about sorting direction, result limits, pagination, or what happens when an invalid UF or unpaid token 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?

It is a single dense sentence with the resource and the ranking criteria front-loaded and the token prerequisite at the end, so nothing feels padded. The population threshold is buried mid-sentence as a parenthetical, which slightly weakens scannability.

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 ranking tool with no output schema, the description conveys what is ranked and by which metrics, which is the essential context. It still leaves the shape of the returned ranking and its ordering unspecified, so an agent cannot predict the response structure.

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%: the uf parameter is already documented in the schema as a UF abbreviation or BR for Brazil, and the description merely restates that scope. The undocumented token parameter is partly compensated by the sentence 'Requer token pago', which explains its purpose, but no format or acquisition path is given.

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 and output: a ranking of municipalities that received the most emendas (amendments), nationally or within a UF, measured both by total value and per capita, restricted to municipalities above 50 thousand inhabitants. That is far more specific than the tool name alone and distinguishes it from siblings like resumo_municipio or buscar_municipio, though it does not explicitly contrast itself 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 Guidelines3/5

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

It gives a clear prerequisite — a paid token is required — and explains that results can be scoped to Brazil or a single UF. It does not say when to prefer this ranking over the sibling tools buscar_municipio or resumo_municipio, so the routing decision is only implied.

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

resumo_municipioAInspect

Resumo das emendas parlamentares recebidas por um município: total, por habitante e página. Com token pago, inclui por ano, autores, favorecidos (com CNPJ), áreas e tipos.

NameRequiredDescriptionDefault
tokenNoToken de acesso (opcional; obtido com comprar_acesso e ativar_acesso)
codigo_ibgeYesCódigo IBGE de 7 dígitos (use buscar_municipio)

TDQS

A3.6/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 disclosure burden, and it does add one genuinely useful behavioral fact: output content is tiered, with year/authors/beneficiaries (CNPJ)/areas/types only appearing under a paid token. It says nothing about pagination behavior (despite mentioning 'página'), error handling, or what the free tier returns exactly.

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 short sentences, no filler: the first states the resource and default outputs, the second states the paid-tier delta. The most decision-relevant information (what you get, and what costs) 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?

Because there is no output schema, the field enumeration in the description is doing necessary work. However, 'página' is left unexplained and there is no page parameter in the schema, so the pagination model an agent would need for repeated calls remains ambiguous.

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 coverage is 100%, so the baseline is 3, but the description adds real meaning to the token parameter by explaining what the paid tier actually changes in the response rather than just how to obtain the token. It adds nothing specific about codigo_ibge beyond what the schema already documents.

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 (emendas parlamentares recebidas por um município) and enumerates what the summary returns (total, per capita, page), so an agent can tell it produces an aggregated municipal view. It does not explicitly contrast itself with ranking_municipios, which is the closest sibling, so it stops short of full differentiation.

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: you need a municipality code (the schema points to buscar_municipio) and a paid token to unlock the richer breakdown. There is no explicit statement of when to prefer this over ranking_municipios, nor any exclusion of cases where it should not be used.

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. 5 tool updates
    • First observedativar_acesso
    • First observedbuscar_municipio
    • First observedcomprar_acesso
    • First observedranking_municipios
    • First observedresumo_municipio

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to query Brazilian municipal transparency portals for payroll, expenses, contracts, bids, revenues, and legislation using natural language in Portuguese.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    razilian public procurement (PNCP) and Federal Revenue CNPJ data for any MCP client. 18 tools covering bids, contracts, atas de registro de preço, annual procurement plans, CNPJ enrichment, plus temporal aggregation and period comparison. MIT licensed, maintained by Licinexus under Law 14.133/2021.
    18
    80 npm
    81
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying the Brazilian government's transparency portal (Portal da Transparência) to search official public spending and transparency data. Read-only access via natural language from any MCP client, with prepaid pay-per-query usage.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for querying Brazil's public transparency portal, providing read-only access to government spending and public data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.