Skip to main content
Glama

Model Coupling Platform Server

by EstebanIIT

Implementación del servidor MCP

Nombre: Esteban Nicolas ID de estudiante: A20593170

I. Capacidades MCP implementadas

1 Recursos de datos 1.1 Listado de archivos HDF5

  • Enumera archivos HDF5 simulados en una estructura de directorio
  • Parámetros: path_pattern (patrón de ruta de archivo opcional)

2 Herramientas 2.1 Envío de trabajos de Slurm

  • Simula el envío de un trabajo a un programador Slurm
  • Parámetros: script_path (obligatorio), cores (opcional, valor predeterminado=1)

2.2 Informes de núcleos de CPU

  • Informa el número de núcleos de CPU disponibles en el sistema
  • No se requieren parámetros

2.3 Visualización CSV

  • Traza dos columnas de un archivo CSV (el valor predeterminado son las dos primeras columnas)
  • Parámetros: csv_path (obligatorio), column x , column y (ambas opcionales)

II. Instrucciones de configuración

  1. Crear entorno virtual

uv venv -p python3.10 .venv\Scripts\activate # En Unix: source .venv/bin/activate

  1. Instalar dependencias

sincronización UV bloqueo UV

  1. Configuración del entorno: El proyecto utiliza pyproject.toml para la gestión de dependencias. Las dependencias clave incluyen:

API rápida

Uvicornio

Pydantic

Pandas

Matplotlib

Pytest

Pytest-ascyncio

  1. Ejecución del servidor MCP

Iniciar el servidor cd src uvicorn server --reload

El servidor estará disponible en:

Punto final de la API: http://localhost:8000/mcp Comprobación del estado: http://localhost:8000/health

III Pruebas

  1. Ejecutar todas las pruebas:

pruebas de pytest/Ejecutar archivo de prueba específico:

pruebas de pytest/test_capabilities_plot_vis.py pruebas de pytest/test_capabilities_hdf5.py pruebas de pytest/test_capabilities_cpu_core.py pruebas de pytest/test_capabilities_slurm.py pruebas de pytest/test_mcp_handler.py

  1. Solicitudes de ejemplo 2.1 Lista de recursos disponibles

curl -X POST http://localhost:8000/mcp
-H "Tipo de contenido: aplicación/json"
-d '{"jsonrpc":"2.0","método":"mcp/listResources","id":1}'

2.2 Lista de archivos HDF5

curl -X POST http://localhost:8000/mcp
-H "Tipo de contenido: aplicación/json"
-d '{"jsonrpc":"2.0","método":"mcp/callTool","parámetros":{"herramienta":"lista_de_archivos_hdf5","patrón_de_ruta":"/data/sim_run_123"},"id":2}'

2.3 Enviar trabajo de Slurm

curl -X POST http://localhost:8000/mcp
-H "Tipo de contenido: aplicación/json"
-d '{"jsonrpc":"2.0","método":"mcp/callTool","parámetros":{"herramienta":"slurm_job_submission","ruta_de_script":"/jobs/analysis.sh","núcleos":4},"id":3}'

2.4 Trazar columnas CSV

curl -X POST http://localhost:8000/mcp
-H "Tipo de contenido: aplicación/json"
-d '{"jsonrpc":"2.0","método":"mcp/callTool","parámetros":{"herramienta":"plot_vis_columns","csv_path":"data.csv","columna x":"tiempo","columna y":"temperatura"},"id":4}'

IV Notas de implementación

  1. Implementaciones simuladas:

-El listado de archivos HDF5 utiliza una estructura de directorio simulada -El envío de trabajos de Slurm genera identificadores de trabajos simulados -Los informes de núcleos de CPU utilizan os.cpu_count()

  1. Visualización CSV:

-Crea gráficos en un directorio plots_results -El valor predeterminado son las dos primeras columnas si no se especifica ninguna -Devuelve la ruta al archivo PNG generado

  1. Manejo de errores:

-Respuestas de error JSON-RPC 2.0 adecuadas -Validación de entrada para todos los parámetros -Manejo elegante de archivos faltantes/rutas no válidas

GITHUB: https://github.com/EstebanIIT/cs550\_MCP.git

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

local-only server

The server can only run on the client's local machine because it depends on local resources.

Una implementación de servidor JSON-RPC 2.0 basada en FastAPI que permite a los usuarios trabajar con archivos HDF5, enviar trabajos Slurm, recuperar información de la CPU y visualizar datos CSV a través de puntos finales de API estandarizados.

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    A server implementing Model Coupling Protocol for HDF5 file operations, Slurm job management, hardware monitoring, and data compression.
    Last updated -
    Python
    MIT License
  • -
    security
    F
    license
    -
    quality
    A JSON-RPC 2.0 compliant server that enables interaction with HDF5 data files and Slurm job scheduling through standardized API endpoints.
    Last updated -
    Python
  • -
    security
    A
    license
    -
    quality
    A lightweight FastAPI server that allows remote execution of shell commands on Windows, with real-time output streaming and security features like API key authentication and rate limiting.
    Last updated -
    1
    Python
    MIT License

View all related MCP servers

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/EstebanIIT/CS550_MCP'

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