Conselho Federal de Medicina: Estabelecimentos de Saúde
Server Details
Conselho Federal de Medicina: Estabelecimentos de Saúde, official-source lookup. Platform-hosted, pa
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- mcp-dir/cfm_estabelecimento-mcp
- GitHub Stars
- 0
- Server Listing
- cfm_estabelecimento
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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.
Tool Definition Quality
Average 4.1/5 across 6 of 7 tools scored. Lowest: 3.5/5.
Each tool has a clearly distinct purpose: authentication, connection status, domain-specific query, marketplace operations, bug reporting, version display, and toolkit info. There is no overlap that would cause an agent to misselect.
Naming is inconsistent: some tools use single words without separators (authenticate, connect, marketplace), while others use underscores (report_bug, show_version, toolkit_info, cfm_estabelecimento_consultar). There is no consistent verb-noun pattern and the mix of styles reduces predictability.
With 7 tools, the count is reasonable and not excessive or overly thin. However, only one tool is domain-specific; the rest are generic platform utilities, which slightly dilutes the server's apparent focus.
Although the server is named for health establishments, it provides only a single query operation (cfm_estabelecimento_consultar) with no list, create, update, or delete capabilities. This is a significant gap that limits the domain coverage and forces agents to rely on external tools for common workflows.
Available Tools
7 toolsauthenticateAIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| token | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds useful behavioral context: the permanent/non-expiring config approach versus session-only login, and that calling with no args returns a link. It does not contradict annotations and gives enough transparency for an authentication tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core action, but it is a single long sentence with several clauses and alternatives. It is not bloated, yet better sentence separation would improve scannability for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter auth tool with no output schema, the description covers the main flow, the two usage modes, and the parameter semantics. It does not explicitly describe the response format, but the no-args behavior ('get the link') implies the return value sufficiently for this context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the only parameter is an undocumented optional 'token'. The description compensates fully by explaining that 'token' is a JWT to paste for session-only login, and that omitting it triggers the link-generation flow. This adds meaning well beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: authenticate an IDE agent by logging in via browser and obtaining an access token. It distinguishes itself from siblings by focusing specifically on authentication and token management, with explicit actions like 'log in in the browser, copy the access token.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: add the token to server config for a permanent connection, or paste it for a session-only login. It also specifies exactly how to call the tool—with a token parameter or with no arguments to receive the login link—making the invocation path clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cfm_estabelecimento_consultarARead-onlyIdempotentInspect
Conselho Federal de Medicina: Estabelecimentos de Saúde, 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).
| Name | Required | Description | Default |
|---|---|---|---|
| cnpj | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive. The description adds valuable context: hosted by platform, no platform credentials needed, pay-per-query with prepaid credit, data is official and non-confidential, and LGPD compliance responsibilities. This goes beyond annotations and clarifies operational and legal behavior without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph, succinctly covering the purpose, payment model, and legal notes. It is front-loaded with the core function and avoids unnecessary filler. Minor redundancy (e.g., 'fonte oficial' repeated) but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter) and lack of output schema, the description could be more complete. It does not describe the return value or what information is provided after a query (e.g., establishment name, address). It also omits any details on how the paid credit works or error handling. While it covers official source and LGPD, it leaves key operational aspects unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter, cnpj, is present and it's a plain string with no description in the schema (0% coverage). The description does not explain the parameter's format, expected pattern (e.g., CNPJ with punctuation), or purpose. While the name is self-explanatory, the description fails to add any semantic clarity beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it consults health establishments from an official Brazilian source (CFM). The verb 'consultar' and resource 'estabelecimentos de saúde' are specific, and the tool is distinct from sibling tools like authenticate or marketplace, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. It mentions it's a paid query with prepaid credit, but does not state criteria for choosing it over other tools or what the query is for (e.g., verifying registration). No exclusions or alternatives are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connectARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safe read-only nature is covered. The description adds valuable behavioral context by detailing the different response states (authenticated:true with empty pending[] vs connect_url when credentials are missing), which goes beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose, and every sentence provides needed conditional behavior. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must explain return values. It does so for the main scenarios (connected vs missing credentials) and notes the presence of pending[] and connect_url. It does not explain what pending[] contains or what 'per-install URLs' are, but for a simple status tool this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is empty with 100% coverage. Per the rubric, 0 parameters baseline is 4. The description does not need to add parameter semantics, and no additional clarity is possible.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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', which is a specific verb+resource. It further distinguishes from siblings by focusing on status retrieval rather than actions like authentication, and describes conditional outcomes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by explaining what happens when credentials are missing (returns connect_url) and when connected (returns authenticated:true). However, it does not explicitly state when to use this tool over alternatives like authenticate, leaving the usage guidance 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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| action | No | search | |
| mcp_id | No | ||
| message | No | ||
| tool_id | No | ||
| arguments | No | {} | |
| immediate | No | ||
| tier_slug | No | ||
| prompt_body | No | ||
| prompt_slug | No | ||
| prompt_tool | No | ||
| prompt_vars | No | {} | |
| conversation | No | [] | |
| prompt_title | No | ||
| request_name | No | ||
| cancel_reason | No | ||
| cancel_comment | No | ||
| prompt_targets | No | ||
| report_context | No | ||
| prompt_category | No | ||
| request_details | No | ||
| prompt_description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate non-read-only, open-world, non-idempotent, non-destructive. The description adds substantial behavioral context: invoke works even without installation, returns connect/checkout links if needed, writes require owner/admin, and one-off install behind invoke is disclosed. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-organized, presenting the core flow first, then edge cases, then the prompt library. Each sentence adds value for a tool of this complexity, though it is lengthy (about 200 words) and could be slightly trimmed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 14 actions, permissions, billing, and prompt features, the description covers most critical aspects: auth requirements, cost handling, return behaviors (links), and the distinction between permanent and one-off execution. It lacks an output schema but that's not required. Minor gaps remain (e.g., resume action, exact parameter formats) but overall it's robust.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% (no per-parameter descriptions) and there are 23 parameters. The description explains the purpose of key inputs (action, mcp_id, tool_id, prompt_slug, arguments implicitly) in the flow, but many parameters like limit, immediate, tier_slug, conversation, request_* are not mentioned. It partially compensates but leaves gaps for less obvious parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the tool as the official mcp.ai marketplace for discovering, describing, and running MCPs, plus a prompt library. It specifies the core flow (search→describe→invoke) and differentiates from siblings by covering both catalog and execution, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance is provided for when to use each action: prefer invoke for one-off use, use install only for permanent addition, list_tools for what's callable, and search_prompts for prompt text. It also states when writes require owner/admin and when to retry after connect/checkout links, giving clear alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_bugAIdempotentInspect
Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | ||
| message | Yes | ||
| conversation | No | [] |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and idempotentHint=true. The description adds useful behavioral context by disclosing that conversation data should be included for reproduction, implying data transmission. It does not describe side effects, response behavior, or whether a support ticket is created, but the annotations cover the core safety profile without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the core purpose and followed by an actionable instruction. Every word earns its place with no redundancy or irrelevant detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple bug-reporting tool, the description provides adequate purpose and one key usage hint. However, it leaves required parameters undocumented, gives no indication of return values or next steps, and is not complete enough given the absence of output schema and parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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, but it only mentions the conversation parameter and even refers to it as an 'array' when the schema defines it as a string. The required 'message' parameter and the optional 'context' parameter are not explained, leaving significant semantic gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 an action verb and resource: 'Report a bug, missing feature, or send feedback.' This is specific and distinguishes the tool from siblings like authenticate, marketplace, and show_version.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool ('Report a bug, missing feature, or send feedback') and provides a specific usage instruction: include the conversation array with recent messages for reproduction. It lacks explicit exclusions or alternative recommendations, but no sibling is a natural alternative for bug reporting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_versionARead-onlyIdempotentInspect
Show the current MCP platform and adapter versions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
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 tool's safe, non-destructive nature is covered. The description adds no further behavioral context, such as whether it might fail if not authenticated or what the output looks like, which is acceptable given the simplicity and parameterless nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with zero wasted words. It is concise and front-loaded with the purpose, meeting the highest standard for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema, and safe annotations), the description is complete enough. It captures the purpose and the specific information returned (platform and adapter versions), which is sufficient 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and the schema coverage is 100% (zero properties). The description adds sufficient meaning by stating that it shows both platform and adapter versions, which clarifies the output scope. Since there are no parameters to describe, a baseline of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool's purpose with a specific verb and resource: 'Show the current MCP platform and adapter versions.' It clearly distinguishes from siblings like authenticate, connect, and report_bug, though it does not explicitly contrast with toolkit_info which might also provide version-related info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when you need version information, but it does not explicitly state when to use it versus alternatives or when not to use it. Given its simple nature and zero parameters, it is clear enough, but there is no explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
toolkit_infoARead-onlyIdempotentInspect
Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds value by specifying the exact contents of the returned state (installed MCPs, status, accounts, catalog tools), which is not covered by the annotations. It does not mention rate limits or error behavior, but with strong annotation coverage, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence that front-loads the action ('Returns') and lists all key outputs. No wasted words, perfectly structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with no parameters and no output schema, the description comprehensively covers what the tool returns. It lists all relevant state aspects, making it complete for the intended purpose. No additional details are necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The description adds no parameter details since none exist, and there is no need for compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns the current toolkit state, enumerating specific data (installed MCPs, connection status, accounts, catalog tool counts). It uses a specific verb and resource, and is clearly distinct from siblings like authenticate or connect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (when you need toolkit state) but does not explicitly state when to use it or mention alternatives. No exclusions are given, but no direct guidance beyond the purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server for querying Brazilian Federal Council of Medicine (CFM) registration data from official sources. It provides a read-only tool to consult medical registrations via natural language.MIT
- AlicenseNot gradedqualityCmaintenanceAllows users to query the dental registry of the Regional Council of Dentistry of São Paulo from official sources.MIT
- AlicenseNot gradedqualityCmaintenanceRead-only MCP server for querying official dental professional registry data from the Regional Council of Dentistry of Maranhão, Brazil. Enables natural-language lookups via a single consult tool.MIT
- AlicenseAqualityAmaintenanceMCP server for loading and querying public data from the Brazilian National Registry of Health Establishments (CNES). It enables natural language searches for health facilities by municipality, CNES code, or state, along with statistics and data loading.6MIT
Your Connectors
Sign in to create a connector for this server.