Model Coupling Platform Server
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
Crear entorno virtual
uv venv -p python3.10 .venv\Scripts\activate # En Unix: source .venv/bin/activate
Instalar dependencias
sincronización UV bloqueo UV
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
Ejecución del servidor MCP
Iniciar el servidor cd src uvicorn server:app --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
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
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
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()
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
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
This server cannot be deployed
Maintenance
Related MCP Connectors
QuLab MCP remote server (Streamable HTTP) for computational science and lab tools.
Remote ChromaDB vector database MCP server with streamable HTTP transport
Safety-first EVM and Bitcoin RPC tools for balances, contracts, blocks, and transactions
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA server implementing Model Coupling Protocol for HDF5 file operations, Slurm job management, hardware monitoring, and data compression.MIT
- FlicenseNot gradedqualityDmaintenanceA JSON-RPC 2.0 compliant server that enables interaction with HDF5 data files and Slurm job scheduling through standardized API endpoints.-
- FlicenseNot gradedqualityDmaintenanceA FastAPI-based server that provides tools for local file management and Databricks operations, enabling users to create/edit files locally and interact with Databricks clusters, jobs, and DLT pipelines.-
- FlicenseBqualityDmaintenanceA demonstration server that implements JSON-RPC 2.0 methods for basic arithmetic using FastAPI. It provides integration examples for the Model Context Protocol (MCP) using FastMCP to connect with Claude Desktop.1-