关于 Kaggle-mcp
Kaggle-mcp 是供 Claude Desktop 等兼容客户端通过 Kaggle API 操作 Kaggle 的 MCP 服务,涵盖竞赛、数据集、内核和模型,并支持管理、下载文件及版本。
主要功能
- 01搜索和管理竞赛
- 02下载文件并提交预测
- 03搜索和管理数据集
- 04推送、拉取和查看内核
- 05管理模型及其版本
适用场景
- 01查找竞赛并查看排行榜
- 02下载数据集用于分析
- 03提交竞赛预测结果
- 04发布或获取 Kaggle 内核和模型
MCP 相关
该 MCP 服务将竞赛、数据集、内核和模型的 Kaggle API 操作作为工具提供给 MCP 客户端。使用时需要 Kaggle API 凭据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Kaggle MCP Server
一个 Model Context Protocol(MCP)服务,可与 Kaggle API 无缝集成。通过 Claude Desktop 等兼容 MCP 的客户端,与 Kaggle 竞赛、数据集、内核和模型进行交互。
功能
- 竞赛:列出、下载文件、提交内容、查看排行榜和提交记录
- 数据集:搜索、下载、创建和管理数据集,并支持版本控制
- 内核:列出、推送、拉取和管理 Kaggle 笔记本及脚本
- 模型:创建、更新和管理机器学习模型及实例,并提供完整的版本控制
安装
前置条件
- Python 3.10 或更高版本
- 拥有 API 凭据的 Kaggle 账号
从 PyPI 安装
推荐使用 uvx 运行服务,它会自动为你处理安装:
uvx mcp-server-kaggle
或者显式安装:
pip install mcp-server-kaggle
# or
uv tool install mcp-server-kaggle
从源代码安装
用于开发或本地修改:
git clone https://github.com/Seif-Sameh/Kaggle-mcp.git
cd Kaggle-mcp
uv sync
设置
1. 获取 Kaggle API 凭据
- 前往 https://www.kaggle.com/account
- 滚动到“API”部分
- 点击“Create New Token”
- 这会下载包含你凭据的
kaggle.json
2. 配置凭据
选项 A:环境变量(推荐)
export KAGGLE_USERNAME=your_username
export KAGGLE_API_KEY=your_api_key
或者添加到你的 ~/.zshrc 或 ~/.bashrc:
echo 'export KAGGLE_USERNAME=your_username' >> ~/.zshrc
echo 'export KAGGLE_API_KEY=your_api_key' >> ~/.zshrc
source ~/.zshrc
选项 B:使用 .env 文件
在你的项目目录中创建一个 .env 文件:
KAGGLE_USERNAME=your_username
KAGGLE_API_KEY=your_api_key
使用
搭配 Claude Desktop 使用
推荐通过 Claude Desktop 使用 Kaggle MCP。
-
找到 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
添加 Kaggle MCP 服务配置:
{
"mcpServers": {
"kaggle": {
"command": "uvx",
"args": ["mcp-server-kaggle"],
"env": {
"KAGGLE_USERNAME": "YOUR_KAGGLE_USERNAME",
"KAGGLE_API_KEY": "YOUR_KAGGLE_API_KEY"
}
}
}
}
从本地源代码克隆运行(替代方案)
{
"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"
}
}
}
}
-
重启 Claude Desktop
-
开始通过 Claude 使用 Kaggle!
试着向 Claude 提问:
- “列出最新的 Kaggle 竞赛”
- “下载 Titanic 数据集”
- “显示我最近的竞赛提交记录”
- “搜索 NLP 数据集”
独立使用
直接运行 MCP 服务:
mcp-server-kaggle
或者作为 Python 模块运行:
python -m kaggle_mcp
可用工具
竞赛(8 个工具)
| 工具 | 描述 |
|---|---|
competitions_list | 列出并搜索可用竞赛 |
competition_list_files | 列出竞赛中的所有文件 |
competition_download_file | 下载指定的竞赛文件 |
competition_download_files | 下载竞赛中的所有文件 |
competition_submit | 向竞赛提交预测结果 |
competition_submissions | 查看你的提交历史 |
competition_leaderboard_view | 查看竞赛排行榜 |
competition_leaderboard_download | 下载排行榜数据 |
数据集(10 个工具)
| 工具 | 描述 |
|---|---|
datasets_list | 搜索和筛选数据集 |
dataset_metadata | 获取数据集元数据 |
dataset_list_files | 列出数据集中的文件 |
dataset_status | 检查数据集处理状态 |
dataset_download_file | 下载指定的数据集文件 |
dataset_download_files | 下载数据集中的所有文件 |
dataset_create | 创建新数据集 |
dataset_initialize | 初始化数据集元数据 |
dataset_create_version | 创建新版本的数据集 |
内核(7 个工具)
| 工具 | 描述 |
|---|---|
kernels_list | 搜索和筛选内核 |
kernel_list_files | 列出内核中的文件 |
kernel_initialize | 初始化内核元数据 |
kernel_push | 将内核推送到 Kaggle |
kernel_pull | 下载内核 |
kernel_output | 下载内核输出文件 |
kernel_status | 检查内核执行状态 |
模型(14 个工具)
| 工具 | 描述 |
|---|---|
models_list | 搜索和筛选模型 |
model_get | 获取模型详情和元数据 |
model_initialize | 初始化模型元数据 |
model_create | 创建新模型 |
model_update | 更新模型信息 |
model_delete | 删除模型 |
model_instance_get | 获取模型实例详情 |
model_instance_initialize | 初始化模型实例元数据 |
model_instance_create | 创建新模型实例 |
model_instance_update | 更新模型实例 |
model_instance_delete | 删除模型实例 |
model_instance_version_create | 创建新模型版本 |
model_instance_version_download | 下载模型版本 |
model_instance_version_delete | 删除模型版本 |
示例
示例 1:使用竞赛
向 Claude 提问:
"List active Kaggle competitions about computer vision"
Claude 将使用 competitions_list 工具搜索并显示相关竞赛。
示例 2:下载数据集
向 Claude 提问:
"Download the Titanic dataset to my Downloads folder"
Claude 将使用 dataset_download_files 获取所有数据集文件。
示例 3:提交竞赛结果
向 Claude 提问:
"Submit my predictions.csv to the Titanic competition with the message 'Initial baseline model'"
Claude 将使用 competition_submit 上传你的提交内容。
许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。