CML MCP Server
An MCP server for interacting with Cloudera Machine Learning (CML).
CML MCP Server
A standalone MCP (Model Context Protocol) server for interacting with Cloudera Machine Learning (CML).
Requirements
- Python 3.8+
- Required Python packages:
- mcp[cli]>=1.2.0
- requests>=2.31.0
Installation
- Install the required packages:
pip install mcp[cli] requests
Or with uv:
uv pip install mcp[cli] requests
- Set up environment variables (optional):
# Traditional environment variables
export CML_API_TOKEN="your_api_token_here"
export CML_BASE_URL="https://your-cml-instance.cloudera.com"
# MCP configuration environment variables (preferred)
export CLOUDERA_ML_API_KEY="your_api_token_here"
export CLOUDERA_ML_HOST="https://your-cml-instance.cloudera.com"
# Certificate path (optional)
export CML_CERT_FILE="/path/to/your/certificate.pem"
- Download the SSL certificate from your CML server (if using a self-signed certificate):
python download_certificate.py
This will download the certificate from the CML server specified in the CLOUDERA_ML_HOST or CML_BASE_URL environment variable and save it to cml_ca.pem.
Usage
You can run the server using any of these commands:
# Using standard Python
python3 cml_mcp_server.py
# Using uv
uv run cml_mcp_server.py
# Using uvx
uvx cml_mcp_server.py
For help and configuration information:
python3 cml_mcp_server.py --help
You can also specify custom parameters:
python3 cml_mcp_server.py --token "your_api_token" --url "https://your-cml-instance.cloudera.com" --cert "/path/to/your/certificate.pem"
Direct Usage
You can also use the direct script to list projects without using the MCP server:
python direct_list_projects.py
Integration with Claude for Desktop
To use this server with Claude for Desktop:
- Create a
claude_desktop_config.jsonfile in your Claude for Desktop configuration directory - Add the following configuration (update the path to match your server location):
{
"mcpServers": {
"cml": {
"command": "uv",
"args": ["run", "/full/path/to/cml_mcp_server.py"],
"env": {
"CLOUDERA_ML_HOST": "https://your-cml-instance.cloudera.com",
"CLOUDERA_ML_API_KEY": "your-api-key-here"
}
}
}
}
Alternatively, you can use the uv Python package manager to run the server (recommended):
{
"mcpServers": {
"cml": {
"command": "python3",
"args": ["/full/path/to/cml_mcp_server.py"],
"env": {
"CLOUDERA_ML_HOST": "https://your-cml-instance.cloudera.com",
"CLOUDERA_ML_API_KEY": "your-api-key-here"
}
}
}
}
The uv method provides better dependency isolation and faster startup times compared to standard Python execution.
Available Tools
The server provides the following MCP tools for interacting with CML:
Project Management
list_projects: List all CML projects the user has access tocreate_project: Create a new CML projectget_project: Get details of a specific CML project
File Operations
list_files: List files in a CML project at the specified pathread_file: Read the contents of a file from a CML projectupload_file: Upload a file to a CML projectrename_file: Rename a file in a CML projectpatch_file: Update file metadata (rename, move, or change attributes)
Job Management
list_jobs: List all jobs in a CML projectcreate_job: Create a new job in a CML projectcreate_job_from_file: Create a job from an existing file in a CML projectrun_job: Run a job in a CML projectlist_job_runs: List all runs for a job in a CML projectstop_job_run: Stop a running job in a CML projectschedule_job: Schedule a job to run periodically using a cron expression
Runtime Management
list_runtime_addons: List all available runtime addons (e.g., Spark3, GPU)download_ssl_cert: Download the SSL certificate from the CML server
Related Servers
Vast.ai
Interact with Vast.ai's cloud GPU services for on-demand computing power.
kubectl MCP Plugin
An MCP server for kubectl, enabling AI assistants to interact with Kubernetes clusters through a standardized protocol.
Alibaba Cloud Ops MCP Server
Integrate with Alibaba Cloud APIs to manage resources like ECS, Cloud Monitor, and OOS.
AWS News
Fetches the latest announcements, blog posts, and news for specific AWS services.
Graphlit
Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a searchable Graphlit project.
kubeview-mcp
Read-only MCP server for AI-powered Kubernetes debugging with support of code execution
Google Cloud Run
Official MCP Server to deploy to Google Cloud Run.
Lemon Squeezy Server
Integrates with Lemon Squeezy to manage subscriptions, checkouts, and products.
Pulumi
Manage cloud infrastructure using Pulumi's Infrastructure as Code (IaC) platform. Requires the Pulumi CLI to be installed.
MCP-OpenStack-Ops
A comprehensive MCP (Model Context Protocol) server providing OpenStack cluster management and monitoring capabilities with built-in safety controls.