brasil-planos-saude-mcp
MCP server that helps answer "is this health plan any good?" in Brazil. Claude (or any MCP client) can look up a health-plan operator (operadora de plano de saúde) and see what the regulator, ANS, publishes about it: complaints, quality score, access-to-care monitoring, fines and readjustments. It can compare operators side by side and rank them.
Read-only, no key, no account. Everything comes from the ANS open-data portal. Not affiliated with ANS or any operator.
Operators, not plans or prices. ANS publishes these indicators per operator. A single operator sells many plans with different networks; check the network and the price with the operator or a broker.
Not legal advice. For a denied or delayed procedure, use
where_to_complain(Disque ANS 0800 701 9656). In an emergency, get care first.
Tools
operator_profile
Everything about one operator: registration and status (active, or cancelled with date and reason), beneficiaries and size class, the complaints index with its position among operators of the same size, five years of IDSS, the access-to-care band, fines, and the small-group readjustment.
Parameters: operator (name or part of it, CNPJ, or ANS registry number), coverage (medica or odonto). A shared brand such as "Unimed" (hundreds of separate cooperatives) returns the largest matches and asks for a more specific name.
compare_operators
Two to eight operators side by side: 12-month complaints index against the median of their size class, latest IDSS, latest access-to-care band, fines in the last five years, latest small-group readjustment.
Parameters: operators (list), coverage.
rank_operators
Active operators ranked by complaints (by="reclamacoes", lower is better) or quality (by="qualidade", latest IDSS, higher is better).
Parameters: by, coverage, porte (pequeno, medio, grande), uf, modality, min_beneficiaries (default 5000), worst_first, limit.
find_operators
Search by name, CNPJ or registry number, or list by head-office state, city or modality (cooperativa médica, medicina de grupo, seguradora, autogestão, odontologia de grupo, filantropia). Largest first.
where_to_complain
The official ANS channels, checked on the ANS consumer-service page, and how a complaint (NIP) works.
What the numbers mean
| Indicator | What it is | Better | Updated |
|---|---|---|---|
| IGR (Índice Geral de Reclamações) | Complaints to ANS per 100,000 beneficiaries in a month (2023 method). ANS compares operators of the same size: small < 20k, medium 20k-100k, large > 100k beneficiaries. The server also gives a 12-month average, which is steadier. | lower | monthly |
| IDSS (Índice de Desempenho da Saúde Suplementar) | ANS's yearly 0-1 score, with four dimensions: quality of care (IDQS), access (IDGA), market sustainability (IDSM), processes and regulation (IDGR). | higher | yearly |
| Garantia de atendimento | Quarterly band for denied or delayed coverage: 0 no upheld complaints, 1 below the median, 3 more than 50% above the median. Band 3 again and again leads ANS to suspend sales of plans. | lower | quarterly, when ANS publishes |
| Penalidades | Fines ANS applied, by year and status, including fines under appeal, suspended or archived. Not what was paid. | fewer, relative to size | when ANS publishes |
| Reajuste do agrupamento | The readjustment the operator applied to its pool of collective contracts with fewer than 30 lives. Individual/family plans follow a cap set by ANS instead. | yearly |
Every result says which month, quarter or year each figure belongs to, and links the file it came from.
Data and cache
The first call downloads seven ANS files (about 65 MB) and keeps a compact copy (about 1 MB) in your user cache folder. After 24 hours the server asks ANS whether a file changed and downloads it again only if it did. If ANS is down, it uses the cached copy and says so. To fill the cache in advance:
brasil-planos-saude-mcp --refresh
Set BRASIL_PLANOS_SAUDE_CACHE_DIR to use another folder.
The operator registry file also has the operator's contact e-mail and the name of its legal representative. This server leaves both out.
Install
Quickest (needs uv): no clone needed, it runs straight from PyPI.
claude mcp add brasil-planos-saude -- uvx brasil-planos-saude-mcp
For Claude Desktop, use "command": "uvx", "args": ["brasil-planos-saude-mcp"].
From source:
Requires Python 3.10+.
git clone https://github.com/ThiagoJacobLannes/brasil-planos-saude-mcp
cd brasil-planos-saude-mcp
python -m pip install -e .
On Windows, if you keep code in a cloud-synced folder (Google Drive, OneDrive), create the virtual environment outside it. Sync clients drop desktop.ini files into folders, which can crash packages on startup.
Add to Claude Code
claude mcp add brasil-planos-saude -- python -m brasil_planos_saude_mcp.server
Add to Claude Desktop
Merge claude_desktop_config.snippet.json into your Claude Desktop claude_desktop_config.json, then restart Claude Desktop:
{
"mcpServers": {
"brasil-planos-saude": {
"command": "python",
"args": ["-m", "brasil_planos_saude_mcp.server"]
}
}
}
Example questions
- "Is Hapvida any good? How does it do on complaints?"
- "Compare Amil, Bradesco Saúde, SulAmérica and Porto Seguro."
- "Which large health plans get the fewest complaints?"
- "Best-rated dental plans."
- "Has Unimed Campinas been fined by ANS?"
- "My plan denied a procedure. Where do I complain?"
License
MIT
Metadata
Release files for brasil-planos-saude-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| brasil_planos_saude_mcp-0.1.0.tar.gz | 21.2 kB | With provenance | Details for brasil_planos_saude_mcp-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| brasil_planos_saude_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for brasil_planos_saude_mcp-0.1.0-py3-none-any.whl |
Total release size: 42.8 kB
Release files / brasil_planos_saude_mcp-0.1.0.tar.gz
| Download URL | brasil_planos_saude_mcp-0.1.0.tar.gz |
|---|---|
| Size | 21.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
47b29898933c2776b791896981eea966350287e09e06a635c8700d177e93bc8a
|
|
BLAKE2b-256 checksum How to use checksums |
be8173dca0851e7a813a6ac5001b9670eb78641cb9f9c8b221ba31bc223e0e64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.
Transparency logRelease files / brasil_planos_saude_mcp-0.1.0-py3-none-any.whl
| Download URL | brasil_planos_saude_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 21.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9938200dce0edc37daf428321bad9766c3a9655e81ca7cceecaa7823cb98c623
|
|
BLAKE2b-256 checksum How to use checksums |
1e59bb257588ffe4ec62f3e73b5828a93b3dd7b48d1fa11779c1cf4babebea04
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.
Transparency logSecurity for brasil-planos-saude-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for brasil_planos_saude_mcp-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 1, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.