Skip to main content
Glama

CAF Agricultura Familiar PF

Server Details

Looks up the National Family Farming Registry (CAF) of an individual from the CPF. Platform-hosted,

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
mcp-dir/caf_agricultura_pf-mcp
GitHub Stars
0
Server Listing
CAF Agricultura Familiar PF

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.2/5 across 7 of 7 tools scored. Lowest: 3.6/5.

Server CoherenceA
Disambiguation4/5

Most tools have clearly distinct purposes: authentication, connection status, marketplace, bug reporting, version info, and toolkit state. The domain-specific CAF tool stands apart. However, 'connect' and 'toolkit_info' both report connection status, which could cause minor confusion.

Naming Consistency3/5

Naming is mixed: platform tools use single words or compound phrases like 'authenticate', 'report_bug', 'show_version', while the domain tool uses a prefixed snake_case pattern 'caf_agricultura_pf_consultar'. 'marketplace' and 'toolkit_info' are nouns rather than verbs, breaking the verb-based pattern.

Tool Count4/5

Seven tools is a reasonable count, neither overwhelming nor too sparse. The platform tools are necessary for the MCP ecosystem integration, and the one domain tool addresses the core consultation need. Still, the server is heavily weighted toward platform utilities rather than CAF-specific functionality.

Completeness3/5

The CAF domain is covered only with a single consultation tool, which may be sufficient for a simple lookup service but lacks any additional operations like batch queries or result validation. The platform tools are complete for their purposes, so the overall set is functional but has minimal domain depth.

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
Behavior5/5

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

The description explains the two login modes (session-only vs permanent via header), clarifies that the token is a JWT, and indicates the behavior when called without arguments (returns a link). This goes well beyond the annotations and gives the agent a clear picture of expected 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?

The description is somewhat long but every sentence carries necessary information: audience, permanent vs session setup, and usage modes. It is structured logically and front-loaded with the main purpose.

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 there is no output schema and the tool's complexity is moderate, the description covers both invocation patterns and the distinction between permanent and session-only authentication. It does not mention response format, but that is likely not critical for an auth tool.

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 input schema only lists 'token' with a type, but the description elaborates that it should be a JWT string pasted by the user, and that omitting it will produce a login link. This adds substantial semantic meaning beyond the schema.

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 this is an authentication tool for IDE agents, with a specific verb ('log in') and resource (access token). It distinguishes itself by explaining the login flow, making it unambiguous what the tool does.

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 provides explicit usage instructions: call with a token for session-only login, or with no args to get a link, and mentions adding the token as a header for a permanent connection. It does not explicitly compare with sibling tools like 'connect', but the context makes it clear when to use it.

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

caf_agricultura_pf_consultarA
Read-onlyIdempotent
Inspect

Consulta o Cadastro Nacional da Agricultura Familiar (CAF) de uma pessoa física a partir do CPF. Hospedado pela plataforma, sem credenciais, pague por consulta com crédito pré-pago. Consulta informação de ACESSO PÚBLICO em bases e fontes oficiais (a mesma disponível ao cidadão), não é dado privado nem sigiloso. O cliente é o controlador dos dados e responde pela finalidade legítima (LGPD).

ParametersJSON Schema
NameRequiredDescriptionDefault
CPFYes
completoNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds important behavioral context beyond annotations: payment via prepaid credits, no credentials required, public data access, and LGPD responsibility. It does not contradict annotations, and the added details help the agent understand the operational constraints.

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 three sentences, front-loaded with the purpose, and includes relevant operational details (payment, public data, LGPD). It is concise without being overly verbose. The legal disclaimer is slightly extra but adds value for compliance. No unnecessary redundancy.

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 only 2 parameters, no output schema, and simple boolean flags, the description covers the main purpose, payment model, data accessibility, and legal responsibility. The only notable gap is the undocumented 'completo' parameter. Otherwise, the description is sufficiently complete for correct invocation and understanding.

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 input schema has 2 parameters with 0% description coverage. The description explicitly mentions CPF as the key parameter ('a partir do CPF'), but it does not explain the meaning of the 'completo' boolean parameter. Since the schema lacks descriptions for both, the description partially compensates but leaves the 'completo' parameter ambiguous, resulting in a baseline score of 3.

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: 'Consulta o Cadastro Nacional da Agricultura Familiar (CAF) de uma pessoa física a partir do CPF.' It identifies the specific verb (consulta), resource (CAF), and input (CPF), and distinguishes it from unrelated sibling tools like 'authenticate' and 'connect'.

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 context for when to use the tool: it mentions 'sem credenciais' and 'pague por consulta com crédito pré-pago', indicating no credentials are needed and payment is required. It also notes that it queries 'informação de ACESSO PÚBLICO', clarifying it is appropriate for public data. While it does not explicitly name alternatives, the sibling tools are unrelated, so the usage context is sufficient.

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

Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds meaningful conditional behavior: when all providers are connected vs. when credentials are missing, including the return of connect_url and per-install URLs. This goes beyond the annotations to clarify expected states.

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 core function, and provides conditional outcomes without any fluff. 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?

The description covers the two main states (all providers connected and credentials missing) but omits intermediate scenarios like partial connectivity. With no output schema, this leaves some ambiguity about the response structure for such cases.

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, so the baseline is 4. The description adds no parameter semantics because there are none to clarify.

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 function with a specific verb ('Returns') and resource ('connection status and URLs'). It also distinguishes itself from sibling 'authenticate' by focusing on status rather than the authentication action itself.

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 as a status check (e.g., when needing to know if providers are connected) but does not explicitly state when not to use it or reference alternatives. The conditional outcomes provide some context, but no direct guidance on choosing between this and 'authenticate'.

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?

The description goes well beyond the minimal annotations (readOnlyHint: false, openWorldHint: true). It discloses that invoke works even when the MCP is not installed, runs one-off, and doesn't bloat the tool list. It explains auth/payment behavior: 'invoke returns a connect link' for credentials and 'checkout/top-up link' if the wallet is empty, then says to retry. It also states that writes require workspace owner/admin. No contradictions 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.

Conciseness4/5

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

The description is well-structured with a clear progression: marketplace definition, core flow, key invoke behavior, permission note, and prompt library. However, it is quite long and dense, with some verbose phrases like 'pontualmente' and the included example 'consulta um CPF'. While most sentences earn their place, it could be trimmed slightly for brevity.

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 complex tool with 14 actions and no output schema, the description is remarkably thorough. It explains the main workflows, edge cases (login required, wallet empty), and permissions. It even covers the separate prompt library. However, a few parameters and action-specific return structures remain vague, so it is not a perfect 5 but is close.

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 23 parameters and 0% schema description coverage, the description must compensate. It explains key parameters like 'action', 'tool_id', 'arguments', and the 'prompt_' group, but many parameters (e.g., 'limit', 'immediate', 'tier_slug', 'conversation', 'message') are not explicitly described. The high-level action flow implies meanings for some, but gaps remain, so it only partially compensates for the missing schema descriptions.

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 identifies this as the mcp.ai marketplace for discovering, running, and managing MCPs and prompts. It lists specific actions with verbs like 'search', 'describe', 'invoke', and 'install', and distinguishes itself from siblings by explaining the marketplace's unique role: 'catalog of every MCP/tool, AND the way to run them.' The core flow is explicitly spelled out, making the tool's purpose unambiguous.

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?

Provides explicit when-to-use guidance: 'Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile ... → invoke RUNS that tool.' It differentiates between 'invoke' for one-off uses ('prefer invoke for a single/occasional use') and 'install' for permanent additions ('Use install only to make an MCP PERMANENT in the active toolkit'). Also states that 'list_tools lists what is callable right now' and explains permission requirements. This is far beyond a generic description.

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 indicate idempotent, non-read-only, non-destructive behavior. The description adds context about including conversation for reproduction but does not disclose side effects, response format, or error behavior. 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 concise sentence that is front-loaded with the core purpose. Every word adds value and there is no redundancy or filler.

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 tool with 3 parameters and no output schema, the description covers the purpose and one parameter hint. However, it does not explain return behavior, error handling, or whether the report is actually submitted. Adequate for basic understanding but leaves room for richer detail.

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 0%, so the description must compensate for parameter semantics. It mentions the 'conversation array' but does not clarify that it is a stringified JSON array, nor does it explain 'context' or 'message' beyond their names. Partial coverage but significant gaps remain.

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 with a specific verb 'Report' and identifies the resources (bug, missing feature, feedback). It naturally distinguishes itself from unrelated sibling tools like authenticate and marketplace.

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 when to use the tool (when reporting an issue or sending feedback) but does not explicitly state exclusions or alternatives. It gives a usage hint about including the conversation array, but lacks direct guidance on prerequisites or when not to use it.

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?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds minimal extra context by specifying 'current' versions and 'platform and adapter', but it does not disclose any behavioral nuances such as network calls or caching behavior.

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 short, front-loaded sentence with no filler. Every word contributes meaning: 'Show' (verb), 'current' (freshness), 'MCP platform and adapter versions' (resources).

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 parameterless, read-only version query with no output schema, the description is fully adequate. The intended behavior and result are completely clear, and the tool is simple enough that no additional documentation is needed.

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 is trivially 100% covered by its empty property list. According to the 0-params baseline rule, the description need not add anything, and it correctly implies no inputs are required.

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 'Show' with a clear resource: 'current MCP platform and adapter versions.' This unambiguously distinguishes it from siblings like authenticate, connect, and marketplace, which serve entirely 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 Guidelines3/5

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

The description implies the obvious use case—checking the platform and adapter versions—but provides no explicit guidance versus alternatives. With a sibling named 'toolkit_info' that might overlap in scope, the lack of any differentiation makes the intended usage only inferred, not explicit.

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 behavioral context by listing the specific data returned (installed MCPs, connection statuses, accounts, tool counts), which helps the agent understand what to expect. No side effects are relevant for a read-only tool.

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 is front-loaded with the primary action ('Returns the current toolkit state') and then lists the key components in a clear, efficient sequence. Every word earns its place, with no redundancy or extraneous detail.

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 no-parameter, no-output-schema info tool, the description fully explains what the tool returns, covering all the key aspects of toolkit state. Annotations provide the safety context. It is complete for the scope and complexity of this 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?

The input schema has zero parameters, so schema coverage is 100% and the description need not explain any parameters. This falls under the 0-params baseline of 4, and the description adds no parameter-related info, which is appropriate.

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 a specific verb 'Returns' and clearly identifies the resource as 'current toolkit state,' enumerating the components (installed MCPs, connection status, accounts, catalog tool counts). This clearly distinguishes it from sibling tools like authenticate and connect, which are action-oriented.

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 by detailing the exact information returned, but it does not explicitly state when to use this tool versus alternatives or any exclusions. There is no mention of 'use this when you need X' or 'instead of show_version,' so guidance is implied rather than explicit.

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

  • A
    license
    -
    quality
    C
    maintenance
    MCP server to query Brazil's rural property registry (CAFIR) using the CIB code, providing read-only consultation of rural property data via a hosted API with prepaid credits.
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    MCP server to consult the Provisional Rural Operation Authorization (APF) of a producer using CPF, CNPJ, APF number, or CAR. Read-only, hosted, pay-per-query, works with any MCP client.
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.