OpenML MCP Server
About
An MCP (Model Context Protocol) server that allows clients (like Claude Desktop) to interact with the public OpenML API. It exposes various OpenML API endpoints as MCP tools, enabling queries for datasets, tasks, flows, runs, and more directly from within an MCP-compatible…
Details
- Author
- mallochio
- Downloads
- 183
- Categories
- Other
Jump to
- Provides MCP tools corresponding to major OpenML GET endpoints.
- Query datasets, tasks, flows, runs, evaluations, setups, studies.
- List entities with filtering capabilities where supported by the API.
- Built using the mcp Python SDK (FastMCP).
- Can be run with uv without explicit installation for end users.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
OpenML MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install the uv Python package installer, then edit your Claude Desktop configuration (claude_desktop_config.json) to add the server with the command uv run openml-mcp-server and set the OPENML_API_KEY environment variable. After saving and restarting Claude Desktop, the tools become available under the hammer icon. For developers, clone the repository and run uv sync to install dependencies.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"openml mcp server": {
"openml-mcp-server": {
"command": "uv",
"args": [
"sync"
]
}
}
}
}
McpServers
{
"openml-mcp-server": {
"command": "uv",
"args": [
"sync"
]
}
}
OpenML MCP Server
An MCP (Model Context Protocol) server that allows clients (like Claude Desktop) to interact with the public OpenML API.
This server exposes various OpenML API endpoints as MCP tools, enabling queries for datasets, tasks, flows, runs, and more directly from within an MCP-compatible client.
Table of Contents
- Features
- Installation and Usage
- For End Users
- For Developers
- Configuration
- Examples
- Development
- Running Tests
- Contributing
- License
Features
Provides MCP tools corresponding to major OpenML GET endpoints.
Query datasets, tasks, flows, runs, evaluations, setups, studies.
List entities with filtering capabilities (where supported by the API).
Built using the mcp Python SDK (FastMCP).
Installation and Usage
For End Users
These instructions explain how to use this server with an MCP client like Claude Desktop.
Prerequisites:
1. Claude Desktop: Ensure you have the latest version installed (Download here).
2. uv (Python Package Installer): This server is run using uv. Install it once if you don't have it:
- macOS / Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
(Restart your terminal after installation)
- Windows (PowerShell):
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
(Restart your PowerShell terminal after installation)
For Developers
1. Clone the Repository:
git clone https://github.com/your-repo/openml-mcp-server.git
cd openml-mcp-server
2. Install Dependencies:
uv sync
Configuration
1. Edit Claude Desktop Config:
- Open Claude Desktop -> Menu -> Settings... -> Developer -> Edit Config.
- This opens claude_desktop_config.json.
2. Add Server Configuration:
- Add the following block inside the mcpServers object (create mcpServers if it doesn't exist):
{
"mcpServers": {
"openml-explorer": {
"command": "uv",
"args": [
"run",
"openml-mcp-server"
],
"env": {
"OPENML_API_KEY": "YOUR_ACTUAL_OPENML_API_KEY"
}
}
}
}
3. Save and Restart:
- Save claude_desktop_config.json.
- Completely quit and restart Claude Desktop.
4. Verify:
- Look for the hammer icon in the Claude chat input.
- Click it to see the available "OpenML Explorer" tools (e.g., get_dataset_description, list_tasks).
Examples
- "Show the description for OpenML dataset ID 61."
- "List features for dataset 31."
- "Find the first 3 classification tasks on OpenML."
- "Get the run description for run ID 100."
Development
See the Testing Instructions below.
Running Tests
To run the test suite (requires pytest and pytest-asyncio):
uv run pytest
Contributing
We welcome contributions! Please see our Contributing Guidelines for more details.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



