Skip to main content
Glama

Receita Federal: NIRF

Server Details

Receita Federal: NIRF, official-source lookup. Platform-hosted, pay per query with prepaid credit.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
mcp-dir/receita_federal_nirf-mcp
GitHub Stars
0
Server Listing
Receita Federal: NIRF

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4/5 across 7 of 7 tools scored.

Server CoherenceA
Disambiguation4/5

Most tools have distinct purposes: authenticate handles login, connect checks status, marketplace catalogs MCPs, toolkit_info shows installed tools, and receita_federal_nirf_consultar is specific to tax queries. There is slight overlap between connect and toolkit_info (both show state), but overall boundaries are clear.

Naming Consistency3/5

All names use lowercase snake_case, but verb-noun pattern is inconsistent: authenticate, connect, marketplace, toolkit_info are noun-like or bare verbs, while report_bug, show_version, and receita_federal_nirf_consultar follow verb_noun. This mixing reduces predictability.

Tool Count4/5

7 tools is a reasonable size for a platform that includes authentication, marketplace, diagnostics, and a specific data query. It is not bloated, and each tool serves a distinct functional area, making it neither too thin nor too heavy for the scope.

Completeness4/5

For the primary domain (Receita Federal NIRF lookup), the single consult tool covers the core query operation. The generic tools provide authentication, marketplace, and status information, leaving no major dead ends. Missing operations like update or delete are not relevant for read-only tax data, so coverage is adequate.

Available Tools

7 tools
authenticateA
Idempotent
Inspect

MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header Authorization: Bearer <token> for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "" } after the user pastes, or with no args to get the link.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNo
Behavior4/5

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

The description adds meaningful behavioral details beyond the annotations: it explains that calling with no arguments returns a login link, that the token version establishes a session, and notes the permanence of the config-based approach. While it doesn't cover error handling or side effects, for an authentication tool it communicates the core behavior well and doesn't contradict any annotations.

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?

The description is compact, conversational, and front-loaded with the tool's role. Every sentence adds value: the context, the permanent config option, the session-only alternative, and the argument syntax. There's no fluff or repetition.

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 tool with one optional parameter and no output schema, the description covers the essential workflows (get link, provide token) and hints at the response (the link). It doesn't discuss failure modes or response format beyond the link, but these are not critical for a simple authentication flow. Slightly more detail on available links or error handling would push it to 5.

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

Parameters5/5

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

The schema provides only a bare 'token' string with no description. The description thoroughly compensates by explaining the token's purpose ('<jwt>'), how it's used ('after the user pastes'), and the no-argument alternative to get the link. This fully covers the parameter's meaning and the empty-call behavior.

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 clearly states the tool's purpose: to authenticate IDE agents via a browser login and access token exchange. It explains the two call patterns (with or without the token parameter) and ties to the 'authenticate' name. However, it doesn't explicitly distinguish itself from sibling tools like 'connect' or 'marketplace', though the main function 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?

The description provides clear context on how to use the tool: either to obtain a login link or to submit the pasted token. It mentions a permanent config option vs. session-only, which guides when to use which method. However, it doesn't reference any alternative tools or state when not to use this tool, so it stops short of explicit exclusions or alternatives.

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

connectA
Read-onlyIdempotent
Inspect

Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds behavioral context about the two possible return states (all connected vs. missing credentials) and the presence of connect_url and per-install URLs, which is useful. However, it does not describe the exact structure of the response or any potential side effects, but given the annotations, 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.

Conciseness5/5

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

The description is two sentences, front-loaded with the primary purpose ('Returns connection status and URLs'), and every sentence adds specific information about the two states. No wasted words, and the structure is clear and efficient.

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?

Given the tool has no parameters, no output schema, and simple annotations, the description is complete enough. It explains the two possible outcomes and the URLs returned. It could mention the format of the response (e.g., JSON structure) but that is not required given the simplicity. The description covers the essential behavior for an agent to use 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?

