# Kaggle Mcp

> MCP server for the Kaggle API: competitions, datasets, kernels, and models.

- **Type:** MCP server
- **Install:** `agentstack add mcp-seif-sameh-kaggle-mcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [Seif-Sameh](https://agentstack.voostack.com/s/seif-sameh)
- **Installs:** 0
- **Category:** [AI & ML](https://agentstack.voostack.com/c/ai-and-ml)
- **Latest version:** 0.1.1
- **License:** MIT
- **Upstream author:** [Seif-Sameh](https://github.com/Seif-Sameh)
- **Source:** https://github.com/Seif-Sameh/Kaggle-mcp
- **Website:** https://pypi.org/project/mcp-server-kaggle/

## Install

```sh
agentstack add mcp-seif-sameh-kaggle-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Kaggle MCP Server

[](https://pypi.org/project/mcp-server-kaggle/)
[](https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.Seif-Sameh/Kaggle-mcp)
[](LICENSE)

A Model Context Protocol (MCP) server that provides seamless integration with the Kaggle API. Interact with Kaggle competitions, datasets, kernels, and models through MCP-compatible clients like Claude Desktop.

## Features

- **Competitions**: List, download files, submit, view leaderboards and submissions
- **Datasets**: Search, download, create, and manage datasets with version control
- **Kernels**: List, push, pull, and manage Kaggle notebooks and scripts
- **Models**: Create, update, and manage ML models and instances with full version control

## Installation

### Prerequisites

- Python 3.10 or higher
- A Kaggle account with API credentials

### Install from PyPI

The recommended way is to run the server with [`uvx`](https://docs.astral.sh/uv/), which handles the install for you:

```bash
uvx mcp-server-kaggle
```

Or install it explicitly:

```bash
pip install mcp-server-kaggle
# or
uv tool install mcp-server-kaggle
```

### Install from Source

For development or local modifications:

```bash
git clone https://github.com/Seif-Sameh/Kaggle-mcp.git
cd Kaggle-mcp
uv sync
```

## Setup

### 1. Get Your Kaggle API Credentials

1. Go to [https://www.kaggle.com/account](https://www.kaggle.com/account)
2. Scroll to the "API" section
3. Click "Create New Token"
4. This downloads `kaggle.json` with your credentials

### 2. Configure Credentials

**Option A: Environment Variables (Recommended)**

```bash
export KAGGLE_USERNAME=your_username
export KAGGLE_API_KEY=your_api_key
```

Or add to your `~/.zshrc` or `~/.bashrc`:

```bash
echo 'export KAGGLE_USERNAME=your_username' >> ~/.zshrc
echo 'export KAGGLE_API_KEY=your_api_key' >> ~/.zshrc
source ~/.zshrc
```

**Option B: Using .env File**

Create a `.env` file in your project directory:

```env
KAGGLE_USERNAME=your_username
KAGGLE_API_KEY=your_api_key
```

## Usage

### With Claude Desktop

The recommended way to use Kaggle MCP is with Claude Desktop.

1. **Locate your Claude Desktop config file:**
   - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
   - Windows: `%APPDATA%\Claude\claude_desktop_config.json`
   - Linux: `~/.config/Claude/claude_desktop_config.json`

2. **Add the Kaggle MCP server configuration:**

```json
{
  "mcpServers": {
    "kaggle": {
      "command": "uvx",
      "args": ["mcp-server-kaggle"],
      "env": {
        "KAGGLE_USERNAME": "YOUR_KAGGLE_USERNAME",
        "KAGGLE_API_KEY": "YOUR_KAGGLE_API_KEY"
      }
    }
  }
}
```

Running from a local source clone (alternative)

```json
{
  "mcpServers": {
    "kaggle": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/Kaggle-mcp",
        "run",
        "mcp-server-kaggle"
      ],
      "env": {
        "KAGGLE_USERNAME": "YOUR_KAGGLE_USERNAME",
        "KAGGLE_API_KEY": "YOUR_KAGGLE_API_KEY"
      }
    }
  }
}
```

3. **Restart Claude Desktop**

4. **Start using Kaggle through Claude!**

Try asking Claude:
- "List the latest Kaggle competitions"
- "Download the Titanic dataset"
- "Show me my recent competition submissions"
- "Search for NLP datasets"

### Standalone Usage

Run the MCP server directly:

```bash
mcp-server-kaggle
```

Or as a Python module:

```bash
python -m kaggle_mcp
```

## Available Tools

### Competitions (8 tools)

| Tool | Description |
|------|-------------|
| `competitions_list` | List and search available competitions |
| `competition_list_files` | List all files in a competition |
| `competition_download_file` | Download a specific competition file |
| `competition_download_files` | Download all competition files |
| `competition_submit` | Submit predictions to a competition |
| `competition_submissions` | View your submission history |
| `competition_leaderboard_view` | View the competition leaderboard |
| `competition_leaderboard_download` | Download leaderboard data |

### Datasets (10 tools)

| Tool | Description |
|------|-------------|
| `datasets_list` | Search and filter datasets |
| `dataset_metadata` | Get dataset metadata |
| `dataset_list_files` | List files in a dataset |
| `dataset_status` | Check dataset processing status |
| `dataset_download_file` | Download a specific dataset file |
| `dataset_download_files` | Download all dataset files |
| `dataset_create` | Create a new dataset |
| `dataset_initialize` | Initialize dataset metadata |
| `dataset_create_version` | Create a new dataset version |

### Kernels (7 tools)

| Tool | Description |
|------|-------------|
| `kernels_list` | Search and filter kernels |
| `kernel_list_files` | List files in a kernel |
| `kernel_initialize` | Initialize kernel metadata |
| `kernel_push` | Push a kernel to Kaggle |
| `kernel_pull` | Download a kernel |
| `kernel_output` | Download kernel output files |
| `kernel_status` | Check kernel execution status |

### Models (14 tools)

| Tool | Description |
|------|-------------|
| `models_list` | Search and filter models |
| `model_get` | Get model details and metadata |
| `model_initialize` | Initialize model metadata |
| `model_create` | Create a new model |
| `model_update` | Update model information |
| `model_delete` | Delete a model |
| `model_instance_get` | Get model instance details |
| `model_instance_initialize` | Initialize model instance metadata |
| `model_instance_create` | Create a new model instance |
| `model_instance_update` | Update a model instance |
| `model_instance_delete` | Delete a model instance |
| `model_instance_version_create` | Create a new model version |
| `model_instance_version_download` | Download a model version |
| `model_instance_version_delete` | Delete a model version |

## Examples

### Example 1: Working with Competitions

Ask Claude:
```
"List active Kaggle competitions about computer vision"
```

Claude will use the `competitions_list` tool to search and display relevant competitions.

### Example 2: Downloading Datasets

Ask Claude:
```
"Download the Titanic dataset to my Downloads folder"
```

Claude will use `dataset_download_files` to fetch all dataset files.

### Example 3: Submitting to Competitions

Ask Claude:
```
"Submit my predictions.csv to the Titanic competition with the message 'Initial baseline model'"
```

Claude will use `competition_submit` to upload your submission.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Seif-Sameh](https://github.com/Seif-Sameh)
- **Source:** [Seif-Sameh/Kaggle-mcp](https://github.com/Seif-Sameh/Kaggle-mcp)
- **License:** MIT
- **Homepage:** https://pypi.org/project/mcp-server-kaggle/

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.1 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.1** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-seif-sameh-kaggle-mcp
- Seller: https://agentstack.voostack.com/s/seif-sameh
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
