Cloudera Machine Learning (CML) MCP Server

Cloudera Machine Learning (CML) MCP Server

Enables interaction with Cloudera Machine Learning to manage projects, files, and jobs through the Model Context Protocol. It supports tasks such as uploading files, scheduling jobs, and managing runtimes via natural language interfaces.

Category
Visit Server

README

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

  1. Install the required packages:
pip install mcp[cli] requests

Or with uv:

uv pip install mcp[cli] requests
  1. 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"
  1. 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:

  1. Create a claude_desktop_config.json file in your Claude for Desktop configuration directory
  2. 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 to
  • create_project: Create a new CML project
  • get_project: Get details of a specific CML project

File Operations

  • list_files: List files in a CML project at the specified path
  • read_file: Read the contents of a file from a CML project
  • upload_file: Upload a file to a CML project
  • rename_file: Rename a file in a CML project
  • patch_file: Update file metadata (rename, move, or change attributes)

Job Management

  • list_jobs: List all jobs in a CML project
  • create_job: Create a new job in a CML project
  • create_job_from_file: Create a job from an existing file in a CML project
  • run_job: Run a job in a CML project
  • list_job_runs: List all runs for a job in a CML project
  • stop_job_run: Stop a running job in a CML project
  • schedule_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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured