Skip to main content
Glama

Prefeitura SP Guarulhos: Certidão Negativa de Débitos Mobiliários

Server Details

Prefeitura SP Guarulhos: Clearance Certificate (Debts) Mobiliários, official-source lookup. Platform

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
mcp-dir/pref_sp_guarulhos_cndm-mcp
GitHub Stars
0
Server Listing
pref_sp_guarulhos_cndm-mcp

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.3/5.

Server CoherenceB
Disambiguation4/5

The platform tools (authenticate, connect, marketplace, etc.) are distinct from each other, and the domain-specific tool (pref_sp_guarulhos_cndm_consultar) is clearly separate. However, the marketplace tool is overly broad and could subsume other tools' roles in some contexts, causing minor ambiguity.

Naming Consistency2/5

Tool names are inconsistent: some are single generic verbs (authenticate, connect), some are descriptive nouns (marketplace, toolkit_info), and one is a long snake_case with domain prefix (pref_sp_guarulhos_cndm_consultar). There is no consistent verb_noun pattern across the set.

Tool Count3/5

7 tools is within the typical range, but the vast majority are generic platform utilities unrelated to the server's stated purpose (Guarulhos CNDM). Only one tool serves the actual domain, making the set feel thin for its primary purpose while heavyweight in unrelated infrastructure.

Completeness4/5

For the specific domain of querying a negative certificate, a single consult tool may be sufficient. The underlying service likely only offers that operation. However, the presence of generic platform tools (authenticate, marketplace, etc.) doesn't contribute to domain completeness, but they don't create dead ends either. Minor gaps could include no status check or history, but the core query is covered.

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?

Annotations indicate idempotentHint=true and readOnlyHint=false, but the description adds crucial context: calling with no args returns a link (likely opening a browser flow), calling with token establishes a session, and there's a permanent alternative via config. It clearly states the token is a JWT and that the session-only login is not permanent. However, it doesn't explicitly mention side effects like whether the token is stored or how the session is maintained, but with idempotentHint=true and destructiveHint=false, the risk is low.

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 concise, front-loaded with the purpose, and every sentence adds value: it explains the browser flow, the permanent config option, and the two invocation modes. No redundant information; it fits in a few lines and is immediately actionable.

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?

Given the tool's complexity (authentication with multiple modes) and lack of output schema, the description is remarkably complete. It covers the main usage scenarios, prerequisites (user pasting token), and alternatives. It even mentions the recommended permanent setup, which is beyond the typical tool description. No critical gaps spotted.

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?

Although schema description coverage is 0%, the description provides meaning for the single 'token' parameter: it should be a JWT pasted by the user, and omitting it triggers a different behavior (get link). This compensates for the lack of schema documentation. The parameter semantics are clear enough for an agent to decide when to include it.

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: to authenticate by providing a browser link, accepting a token for session-only login, or recommending a permanent config-based solution. It distinguishes itself from sibling tools by focusing on authentication, which is unique among the listed siblings (connect, marketplace, etc.).

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?

The description provides explicit when-to-use guidance: call with no args to get the login link, call with token after the user pastes a JWT, or alternatively configure a permanent header in the server's config. It clearly contrasts the session-only vs permanent options, which is essential for an agent deciding how to invoke this tool.

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, covering safety. The description adds context about return states (authenticated:true, pending[], connect_url) but doesn't disclose additional behaviors like rate limits or error handling. No contradiction.

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, concise and front-loaded with the core purpose. Every sentence adds useful information about return states.

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 zero parameters, strong annotations, and no output schema, the description sufficiently explains the tool's behavior and return states. It could mention whether output is a JSON object but that is implied by the context.

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?

Tool has zero parameters, so schema coverage is trivially 100%. Description adds value by explaining what the output means (authenticated, pending, connect_url), even though there are no parameters to document.

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 that the tool returns connection status and URLs, specifying what happens when providers are connected or credentials are missing. It distinguishes from siblings like 'authenticate' which likely initiates the connection flow.

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 for checking connection status, but does not explicitly state when to use it versus 'authenticate' or other tools. It lacks explicit alternatives or exclusions.

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 annotations, disclosing that invoke runs tools one-off without installing them, that credential/payment gaps surface as links, that install/subscribe/cancel require owner/admin, and that prompt-library links open without login. This gives the agent a strong model of side effects and prerequisites.

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 dense but front-loaded with the core purpose and flow, then covers each action succinctly. It is somewhat long and packs marketplace behavior and the prompt library into one paragraph, but almost every sentence adds needed information for a tool with this breadth.

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 complexity — 14 actions, 23 parameters, and no output schema — the description does a strong job covering the main flows, auth requirements, billing/payment behavior, installed-status flags, and the prompt library. It does not describe return shapes or error behavior for every action, but provides enough guidance for an agent to select and invoke the correct action.

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, and it does explain the core action flow and key roles like action, mcp_id, tool_id, and arguments. However, many parameters such as limit, immediate, tier_slug, conversation, cancel_reason, request_name, and report_context are never explicitly mapped, leaving gaps for correct invocation.

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 the official mcp.ai marketplace catalog and runtime, with a specific multi-action design. It differentiates the tool from siblings by enumerating its actions and the overall 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?

The description explicitly explains when to use each action: search vs describe vs invoke, prefer invoke for one-off use, use install only for permanent additions, list_tools for currently callable tools, and report_bug/request_mcp for feedback/new MCPs. It also provides clear be-havioral guidance on when invoke requires a connect or checkout link and to retry afterward.

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

