Safety-first Kaggle MCP — confirm-gated destructive ops, submission budget, injection-fenced.
Connect Runs on your machine
claude mcp add kaggle-mcp -e KAGGLE_USERNAME=<KAGGLE_USERNAME> -e KAGGLE_KEY=<KAGGLE_KEY> -e KAGGLE_API_TOKEN=<KAGGLE_API_TOKEN> -e KAGGLE_MCP_ENABLE_DESTRUCTIVE=<KAGGLE_MCP_ENABLE_DESTRUCTIVE> -e KAGGLE_MCP_ENABLE_PUBLISH=<KAGGLE_MCP_ENABLE_PUBLISH> -e KAGGLE_MCP_SUBMISSION_CAP=<KAGGLE_MCP_SUBMISSION_CAP> -- uvx safe-kaggle-mcp==0.4.1
{
"mcpServers": {
"kaggle-mcp": {
"command": "uvx",
"args": [
"safe-kaggle-mcp==0.4.1"
],
"env": {
"KAGGLE_USERNAME": "<KAGGLE_USERNAME>",
"KAGGLE_KEY": "<KAGGLE_KEY>",
"KAGGLE_API_TOKEN": "<KAGGLE_API_TOKEN>",
"KAGGLE_MCP_ENABLE_DESTRUCTIVE": "<KAGGLE_MCP_ENABLE_DESTRUCTIVE>",
"KAGGLE_MCP_ENABLE_PUBLISH": "<KAGGLE_MCP_ENABLE_PUBLISH>",
"KAGGLE_MCP_SUBMISSION_CAP": "<KAGGLE_MCP_SUBMISSION_CAP>"
}
}
}
}
{
"mcpServers": {
"kaggle-mcp": {
"command": "uvx",
"args": [
"safe-kaggle-mcp==0.4.1"
],
"env": {
"KAGGLE_USERNAME": "<KAGGLE_USERNAME>",
"KAGGLE_KEY": "<KAGGLE_KEY>",
"KAGGLE_API_TOKEN": "<KAGGLE_API_TOKEN>",
"KAGGLE_MCP_ENABLE_DESTRUCTIVE": "<KAGGLE_MCP_ENABLE_DESTRUCTIVE>",
"KAGGLE_MCP_ENABLE_PUBLISH": "<KAGGLE_MCP_ENABLE_PUBLISH>",
"KAGGLE_MCP_SUBMISSION_CAP": "<KAGGLE_MCP_SUBMISSION_CAP>"
}
}
}
}
{
"servers": {
"kaggle-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"safe-kaggle-mcp==0.4.1"
],
"env": {
"KAGGLE_USERNAME": "<KAGGLE_USERNAME>",
"KAGGLE_KEY": "<KAGGLE_KEY>",
"KAGGLE_API_TOKEN": "<KAGGLE_API_TOKEN>",
"KAGGLE_MCP_ENABLE_DESTRUCTIVE": "<KAGGLE_MCP_ENABLE_DESTRUCTIVE>",
"KAGGLE_MCP_ENABLE_PUBLISH": "<KAGGLE_MCP_ENABLE_PUBLISH>",
"KAGGLE_MCP_SUBMISSION_CAP": "<KAGGLE_MCP_SUBMISSION_CAP>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
KAGGLE_USERNAMEOptional | Kaggle account username (legacy scheme; pair with KAGGLE_KEY). Optional — read-only tools work without credentials. |
KAGGLE_KEYOptional, secret | Kaggle API key, the 40-char 'key' from kaggle.json (legacy scheme; pair with KAGGLE_USERNAME). |
KAGGLE_API_TOKENOptional, secret | Modern Kaggle KGAT_... token (alternative to KAGGLE_USERNAME/KAGGLE_KEY). Optional. |
KAGGLE_MCP_ENABLE_DESTRUCTIVEOptional | Set to 1 to expose delete tools. Default 0 (off). |
KAGGLE_MCP_ENABLE_PUBLISHOptional | Set to 1 to allow making datasets/kernels public. Default 0 (off). |
KAGGLE_MCP_SUBMISSION_CAPOptional | Daily per-competition submission budget. Default 5. |
Details
| Package | [email protected] (PYPI, stdio) |
| First published | 16 Jun 2026 |
| Last updated | 16 Jun 2026 |
| Registry name | io.github.parkseokjune/kaggle-mcp |
More other servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
