Voltar as noticias
Criei um Servidor MCP de Registro de Saúde Focado em Privacidade que Funciona Totalmente na Sua Máquina
MCP ProtocolMediaEN

Criei um Servidor MCP de Registro de Saúde Focado em Privacidade que Funciona Totalmente na Sua Máquina

Dev.to - MCP·4 de julho de 2026

Como eu usei o Modelo de Protocolo de Contexto, Gemini Vision e criptografia AES-256 para permitir que Claude respondesse perguntas sobre seus dados pessoais de saúde — sem enviar esses dados para lugar algum.

O Problema com a IA em Saúde

Todo produto de IA em saúde importante tem a mesma arquitetura: você envia seus documentos para a nuvem deles, eles processam e armazenam, e você espera que a política de privacidade deles se mantenha. Para dicas gerais de bem-estar, isso provavelmente está bem. Para seus registros médicos reais — prescrições, resultados de exames, resumos de alta — é um pedido de confiança significativo.

Eu queria algo diferente. Eu queria que Claude pudesse responder perguntas como "quais medicamentos estou tomando?" ou "é seguro adicionar Ibuprofeno aos meus medicamentos atuais?" usando meus registros de saúde reais, sem que esses registros jamais deixassem minha máquina.

O resultado é MedMemory — um servidor MCP que armazena seus dados de saúde em um banco de dados SQLite criptografado com AES-256 localmente, extrai informações estruturadas de documentos médicos usando o Gemini Vision e expõe 8 ferramentas para o Claude Desktop, para que você possa consultar seu histórico de saúde em linguagem natural.

O que é MCP?

O Modelo de Protocolo de Contexto (MCP) é o padrão aberto da Anthropic para dar acesso a LLMs a ferramentas externas e fontes de dados. Em vez de ajustar um modelo ou construir um pipeline RAG, você escreve um servidor que expõe ferramentas tipadas — funções com nomes, descrições e esquemas de entrada — e o LLM decide quando chamá-las com base na conversa.

A chave é que as docstrings das ferramentas são a camada de inteligência. Quando você pergunta a Claude "estou atualizado nas minhas vacinas?", Claude não sabe que tem uma ferramenta de vacinação até ler a docstring:

@mcp.tool()
async def get_vaccination_status(ctx: Context) -> dict:
    """Retorna todas as vacinações registradas e sinaliza as que estão atrasadas ou faltando.

    Use isso quando o usuário perguntar sobre:
    - seu histórico de vacinação ou registros de imunização
    - se estão atualizados nas vacinas
    - quais vacinas estão faltando ou atrasadas
    - recomendações de vacinas para viagem
    """

Essa docstring é o que faz Claude chamar a ferramenta certa no momento certo. Escrever boas docstrings é a habilidade mais importante no desenvolvimento do MCP.

A Arquitetura

MedMemory tem três camadas:

1. Armazenamento — SQLite criptografado com SQLCipher

Todos os dados de saúde vivem em um banco de dados SQLite local criptografado com SQLCipher (AES-256). A chave de criptografia é definida pelo usuário na primeira execução e nunca sai da máquina. Se você abrir o arquivo do banco de dados em qualquer editor de texto, verá bytes aleatórios — não SQL legível.

$ xxd medmemory.db | head -3
00000000: e7ea 869f 47b1 bec2 8eb8 78f3 8fe9 57e7  ....G.....x...W.
00000010: 44c2 3e72 3056 bb14 ae19 1b53 5530 54e9  D.>r0V.....SU0T.

A migração do SQLite simples para o SQLCipher foi exatamente 3 linhas de código — import sqlcipher3 as sqlite3, além de duas linhas PRAGMA em get_connection(). Todo o resto permaneceu idêntico. O SQLCipher é uma verdadeira substituição direta.

2. Ingestão — Gemini Vision para documentos do mundo real

Documentos médicos no mundo real são bagunçados — prescrições manuscritas, PDFs digitalizados, fotos tiradas em ângulos. Comecei com o Tesseract OCR, mas ele falhou completamente em prescrições indianas manuscritas. A solução foi contornar o OCR completamente para documentos baseados em imagem e enviar a imagem diretamente para o Gemini Vision, que lê a caligrafia nativamente.

O pipeline de extração agora funciona assim:

  • PDF de texto nativo (por exemplo, relatório de laboratório digital): PyMuPDF extrai markdown → Gemini estrutura as entidades
  • PDF ou imagem digitalizada/manuscrita: renderiza para PNG → envia diretamente para o Gemini Vision

O prompt de extração inclui mapeamentos explícitos de nomes de medicamentos de marca para genéricos e regras de normalização de marcadores de laboratório, além de um exemplo de poucos disparos mostrando exatamente qual formato de saída é esperado. Isso melhorou dramaticamente a precisão em documentos reais:

"Glycomet" → "Metformina"
"Storvas" → "Atorvastatina"  
"Gabantin-GRS" → "Gabapentina"
"Zerodol-P" → dividido em "Aceclofenaco" e "Paracetamol"
"LDL Colesterol" → "LDL"
"S. Creatinina" → "creatinina"

3. Ferramentas MCP — 8 ferramentas cobrindo todo o registro de saúde

Ferramenta O que faz
ingest_health_document Analisa qualquer PDF ou imagem médica em registros estruturados no DB
get_current_medications Retorna lista de medicamentos ativos com doses e frequências
get_lab_trend Mostra leituras históricas para qualquer marcador de laboratório
get_visit_history Visitas ao médico com filtro de especialidade opcional
get_vaccination_status Cruzamento do DB com o cronograma adulto da OMS, sinaliza lacunas
check_drug_interaction Consulta a API OpenFDA contra sua lista atual de medicamentos
get_allergies Retorna alergias registradas
generate_health_summary Sintetiza todas as tabelas em uma página imprimível

A Ferramenta de Interação Medicamentosa — O Recurso Clinicamente Mais Importante

check_drug_interaction é a ferramenta da qual mais me orgulho. Ela pega o nome de um novo medicamento prescrito, puxa seus medicamentos atuais do DB criptografado, consulta a API de rótulo de medicamentos OpenFDA para os dados de interação do novo medicamento e retorna um resultado estruturado combinando ambos.

# Conversa no Claude Desktop
Usuário: Meu médico acabou de prescrever Ibuprofeno para dor nas costas. 
      É seguro com meus medicamentos atuais?

Claude: [chama get_current_medications  Metformina, Atorvastatina, Aspirina]
        [chama check_drug_interaction("Ibuprofeno")  dados de rótulo FDA para o novo medicamento...
Contexto Triplo Up

O desenvolvimento de soluções de saúde que priorizam a privacidade pode impactar positivamente empresas brasileiras do setor de saúde. A utilização de protocolos como o MCP pode melhorar a segurança dos dados dos pacientes. Isso pode aumentar a confiança dos usuários em serviços de saúde digital.

Noticias relacionadas

Gostou do conteudo?

Receba toda semana as principais novidades sobre WebMCP.