Skip to main content
Glama
sudhakaren

FastMCP Patient Information Server

by sudhakaren

Servidor de Información del Paciente FastMCP

Un servidor FastMCP que proporciona funcionalidad de recuperación de información del paciente a través de la herramienta get_patient.

Características

  • Herramienta get_patient: Recupera información completa del paciente, incluyendo:

    • Detalles personales (nombre, fecha de nacimiento, información de contacto)

    • Planes de seguro (Médico, Dental, Visión)

    • Información del empleado

Requisitos previos

  • Docker y Docker Compose instalados en su servidor Ubuntu

  • Acceso de red al servidor desde Watson Orchestrate

Instalación y despliegue

1. Transferir archivos al servidor Ubuntu

Copie todo el directorio fastmcp-server a su servidor Ubuntu:

scp -r fastmcp-server/ user@your-ubuntu-server:/path/to/deployment/

2. Construir y ejecutar con Docker Compose

Acceda por SSH a su servidor Ubuntu y navegue hasta el directorio:

ssh user@your-ubuntu-server
cd /path/to/deployment/fastmcp-server

Construya e inicie el contenedor:

docker-compose up -d --build

3. Verificar que el servidor se está ejecutando

Compruebe el estado del contenedor:

docker-compose ps

Ver los registros:

docker-compose logs -f

4. Probar el servidor localmente

curl http://localhost:8002/health

Conexión a Watson Orchestrate

Paso 1: Obtenga la URL de su servidor

Su servidor MCP será accesible en:

http://your-ubuntu-server-ip:8002

O si tiene un dominio:

https://your-domain.com:8002

Importante: Para producción, utilice HTTPS con certificados SSL adecuados.

Paso 2: Acceda a la página de herramientas de Watson Orchestrate

  1. Inicie sesión en su instancia de Watson Orchestrate

  2. Navegue a la sección Skills (Habilidades) o Tools (Herramientas)

  3. Haga clic en Add Tool (Añadir herramienta) o Connect Tool (Conectar herramienta)

Paso 3: Configurar la conexión MCP

  1. Connection Type (Tipo de conexión): Seleccione "MCP Server" o "Custom API"

  2. Server URL (URL del servidor): Introduzca el endpoint de su servidor

    http://your-ubuntu-server-ip:8002
  3. Authentication (Autenticación) (si es necesario):

    • Tipo: Ninguno (para una configuración básica)

    • Para producción, implemente OAuth2 o autenticación mediante clave API

  4. Connection Name (Nombre de la conexión): Patient Information MCP Server

  5. Description (Descripción): Provides patient information retrieval capabilities

Paso 4: Descubrir herramientas

  1. Haga clic en Discover Tools (Descubrir herramientas) o Test Connection (Probar conexión)

  2. Watson Orchestrate consultará al servidor MCP para obtener las herramientas disponibles

  3. Debería ver aparecer la herramienta get_patient

Paso 5: Configurar la herramienta get_patient

La herramienta se configurará automáticamente con:

  • Tool Name (Nombre de la herramienta): get_patient

  • Description (Descripción): Recuperar información del paciente por ID de contacto

  • Parameters (Parámetros):

    • contact_id (cadena opcional): El identificador de contacto único

Paso 6: Probar la herramienta

  1. En Watson Orchestrate, seleccione la herramienta get_patient

  2. Pruebe con el ID de contacto de muestra: 7c50f84d-62af-f011-bbd3-000d3a9b6dcb

  3. O pruebe sin parámetros para obtener los datos predeterminados del paciente

  4. Verifique que la respuesta coincida con el formato esperado

Paso 7: Crear habilidades usando la herramienta

  1. Navegue a Skills Builder en Watson Orchestrate

  2. Cree una nueva habilidad que utilice la herramienta get_patient

  3. Configure el flujo de la habilidad y los parámetros

  4. Pruebe y publique la habilidad

Ejemplo de YAML de conexión para Watson Orchestrate

Si Watson Orchestrate admite la configuración YAML, cree un archivo de conexión:

apiVersion: v1
kind: Connection
metadata:
  name: patient-mcp-server
spec:
  type: mcp
  endpoint: http://your-ubuntu-server-ip:8002
  authentication:
    type: none
  tools:
    - name: get_patient
      enabled: true

Consideraciones de seguridad para producción

1. Habilitar HTTPS

Utilice un proxy inverso (nginx) con SSL:

# Install nginx
sudo apt-get update
sudo apt-get install nginx certbot python3-certbot-nginx

# Configure SSL
sudo certbot --nginx -d your-domain.com

2. Añadir autenticación

Actualice server.py para incluir autenticación mediante clave API:

from fastapi import Header, HTTPException

@mcp.tool()
def get_patient(contact_id: str = None, api_key: str = Header(None)) -> Dict[str, Any]:
    if api_key != "your-secret-api-key":
        raise HTTPException(status_code=401, detail="Invalid API key")
    # ... rest of the function

3. Seguridad de red

  • Utilice reglas de firewall para restringir el acceso

  • Considere una VPN o una conexión de red privada

  • Implemente limitación de tasa (rate limiting)

4. Actualizar docker-compose.yml para producción

version: '3.8'

services:
  fastmcp-server:
    build: .
    container_name: patient-mcp-server
    ports:
      - "127.0.0.1:8002:8002"  # Only bind to localhost
    environment:
      - PYTHONUNBUFFERED=1
      - API_KEY=${API_KEY}  # Use environment variable
    restart: unless-stopped
    networks:
      - mcp-network

networks:
  mcp-network:
    driver: bridge

Solución de problemas

El servidor no inicia

# Check logs
docker-compose logs

# Rebuild container
docker-compose down
docker-compose up -d --build

Conexión rechazada desde Watson Orchestrate

  1. Verifique que el firewall permita el puerto 8002

  2. Compruebe que el servidor esté escuchando en 0.0.0.0, no en 127.0.0.1

  3. Pruebe con curl desde otra máquina

La herramienta no aparece en Watson Orchestrate

  1. Verifique que el servidor MCP responda a las solicitudes de descubrimiento de herramientas

  2. Compruebe los registros de Watson Orchestrate en busca de errores de conexión

  3. Asegúrese de que la URL del servidor sea correcta y accesible

Comandos de gestión

# Start the server
docker-compose up -d

# Stop the server
docker-compose down

# View logs
docker-compose logs -f

# Restart the server
docker-compose restart

# Update the server
git pull  # or copy new files
docker-compose up -d --build

Ampliación del servidor

Para añadir más herramientas, edite server.py:

@mcp.tool()
def get_patient_appointments(patient_id: str) -> Dict[str, Any]:
    """Get patient appointments"""
    # Implementation here
    pass

@mcp.tool()
def get_patient_claims(patient_id: str) -> Dict[str, Any]:
    """Get patient insurance claims"""
    # Implementation here
    pass

Luego reconstruya y reinicie:

docker-compose up -d --build

Soporte

Para problemas o preguntas:

  • Compruebe los registros: docker-compose logs

  • Revise la documentación de FastMCP: https://github.com/jlowin/fastmcp

  • Revise la documentación de integración de MCP de Watson Orchestrate

Licencia

[Su licencia aquí]

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sudhakaren/healthnav'

If you have feedback or need assistance with the MCP directory API, please join our Discord server