The tool has zero parameters, and schema description coverage is 100% (vacuously). The description adds value by explaining what the response contains in different scenarios, which is the only meaningful semantic content. Since there are no parameters to document, the description appropriately focuses on output behavior, earning a high score.

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 clearly states the tool returns connection status and URLs, and distinguishes it from siblings like authenticate and toolkit_info by focusing on status reporting rather than initiating authentication or providing general info. It could be more explicit about the resource being 'connection status' but the verb 'returns' and the specific fields (authenticated, pending, connect_url) make the purpose clear.

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 usage: call this to check connection status and get URLs when credentials are missing. It does not explicitly state when not to use it or mention alternatives, but the context of sibling tools (authenticate, toolkit_info) suggests it is for status checks. No explicit exclusions or alternative guidance is provided, so it meets the baseline but lacks depth.

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

marketplaceAInspect

The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/ link that opens without login.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNo
actionNosearch
mcp_idNo
messageNo
tool_idNo
argumentsNo{}
immediateNo
tier_slugNo
prompt_bodyNo
prompt_slugNo
prompt_toolNo
prompt_varsNo{}
conversationNo[]
prompt_titleNo
request_nameNo
cancel_reasonNo
cancel_commentNo
prompt_targetsNo
report_contextNo
prompt_categoryNo
request_detailsNo
prompt_descriptionNo
Behavior5/5

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

Annotations give only readOnlyHint=false/openWorldHint=true, so the description carries the burden and delivers richly: invoke runs tools one-off without installing or bloating the tool list, returns connect links when auth is needed, returns checkout/top-up links when the wallet is empty, and discloses that writes require owner/admin. No contradiction with annotations.

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?

Every sentence carries real information and the core flow is front-loaded, but the entire description is one dense unbroken paragraph that mixes discovery, execution, billing, permissions, and prompt-library topics. The length is justified by the tool's scope (14 actions, 23 params), yet structure/sectioning would substantially aid parseability.

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?

