# Kaggle

Kaggle is a platform for data science and machine learning competitions, offering datasets, notebooks, and a collaborative community.

- **Category:** artificial intelligence
- **Auth:** API_KEY
- **Tools:** 20
- **Triggers:** 0
- **Slug:** `KAGGLE`
- **Version:** 20260211_00

## Tools

### Download competition data files

**Slug:** `KAGGLE_COMPETITION_DOWNLOAD_FILES`

Downloads all data files for a Kaggle competition as a single zip archive. Returns the local file path where the zip was saved. Note: You must have accepted the competition's rules on Kaggle's website before downloading (403 error if not accepted).

### Submit Competition Entry

**Slug:** `KAGGLE_COMPETITION_SUBMIT`

Submit an entry to a Kaggle competition using a previously uploaded file. Prerequisites: 1. You must have accepted the competition rules on Kaggle's website 2. You must have uploaded your submission file and obtained a blob_file_tokens (use Kaggle's file upload API endpoint first) This action performs the final submission step after file upload. The blob token identifies your uploaded file and associates it with your competition submission.

### Get Kaggle Config Directory

**Slug:** `KAGGLE_CONFIG_DIR`

Tool to retrieve the directory of the Kaggle API configuration file. Use when you need to locate the directory containing your kaggle.json credentials.

### Get Kaggle Config File

**Slug:** `KAGGLE_CONFIG_FILE`

Tool to retrieve the filename of the Kaggle API configuration file. Use when you need to find out where the local Kaggle config file is stored before reading or updating.

### Initialize Kaggle Configuration

**Slug:** `KAGGLE_CONFIG_INIT`

Initialize Kaggle API client configuration. This action sets up the necessary configuration file for Kaggle API access by first attempting to use the Kaggle CLI's 'kaggle config init' command. If the CLI is unavailable, it falls back to creating a kaggle.json file at ~/.kaggle/kaggle.json (or $KAGGLE_CONFIG_DIR/kaggle.json if that environment variable is set). The action is idempotent - if configuration already exists, it will not overwrite it. No parameters are required; the action uses environment variables and metadata when available.

### List Kaggle Configuration Keys

**Slug:** `KAGGLE_CONFIG_KEYS`

Tool to list local Kaggle API configuration keys. Use when you need to see which configuration options are set without revealing values.

### Get Kaggle Config Path

**Slug:** `KAGGLE_CONFIG_PATH`

Tool to retrieve local Kaggle API configuration file path. Use when you need to know the location of the Kaggle config before operations.

### Reset Kaggle Configuration

**Slug:** `KAGGLE_CONFIG_RESET`

Tool to reset local Kaggle CLI configuration to defaults. Clears CLI-managed keys ('competition', 'path', 'proxy').

### Set Kaggle Configuration

**Slug:** `KAGGLE_CONFIG_SET`

Tool to set a Kaggle CLI configuration parameter. Use when updating local CLI settings such as default download path or proxy. Ensure Kaggle CLI is installed.

### Unset Kaggle Configuration

**Slug:** `KAGGLE_CONFIG_UNSET`

Tool to unset a Kaggle CLI configuration parameter. Use when removing local CLI settings such as default download path or proxy. Ensure Kaggle CLI is installed.

### View Kaggle Configuration

**Slug:** `KAGGLE_CONFIG_VIEW`

View local Kaggle API credentials and configuration settings. This action reads Kaggle configuration from local sources (does NOT make API calls to Kaggle). Configuration is retrieved in the following precedence order: 1. kaggle.json file (from KAGGLE_CONFIG_DIR env var, ~/.config/kaggle/, or ~/.kaggle/) 2. 'kaggle config view' CLI output (for proxy/path settings) 3. Environment variables (KAGGLE_USERNAME, KAGGLE_KEY) 4. Authorization header from metadata Use this action to: - Verify Kaggle credentials are configured before making API calls - Check current proxy settings - Debug authentication issues Returns empty strings for username/key if no credentials are found. WARNING: This action returns sensitive API key data in plain text.

### Dataset Create

**Slug:** `KAGGLE_DATASET_CREATE`

Create a new Kaggle dataset with metadata. IMPORTANT: Dataset creation requires at least one data file. Ensure files are uploaded before calling this action. The 'id' field must use your authenticated Kaggle username as the owner. Returns the creation status and any message from the Kaggle API.

### Kaggle Dataset Init

**Slug:** `KAGGLE_DATASET_INIT`

Tool to initialize a dataset-metadata.json file in a local folder. Use when preparing a dataset folder before uploading to Kaggle.

### List Kaggle Dataset Files

**Slug:** `KAGGLE_DATASET_LIST_FILES`

Tool to list files in a Kaggle dataset. Use when you need to retrieve paginated file listings by owner and dataset slugs, with optional version and paging controls.

### Get Dataset Status

**Slug:** `KAGGLE_DATASET_STATUS`

Check the processing status of a Kaggle dataset after creation or version update. This endpoint is used to monitor datasets that are currently being processed by Kaggle's servers. It returns status information for datasets that are actively uploading, processing, or experiencing errors. For already-published datasets, this endpoint typically returns 404 (Not Found), which is expected behavior. Use this tool immediately after creating a new dataset (KAGGLE_DATASET_CREATE) or updating an existing dataset version (KAGGLE_DATASET_VERSION) to check when the dataset becomes ready. Poll this endpoint periodically until the status indicates completion or error.

### Create Dataset Version

**Slug:** `KAGGLE_DATASET_VERSION`

Create a new version of an existing Kaggle dataset. Prerequisites: - You must own the dataset or have edit permissions - Files must be uploaded first to obtain upload tokens (required for the 'files' parameter) Use this when you have updated files or metadata and need to publish a new version of an existing dataset.

### Kaggle Kernel Init

**Slug:** `KAGGLE_KERNEL_INIT`

Initialize a kernel-metadata.json template file in a specified folder. This file is required before pushing/uploading a kernel to Kaggle. The template includes default values for kernel configuration (language, kernel_type, GPU settings, etc.) that can be customized before pushing. Use this when setting up a new Kaggle kernel locally.

### Download kernel output

**Slug:** `KAGGLE_KERNEL_OUTPUT`

Tool to download the output of a Kaggle kernel. Use when needing the latest kernel results locally.

### Get Kernel Status

**Slug:** `KAGGLE_KERNELS_STATUS`

Get the execution status of a Kaggle kernel (notebook). Returns current status (running, complete, error), timestamps, and output URL. Use this to monitor kernel execution after pushing/submitting a kernel. Note: You need permission to access the kernel - typically only your own kernels or public kernels you have access to.

### List Kaggle Datasets

**Slug:** `KAGGLE_LIST_DATASETS`

Tool to list Kaggle datasets with filters and pagination. Use after authenticating with Kaggle API key.
