mcp-kaggle-tool
mcp-kaggle-tool
MCP server for Kaggle API integration - create, run, and manage Kaggle notebooks programmatically.
🚀 Features
✅ Authentication check for Kaggle API
📝 Create and manage Kaggle notebooks
🏃 Run notebooks with GPU support
📊 Search datasets and competitions
💾 Download notebook outputs
🔍 Monitor execution status
📋 Prerequisites
Kaggle Account: You need a Kaggle account
Kaggle API Token:
Click "Create New API Token"
Save the downloaded
kaggle.jsonto~/.kaggle/
Kaggle CLI: Install the Kaggle CLI:
pip install kaggle
🛠️ Installation
From npm (when published)
npm install -g mcp-kaggle-toolFrom source
git clone https://github.com/yourusername/mcp-kaggle-tool.git
cd mcp-kaggle-tool
npm install
npm run build🔧 Configuration
For Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"kaggle": {
"command": "npx",
"args": ["mcp-kaggle-tool"]
}
}
}Or if running from source:
{
"mcpServers": {
"kaggle": {
"command": "node",
"args": ["/path/to/mcp-kaggle-tool/dist/index.js"]
}
}
}📚 Available Tools
Authentication
kaggle_auth_check- Verify Kaggle API credentials are configured
Notebooks
kaggle_list_notebooks- List your Kaggle notebookskaggle_create_notebook- Create a new notebook with codekaggle_run_notebook- Execute a notebookkaggle_get_notebook_status- Check execution statuskaggle_download_notebook_output- Download notebook outputs
Data & Competitions
kaggle_search_datasets- Search for datasetskaggle_list_competitions- List active competitions
💡 Usage Examples
Check Authentication
Use kaggle_auth_check to verify your credentials are set upCreate and Run a Notebook
1. Create a notebook with kaggle_create_notebook:
- title: "My ARC Experiment"
- code: "print('Hello from Kaggle!')"
- enableGpu: true
2. Monitor with kaggle_get_notebook_status
3. Download results with kaggle_download_notebook_outputSearch ARC Dataset
Use kaggle_search_datasets with search: "abstraction reasoning corpus"🚧 Development
# Install dependencies
npm install
# Build TypeScript
npm run build
# Run in development
npm run dev
# Run tests
npm test
# Lint code
npm run lint📝 License
MIT License - see LICENSE file for details.
🤝 Contributing
Contributions welcome! Please open an issue or submit a PR.
🐛 Known Issues
Kaggle API sometimes returns HTML instead of JSON for certain commands
Notebook execution status may take time to update
GPU availability depends on Kaggle quota