Given high complexity, 0% schema coverage, and no output schema, the description covers the core flows, credential/payment handling, and write permissions well. However, gaps remain: the 'resume' action is never mentioned, return values for most actions (beyond connect/checkout links and publish's mcp.ai/p/<slug> link) are unspecified, and several params are undocumented.

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 0%, so the description must compensate. It explains the core action params (action, tool_id, arguments, mcp_id) and the prompt-library actions' roles, but with 23 parameters unexplained in the schema, many are left to inference: report_context, request_details, prompt_category, prompt_title, tier_slug, immediate, cancel_reason, and cancel_comment are never addressed.

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 defines a specific verb+resource: the mcp.ai marketplace for discovering, describing, installing, and running MCPs and for managing prompt-library content. It clearly distinguishes itself from siblings (authenticate, connect, toolkit_info) by being the catalog/execution hub, and it lays out the search→describe→invoke core flow.

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?

Extensive when-to-use guidance is provided: 'prefer invoke for a single/occasional use' vs 'use install only to make an MCP PERMANENT', list_tools for what is callable now, request_mcp when nothing fits, report_bug for feedback, subscribe/cancel for billing. It also names the actions that are write-ops requiring workspace owner/admin.

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

receita_federal_nirf_consultarA
Read-onlyIdempotent
Inspect

Receita Federal: NIRF, consulta em fonte oficial. Hospedado pela plataforma, sem credenciais da plataforma, pague por consulta com crédito pré-pago. Consulta informação de fontes e órgãos oficiais brasileiros (a mesma disponível ao cidadão), não é dado sigiloso. O cliente é o controlador dos dados e responde pela finalidade legítima (LGPD).

ParametersJSON Schema
NameRequiredDescriptionDefault
cibNo
nirfNo
Behavior4/5

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

Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description supplements this with crucial operational details: it's hosted on the platform, requires pre-paid credit, queries official public data (not confidential), and clarifies LGPD responsibility. This goes beyond the basic annotation profile.

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?

The description is concise and informative within three sentences, covering purpose, sourcing, and key operational details without unnecessary verbosity.

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?

The tool is annotated as read-only and idempotent, and the description adds payment and legal contextUTES, but fails to explain the two parameters (cib, nirf) or their formats, and provides no output format details. For a simple query tool, this is adequate but could be more complete.

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

Parameters1/5

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

The schema has two parameters (cib, nirf) with zero description coverage and no required fields. The description does not explain what these parameters mean or how to use them, leaving the agent without guidance on what values to provide.

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 clearly states the tool's purpose: 'consultar' (query) NIRF data from official Federal Revenue sources. It explicitly names the resource (NIRF) and the action, and it distinguishes itself from the sibling tools (which are generic platform tools like authenticate, connect, etc.) by being a domain-specific data query.

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?

The description notes that it uses pre-paid credits and doesn't require platform credentials, which implies usage prerequisites. However, it does not explicitly mention when to prefer this tool over alternatives, though no similar sibling tools exist. It gives clear context about payment and legal responsibility, which is useful for the agent to conditionally call it.

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

report_bugA
Idempotent
Inspect

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNo
messageYes
conversationNo[]
Behavior3/5

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

Annotations already declare non-readonly, idempotent, and non-destructive behavior. The description adds the guidance to include the conversation array for reproduction, which is useful context. However, it does not disclose any additional behavioral traits like side effects, authentication requirements, or success/failure semantics beyond what annotations imply. Given the annotations cover the safety profile, the description adds some value but is not rich.

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?

The description is two sentences with no redundant information. It is front-loaded with the purpose and includes a single actionable hint about including the conversation array. Every word earns its place.

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 simple reporting tool with no output schema, the description covers the core action and reproduction guidance. However, it omits any mention of prerequisites (e.g., authentication, which sibling tools suggest might be needed), expected outcomes, or error handling. While not critical for a straightforward report, these gaps prevent full completeness.

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 coverage is 0%, so the description must compensate. It explains that the 'conversation' parameter should contain recent messages for reproduction, but it does not elaborate on 'message' (beyond being required) or 'context'. The description partially clarifies one parameter but leaves others undefined without schema descriptions. This is insufficient given the lack of schema documentation.

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 clearly states the tool's purpose: reporting a bug, missing feature, or sending feedback. It uses specific verbs and resource categories, and it distinguishes itself from siblings like authenticate, connect, and marketplace, which serve different functions.

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?

The description implicitly indicates when to use this tool (when a bug or feedback needs to be communicated) but lacks explicit exclusion criteria or alternatives. It is clear that this is the dedicated feedback channel, but no mention of when not to use or alternative paths. This is adequate but could be more explicit.

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

show_versionA
Read-onlyIdempotent
Inspect

Show the current MCP platform and adapter versions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds no behavioral traits beyond the annotated facts, such as response shape, whether network access is required, or what exactly is included in "adapter versions." It does not contradict the annotations.

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 conveys the entire purpose without wasted words. It is appropriately sized for a trivial zero-parameter read-only tool.

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?

Given the tool's simplicity, zero parameters, and rich annotations, the description is mostly complete. The only minor gap is that there is no output schema and the description doesn't specify the return format, but for a version query this is a small omission rather than a critical deficiency.

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 has zero parameters and the schema coverage is 100%, so there is nothing for the description to clarify. The baseline for zero-parameter tools is 4, and the description does not need to compensate for missing parameter documentation.

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?

Description uses a specific verb and resource: "Show the current MCP platform and adapter versions." It clearly identifies the exact operation and output scope, distinguishing it from sibling tools like authenticate, connect, and report_bug.

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 intended use is implied by the verb "show" and the noun "versions"—an agent can infer it should be used when version information is needed. However, there is no explicit when/when-not guidance or mention of alternatives such as toolkit_info, which could plausibly overlap in purpose.

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

toolkit_infoA
Read-onlyIdempotent
Inspect

Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds valuable context by specifying exactly what the state includes (installed MCPs, statuses, accounts, catalog tool counts), which goes beyond the bare annotation information. No contradiction with annotations.

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?

The description is a single sentence that front-loads the primary action and resource, then lists key output aspects without excess wording. Every part contributes meaning.

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 zero-parameter, simple information tool with strong annotations, the description is complete. It details what the returned toolkit state covers, leaving no ambiguity about the tool's functionality. The lack of output schema is mitigated by enumerating the main data categories.

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 has no parameters and an empty schema, so the description need not explain parameter meanings. The 0-parameter baseline is 4, and the description appropriately focuses on the return content.

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 uses the specific verb 'Returns' and identifies the resource as 'current toolkit state' with enumerated contents (installed MCPs, connection status, accounts, catalog tool count). This clearly distinguishes it from sibling tools like authenticate/connect (actions) and show_version (version only).

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 statement about when to use this tool versus alternatives, but the description implies it is for inspecting toolkit state. It does not mention exclusions or recommend other tools, making usage only implied rather than explicitly guided.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.