Model Coupling Platform Server
Serves as the API framework for the MCP server, providing the endpoints for handling MCP requests and responses.
Hosts the source code repository for the MCP server implementation.
Used for CSV data manipulation and preparation for visualization tools in the MCP server.
Handles data validation and serialization for the MCP API requests and responses.
Provides the testing framework for validating MCP server capabilities and API functionality.
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., "@Model Coupling Platform Serverplot temperature vs time from data.csv"
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.
MCP Server Implementation
Name: Esteban Nicolas Student ID: A20593170
I. Implemented MCP Capabilities
1 Data Resources 1.1 HDF5 File Listing
Lists mock HDF5 files in a directory structure
Parameters:
path_pattern(optional file path pattern)
2 Tools 2.1 Slurm Job Submission
Simulates job submission to a Slurm scheduler
Parameters:
script_path(required),cores(optional, default=1)
2.2 CPU Core Reporting
Reports number of CPU cores available on the system
No parameters required
2.3 CSV Visualization
Plots two columns from a CSV file (defaults to first two columns)
Parameters:
csv_path(required),column x,column y(both optional)
II. Setup Instructions
Create virtual environment
uv venv -p python3.10 .venv\Scripts\activate # On Unix: source .venv/bin/activate
Install dependencies
uv sync uv lock
Environment configuration The project uses pyproject.toml for dependency management. Key dependencies include:
FastAPI
Uvicorn
Pydantic
Pandas
Matplotlib
Pytest
Pytest-ascyncio
Running the MCP Server
Start the server cd src uvicorn server:app --reload
The server will be available at:
API endpoint: http://localhost:8000/mcp Health check: http://localhost:8000/health
III Testing
Run all tests:
pytest tests/ Run specific test file:
pytest tests/test_capabilities_plot_vis.py pytest tests/test_capabilities_hdf5.py pytest tests/test_capabilities_cpu_core.py pytest tests/test_capabilities_slurm.py pytest tests/test_mcp_handler.py
Example Requests 2.1 List available resources
curl -X POST http://localhost:8000/mcp
-H "Content-Type: application/json"
-d '{"jsonrpc":"2.0","method":"mcp/listResources","id":1}'
2.2 List HDF5 files
curl -X POST http://localhost:8000/mcp
-H "Content-Type: application/json"
-d '{"jsonrpc":"2.0","method":"mcp/callTool","params":{"tool":"hdf5_file_listing","path_pattern":"/data/sim_run_123"},"id":2}'
2.3 Submit Slurm job
curl -X POST http://localhost:8000/mcp
-H "Content-Type: application/json"
-d '{"jsonrpc":"2.0","method":"mcp/callTool","params":{"tool":"slurm_job_submission","script_path":"/jobs/analysis.sh","cores":4},"id":3}'
2.4 Plot CSV columns
curl -X POST http://localhost:8000/mcp
-H "Content-Type: application/json"
-d '{"jsonrpc":"2.0","method":"mcp/callTool","params":{"tool":"plot_vis_columns","csv_path":"data.csv","column x":"time","column y":"temperature"},"id":4}'
IV Implementation Notes
Mock Implementations:
-HDF5 file listing uses a simulated directory structure -Slurm job submission generates mock job IDs -CPU core reporting uses os.cpu_count()
CSV Visualization:
-Creates plots in a plots_results directory -Defaults to first two columns if none specified -Returns path to generated PNG file
Error Handling:
-Proper JSON-RPC 2.0 error responses -Input validation for all parameters -Graceful handling of missing files/invalid paths
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-