list_projectsLABSCO SUMMARY
The CML loop — edit, run, check — without the web UI.
It covers the whole cycle a data scientist repeats all day: change a file in the project, turn it into a job, run it, read the run. Because file patching is a tool of its own, an assistant can fix and re-run without a full upload each time.
What it is
A standalone MCP server for Cloudera Machine Learning, covering projects, project files, jobs and runs against a CML instance you name.
What you get
- Projects listed, created and inspected without opening the CML web interface
- Project files read, uploaded, renamed and patched in place — targeted edits rather than re-uploading a whole file
- Jobs created from scratch or straight from a file in the project, then listed and inspected
- Job execution controlled end to end: run now, schedule, list previous runs, stop a run that is going wrong
- The available runtime addons listed, so a job is configured against what the instance actually offers
- SSL certificate download for instances using a self-signed certificate
Requirements
Python 3.8+ with the MCP CLI package and requests. The instance is addressed by its host URL and an API token, given as environment variables — the server accepts more than one naming scheme — or as the same values on the launch command. Self-signed instances need the certificate downloaded and the server pointed at that file.
Setup effort
Build from source — git clone https://github.com/yw449/cloudera-cml-mcp-server.git
USE CASES
Standing up a new project and its first job
Create the project, upload the script, and turn that file directly into a job — three steps that normally mean three screens.
Fixing a script that just failed
Read the file, patch the lines that broke, and start the job again without leaving the conversation.
Finding out what happened overnight
List the runs of a job and inspect the ones that matter, instead of scrolling the runs page.
Putting a job on a schedule
Schedule an existing job so a recurring task stops depending on somebody remembering to press run.
Stopping a run that is burning resources
Cancel the run in progress as soon as the output shows it is going nowhere.
Tidying a project's files
List what is there, rename what is misnamed, and read anything you are unsure about before changing it.
17 tools
Listed in project docs. Your client may show a different list.
create_projectget_projectlist_filesread_fileupload_filerename_filepatch_filelist_jobscreate_jobcreate_job_from_filerun_joblist_job_runsstop_job_runschedule_joblist_runtime_addonsdownload_ssl_certBEFORE YOU INSTALL
What to know first
Tools you get
17 tools named in the project's documentation.
Requires
- Python 3.8+
- CLOUDERA_ML_API_KEY in your environment
- CLOUDERA_ML_HOST in your environment
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/yw449/cloudera-cml-mcp-server.git
pip install "mcp[cli]" requestsMCP Clients
Claude Desktop
{
"mcpServers": {
"cml": {
"command": "uv",
"args": [
"run",
"<YOUR_PATH_TO_CLOUDERA_CML_MCP_SERVER>/cml_mcp_server/cml_mcp_server.py"
],
"env": {
"CLOUDERA_ML_HOST": "https://<YOUR_CML_INSTANCE>.cloudera.com",
"CLOUDERA_ML_API_KEY": "<YOUR_CLOUDERA_ML_API_KEY>"
}
}
}
}