Skip to main content
Glama

Server Details

CNPJ API: Brazilian company records (Receita Federal open data). Google sign-in or API key

Ownership verified
Status
Healthy
Uptime
100.0% over 19 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4/5.0

Scored across 4 tools

Disambiguation4/5

buscar_cnpjs and consultar_cnpj both return CNPJ data and could be confused at a glance, but the descriptions clearly separate bulk listing by CNAE/municipality with cursor pagination from a single-record lookup with full registry data. validar_cnpj (offline format check) and status_base (service/base metadata) are clearly distinct from the query tools.

Naming Consistency4/5

All names are snake_case with predictable Portuguese verb_noun patterns (buscar_cnpjs, consultar_cnpj, validar_cnpj), and singular/plural correctly reflects whether the tool works on one or many records. status_base is a noun phrase without a verb, a minor but harmless deviation.

Tool Count4/5

Four tools is on the lean side but each maps to a distinct capability (bulk search, single lookup, offline validation, base status) with no filler. For a narrow CNPJ-data API this is a reasonable, well-scoped surface.

Completeness4/5

The core lifecycle is covered: validation, single-record lookup including partners, filtered listing with pagination, and base freshness metadata. Minor gaps exist, such as lookup/search by razão social (name) or by partner CPF, which would be natural additions for this domain.

Available Tools

4 tools
buscar_cnpjsBuscar CNPJs por atividade e municípioA
Read-only
Inspect

Lista estabelecimentos ativos da base da Receita Federal pela atividade econômica principal (CNAE, 7 dígitos) e/ou pelo município (código da Receita com 4 dígitos ou do IBGE com 7); pelo menos um dos dois filtros. Devolve {dataset_month, total, resultados, proximo_cursor}: cada resultado tem os dados cadastrais da consulta individual, sem o quadro de sócios. A página tem no máximo o limite por minuto do plano (ou o argumento limite, até esse valor) e cada CNPJ devolvido consome 1 da cota mensal e 1 do limite por minuto; a próxima página vem com cursor = proximo_cursor (null no fim). Exige a conta apipj, como consultar_cnpj.

NameRequiredDescriptionDefault
cnaeNoCNAE da atividade principal, 7 dígitos, com ou sem pontuação (ex.: 4781400 ou 47.81-4-00)
cursorNoproximo_cursor da página anterior, com os mesmos filtros
limiteNoTamanho máximo da página, de 1 até o limite por minuto do plano (padrão: esse limite)
formatoNocompleto (padrão) ou simplificado, como em consultar_cnpj (sem sócios)completo
municipioNoCódigo do município da Receita (4 dígitos, ex.: 7107 = São Paulo) ou do IBGE (7 dígitos, ex.: 3550308)

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover safety (readOnly, non-destructive), yet the description goes well beyond them: it discloses quota consumption per CNPJ (1 cota mensal + 1 do limite por minuto), that page size is capped by the plan's per-minute limit, that cursor = proximo_cursor with null at the end, and that the apipj account is required. These are exactly the operational facts an agent needs before calling a metered endpoint.

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?

Front-loaded with purpose and filter constraint, then the return shape, then cost/pagination, then auth. Dense and mostly waste-free, though the middle sentence packs return shape and quota accounting together, making it heavier than necessary to scan.

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

Completeness5/5

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

With no output schema, the description carries the return contract itself ({dataset_month, total, resultados, proximo_cursor}) and explains pagination termination and metering. Combined with annotation-covered safety and fully documented params, an agent has everything needed to call it correctly.

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; the description adds the cross-parameter constraint that at least one of cnae/municipio must be supplied (the schema marks neither required) and ties 'limite' to the plan's per-minute ceiling. It adds real semantics but leaves formato's behavior to the schema/sibling reference.

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

Purpose5/5

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

States a specific verb and resource ('Lista estabelecimentos ativos da base da Receita Federal') plus the exact filters (CNAE principal, município). The clause 'cada resultado tem os dados cadastrais da consulta individual, sem o quadro de sócios' implicitly separates it from the single-record sibling consultar_cnpj, so an agent can tell list-from-lookup without opening a 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?

Explicitly imposes the selection constraint 'pelo menos um dos dois filtros', which is the key precondition for calling this tool, and points to consultar_cnpj for the account requirement and formato semantics. It does not state when to prefer this over validar_cnpj or status_base, so it stops short of full alternative routing.

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

consultar_cnpjConsultar CNPJA
Read-only
Inspect

Dados cadastrais públicos de um CNPJ na base da Receita Federal (lote mensal): razão social, nome fantasia, situação cadastral, endereço, telefones, e-mail, atividades CNAE, natureza jurídica, porte, capital social, Simples/MEI e sócios (CPF mascarado). Exige uma conta apipj: o cliente pede para conectar e entrar com o Google (OAuth) ou envia uma chave de API; cada consulta conta no limite por minuto e na cota mensal do plano da conta.

NameRequiredDescriptionDefault
cnpjYesCNPJ com ou sem pontuação, numérico ou alfanumérico (ex.: 11.378.117/0001-20)
formatoNocompleto (padrão: objetos aninhados, datas ISO e códigos da Receita) ou simplificado (plano, com datas DD/MM/AAAA e CNPJ, CEP e telefone formatados)completo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context beyond that: the OAuth/API-key auth requirement, the per-minute rate limit and the monthly plan quota. It stops short of describing error or not-found behavior.

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 dense sentences that front-load what is returned and then cover access constraints. The field enumeration is long but each item earns its place by telling the agent what data is obtainable without an output schema.

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

