secure-clinical-data-agent
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@secure-clinical-data-agentWhat is the total number of patients discharged last week?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🏥 Secure Clinical Data Agent (Google ADK & MCP)
Developed as part of the 5-Day AI Agents Intensive Course with Google.
Este proyecto implementa un agente de Inteligencia Artificial diseñado para consultar una base de datos clĂnica SQL Server y responder preguntas estadĂsticas complejas en lenguaje natural. Está construido de manera profesional y modular, aislando los datos sensibles del hospital (PHI) mediante el uso de un modelo local de Ollama y exponiendo el acceso a la base de datos a travĂ©s de un servidor de Model Context Protocol (MCP) reutilizable y seguro.
Arquitectura del Proyecto
agentes-adk/
├── .agents/
│ └── skills/
│ ├── clinical-statistics/ # Skill (Intent Routing y extracción de parámetros)
│
├── src/
│ ├── __init__.py
│ ├── db/
│ │ ├── __init__.py
│ │ ├── connection.py # Conexión a la base de datos (pyodbc)
│ │ └── operations.py # Consultas SQL seguras y Pandas DataFrames
│ ├── mcp/
│ │ ├── __init__.py
│ │ └── server.py # Servidor FastMCP que expone las herramientas de BD
│ └── agent/
│ ├── __init__.py
│ └── agent.py # Configuración del Agente ADK con Ollama y herramientas MCP
├── .env # Variables de entorno (SQL Server, Ollama y API keys)
├── requirements.txt # Dependencias de Python
├── main.py # Consola de chat interactiva con el agente
└── run_mcp.py # Lanzador del servidor MCP independiente (Stdio o HTTP/SSE)Related MCP server: sqlserver-mcp
Requisitos Previos
Python 3.10+
Driver ODBC de SQL Server: AsegĂşrate de tener instalado "ODBC Driver 17 for SQL Server".
Servidor de Ollama: Debe estar corriendo en la red local (ej:
xxxx) con el modeloxxxdescargado.
ConfiguraciĂłn de Inicio
1. Preparar el Entorno Virtual
En Windows (PowerShell):
python -m venv .venv
.venv\Scripts\Activate.ps1Instalar Dependencias:
pip install -r requirements.txt2. Configurar Variables de Entorno (.env)
Edita el archivo .env en la raĂz con tus credenciales reales:
# ConexiĂłn SQL Server (Se recomienda un usuario de SOLO LECTURA)
DB_HOST=10.xx.0.X
DB_NAME=xx
DB_USER=usuario_solo_lectura
DB_PASSWORD=contraseña_segura
DB_PORT=xxx
# Ollama Local (Resguardo de datos del hospital)
OLLAMA_API_BASE=http://xxx.xxx.xxx.xxx:xxx
LLM_MODEL_QA=xxxxxEjecuciĂłn del Proyecto
OpciĂłn A: Interfaz de Consola Interactiva (Agente completo)
Este script inicia el agente ADK, el cual levanta automáticamente el servidor MCP de base de datos de forma interna, conectándose a Ollama para procesar tus preguntas:
python main.pyOpciĂłn B: Interfaz Web Oficial de ADK
Puedes interactuar con tu agente utilizando la interfaz web integrada del ADK, ideal para depurar visualmente los pasos cognitivos de Ollama y las consultas SQL ejecutadas:
adk web src/agent
OpciĂłn C: Ejecutar el Servidor MCP de Forma Independiente (SSE)
Si quieres que otros agentes o sistemas externos (como Claude Desktop o cursores de desarrollo) consuman tus consultas SQL, puedes levantar el servidor de base de datos como un servicio web HTTP/SSE independiente:
fastmcp run src/mcp/server.py --transport http --port 8000Seguridad y Control de Datos
Modelo Local: Los datos clĂnicos y las consultas de la historia clĂnica se procesan 100% en tu servidor de Ollama (
xxx), por lo que no viajan a internet ni a APIs pĂşblicas de terceros.ValidaciĂłn de Consultas: La herramienta
query_clinical_statisticsimplementa una verificaciĂłn estricta ensrc/db/operations.pypara asegurar que las consultas del agente comiencen Ăşnicamente conSELECToWITHy rechaza palabras destructivas comoDROP,DELETE,UPDATE,INSERT, etc.
This server cannot be deployed
Maintenance
Related MCP Connectors
Text-to-SQL MCP server: read-only queries on PostgreSQL, MySQL and SQL Server with your real schema
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Medical RAG: semantic search for clinical guidelines, drug interactions, diagnoses & EHR data.
Medical RAG: semantic search for clinical guidelines, drug interactions, diagnoses & EHR data.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides secure, read-only access to Microsoft SQL Server with multi-layer protection, enabling safe query execution, schema discovery, and SQL script analysis through natural language.2-
- FlicenseNot gradedqualityDmaintenanceEnables secure interaction with Microsoft SQL Server databases, allowing schema exploration, metadata retrieval, and read-only query execution through natural language.1-
- AlicenseAqualityCmaintenanceSecurity-first, read-only MCP server for Microsoft SQL Server, enabling safe natural-language querying of databases.510 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables secure, privacy-first SQL database interaction via natural language, using local LLM and PostgreSQL with dynamic tool-calling.-