pref_sp_guarulhos_cndm_consultarB
Read-onlyIdempotent
Inspect

Prefeitura SP Guarulhos: Certidão Negativa de Débitos Mobiliários, 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
cpfNo
cnpjNo
inscricao_municipalNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, and the description is consistent with this read-only nature. The description adds meaningful context beyond annotations: no platform credentials required, prepaid per-query pricing model, non-confidential data provenance, and LGPD data controller responsibilities. This gives an agent a realistic understanding of side effects (payment deduction) and compliance expectations.

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?

Four information-dense sentences in a single paragraph, front-loaded with the core purpose before adding payment, data provenance, and compliance details. No filler words. It could be slightly restructured so the LGPD sentence is more integrated, but overall every clause earns its place.

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

Completeness2/5

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

For a query tool with 3 optional parameters and no output schema, the description should clarify what the response looks like (e.g., certificate PDF, JSON with debt status, error on found debts) and whether any identifier is required. The description covers 'where,' 'how,' and 'legal what' but omits the critical 'what do I get back' since neither the schema nor annotations provide this context.

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% and the description provides zero additional detail about the three parameters (cpf, cnpj, inscricao_municipal). It doesn't clarify that at least one is likely needed, whether they're mutually exclusive, format requirements (with/without punctuation), or which to provide for which use case. The parameter names are self-evident to Brazilian audiences but an AI agent would benefit from constraints like 'provide at least one' or 'inscricao_municipal applies only to Guarulhos-registered entities.'

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 purpose: querying a 'Certidão Negativa de Débitos Mobiliários' (Negative Certificate of Municipal Debts) from Prefeitura SP Guarulhos via official sources. The verb 'consulta' (query) and resource 'CNDM' are specific and identifiable. It's not a tautology, though it could more explicitly differentiate from potential sibling data 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?

The description provides context about when to use the tool: it's a pay-per-query service using prepaid credit, hosted on the platform, and queries public/official data available to citizens. However, it doesn't explicitly state when NOT to use it or name alternatives beyond the payment model. The LGPD note about the client being the data controller is a useful decision factor but isn't a substitute for explicit exclusion criteria.

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[]
Behavior4/5

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

The description adds context beyond the `readOnlyHint` and `idempotentHint` annotations by informing the agent of the expected side effect (sending data) and the guarantee that including the conversation array aids in reproduction. While it doesn't detail the entire external process, it clarifies the user-request context. The annotation `idempotentHint: true` isn't contradicted; it's a benign report, so the description is acceptable.

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 compact two sentences. The first sentence clearly states the function, and the second gives a specific, actionable instruction for the user to improve the report. There is no wasted language.

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 no output schema and moderate complexity (one required param), the description adequately covers the core use case, expected input, and a key behavioral requirement for reproduction. It could be slightly more explicit about the behavior when no conversation is provided, but it's already sufficient for an agent to use 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 description successfully compensates for the 0% schema coverage by explaining the `conversation` field ('Include the conversation array with recent messages for reproduction'). It clarifies why fields like `message` are needed. While `context` is not explicitly detailed, the description provides enough semantic context for the overall tool function.

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: 'Report a bug, missing feature, or send feedback.' This uses a specific verb (report/send) and a clear resource (bug/feature/feedback) and explicitly scopes the tool's function, distinguishing it from siblings like marketplace or 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 clearly implies when to use this tool (whenever a bug or feature request is mentioned) and provides explicit guidance on how to use it effectively by instructing to include the conversation array for reproduction. It doesn't explicitly name alternative tools, but the use case is well-defined and distinct from its siblings.

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 'current' versions, implying a real-time lookup, but does not detail output format or potential network calls. With annotations doing the heavy lifting, this is adequate but 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?

A single, clear sentence with no filler. It is front-loaded and precisely states the tool's function.

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 simplicity of the tool, no output schema is required. The description fully conveys the output (versions) and is complete for the intended use.

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 trivially covers 100% of the parameter space. No parameter descriptions are needed, but the description is sufficient as the purpose clarifies what information is returned.

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 ('Show') and resource ('current MCP platform and adapter versions'), clearly defining the tool's purpose. It is distinct from siblings like 'authenticate' or 'connect', which have different actions.

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?

While no explicit when-to-use or alternatives are given, the context is simple and self-evident. The tool is for retrieving version info, and no competing tools are apparent. This clarity suffices for a trivial read-only operation.

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=true, idempotentHint=true, and destructiveHint=false. The description adds valuable context by enumerating what the state snapshot includes, which goes beyond the structured metadata and helps the agent know what to expect.

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, front-loaded sentence that states the operation and immediately lists the concrete return categories. Every part earns its place, with no filler or redundant text.

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 simple, no-argument, read-only tool with strong annotations, the description fully covers what the agent needs to know: it describes the output dimensions (MCPs, connection status, accounts, catalog tool counts). No output schema exists, but the description compensates adequately.

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?

This tool has zero parameters and the schema coverage is effectively 100% (empty properties object). There is no parameter-information burden for the description to carry, so the baseline 4 for zero-parameter tools 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?

The description uses a specific verb ('Returns') and clearly identifies the resource ('current toolkit state') and the exact returned content: installed MCPs, connection status, connected accounts, and catalog tool counts. This distinguishes it from sibling tools like authenticate/connect, which imply state-changing operations.

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 establishes a clear informational context: use this to inspect the toolkit's current state. It does not explicitly name alternatives or exclusions, but the usage context is obvious and distinct from sibling tools.

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.