Completeness5/5

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

For a read-only lookup with no output schema, the description compensates by listing the returned data fields in detail, plus auth and rate-limit constraints. Nothing essential to invoking the tool correctly is missing.

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 the cnpj format (with punctuation/alphanumeric) and the formato enum are fully documented in the schema. The description adds nothing about parameters, 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?

The description states a specific verb and resource (consultar dados cadastrais de um CNPJ) and enumerates the returned fields (razão social, CNAE, sócios, etc.), making the purpose unmistakable. However, it never differentiates itself from siblings like validar_cnpj, so an agent still has to infer which one to pick.

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 agent must infer that this tool is for retrieving full registration data. The description does explain the account prerequisite (apipj with OAuth/API key) but never says when to use this versus validar_cnpj or status_base.

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

status_baseStatus da baseA
Read-only
Inspect

Status do serviço e da base de CNPJ: mês do lote da Receita Federal carregado, data de geração e quantidade de CNPJs. Sem chave e sem consumo de cota.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds non-redundant behavioral context the annotations do not carry: no API key required and no quota consumption, which is exactly the kind of operational detail an agent needs before calling.

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?

A single tight sentence that front-loads the purpose and then appends the returned fields and the no-key/no-quota note. No filler, though the commas make it slightly dense rather than optimally readable.

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

Completeness5/5

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

With no output schema, the description compensates by naming what is returned (loaded batch month, generation date, CNPJ quantity), and it covers the auth/quota caveat. Nothing an agent needs to call this status tool correctly is missing.

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?

The tool takes zero parameters, so per the baseline rule this scores 4. There is nothing for the description to clarify beyond confirming it is a parameterless call, which the empty schema already conveys.

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 (status of the service and the CNPJ base) and even enumerates the returned fields (batch month, generation date, CNPJ count). It is clearly distinguishable from the sibling lookup/validation tools by function, though it never names them explicitly.

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: 'Sem chave e sem consumo de cota' tells the agent it can call this freely without a key or quota, which is a useful selection signal. However, it gives no explicit when-to-use vs the consultar_cnpj/validar_cnpj alternatives or any prerequisite conditions.

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

validar_cnpjValidar CNPJA
Read-only
Inspect

Confere formato e dígitos verificadores de um CNPJ (numérico ou alfanumérico) sem consultar a base. Devolve cnpj, valido, formatado, alfanumerico e erro. Sem chave e sem consumo de cota.

NameRequiredDescriptionDefault
cnpjYesCNPJ com ou sem pontuação, numérico ou alfanumérico (ex.: 11.378.117/0001-20)

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered; the description adds genuinely new traits: no database access, no key required, no quota consumption. It also enumerates the response fields (cnpj, valido, formatado, alfanumerico, erro), which compensates for the missing output schema.

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 compact sentences, zero padding: purpose and local-only scope first, then return shape, then cost/credential implications. Every clause carries information an agent can act on.

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

Completeness5/5

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

For a single-parameter, read-only validation tool with no output schema, the description covers the essential surface: what is checked, that no backend is consulted, what fields come back, and the absence of quota/key requirements. Nothing needed to call it correctly is missing.

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%, and the description's note that the input may be numeric or alphanumeric, with or without punctuation, merely restates what the schema's cnpj description already states. No syntax, normalization or edge-case guidance is added 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.

Purpose5/5

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

States a specific verb and resource: it checks the format and check digits of a CNPJ locally, without querying the database. This directly separates it from the sibling consultar_cnpj, which presumably performs a registry lookup, so an agent can route between them from the description alone.

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?

"Sem consultar a base" plus "Sem chave e sem consumo de cota" gives a clear operational context (offline check, no credential or quota cost), which implies when to prefer this over a lookup tool. It stops short of naming consultar_cnpj as the alternative for registry data, so it is clear context without explicit alternative routing.

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. 1 tool update
    • Addedbuscar_cnpjs
  2. 1 tool update
    • Removedbuscar_cnpjs
  3. 4 tool updates
    • First observedbuscar_cnpjs
    • First observedconsultar_cnpj
    • First observedstatus_base
    • First observedvalidar_cnpj

Publisher details

Operator
MASTER BI TECNOLOGIA (apipj) · Publisher source
Vendor relationship
First-party
Trust center
Not available
Restrictions
A free apipj account is required for company lookups (sign in with Google or e-mail). CNPJ validation and data status work without an account. · Publisher source

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables lookup and validation of Brazilian companies by CNPJ, returning registration status, address, CNAE activities, Simples Nacional/MEI status, and partners from monthly Receita Federal open data, plus validation of numeric or alphanumeric CNPJ check digits and search of active companies by activity and municipality.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides a single read-only tool to fetch extended Brazilian company registration data from a CNPJ number, including basic details. Works over HTTP MCP with any client.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides Brazilian company basic registration data (legal name, status, legal nature) from CNPJ through a single read-only MCP tool, hosted with pay-per-use credits.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Brazilian company-registry lookup via Receita Federal, allowing AI agents to query CNPJ data.
    420 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources