README
🚀 Kaggle MCP(模型上下文协议)服务器
本项目基于fastmcp库构建了MCP(模型上下文协议)服务器(server.py)。它能与Kaggle API交互,实现数据集的搜索与下载功能,还能生成用于EDA笔记本的提示,为数据处理和分析提供便利。
🚀 快速开始
此Kaggle MCP服务器能帮助你便捷地与Kaggle API交互,完成数据集的搜索、下载以及EDA笔记本提示的生成。以下为你详细介绍操作步骤。
📦 安装指南
1. 克隆仓库
git clone <repository-url>
cd <repository-directory>
2. 创建虚拟环境(推荐)
python -m venv venv
source venv/bin/activate # 在Windows上使用`venv\Scripts\activate`
# 或使用uv:uv venv
3. 安装依赖项
pip install -r requirements.txt
4. 设置Kaggle API凭证
创建或复制.env文件并添加以下内容:
KAGGLE_USERNAME=your_kaggle_username
KAGGLE_KEY=your_kaggle_key
🚀 运行服务器
1. 启动服务器
在终端中运行:
python server.py
2. 与服务器交互
服务器启动后,你可以通过配置MCP客户端或AI代理进行交互。
✨ 主要特性
工具
search_kaggle_datasets(query: str):用于搜索Kaggle数据集,会返回与查询相关的结果列表。download_kaggle_dataset(dataset_ref: str, download_path: Optional[str] = None):可下载指定的Kaggle数据集。dataset_ref:格式为username/dataset-slug(例如,kaggle/titanic)。download_path(可选):指定下载位置。若未提供,默认为./datasets/<dataset_slug>/。
提示
generate_eda_notebook(dataset_ref: str):生成适合AI模型(如Gemini)的提示消息,用于创建指定Kaggle数据集的基本探索性数据分析(EDA)笔记本。提示要求生成涵盖数据加载、缺失值检查、可视化和基本统计的Python代码。
🔗 连接到Claude Desktop
1. 打开配置文件
打开Claude > 设置 > 开发者 > 编辑配置 > claude_desktop_config.json。
2. 添加配置内容
添加以下内容:
{
"mcpServers": {
"kaggle-mcp": {
"command": "kaggle-mcp",
"cwd": "<path-to-your-cloned-repo>/kaggle-mcp"
}
}
}
3. 重启Claude Desktop
保存文件并重启Claude Desktop。
💻 使用示例
基础用法
AI代理或MCP客户端可以与服务器交互如下:
- 代理:"搜索Kaggle关于'心脏病'的数据集"
- 服务器执行
search_kaggle_datasets(query='heart disease')
- 服务器执行
- 代理:"下载数据集'user/heart-disease-dataset'"
- 服务器执行
download_kaggle_dataset(dataset_ref='user/heart-disease-dataset')
- 服务器执行
- 代理:"为'user/heart-disease-dataset'生成EDA笔记本提示"
- 服务器执行
generate_eda_notebook(dataset_ref='user/heart-disease-dataset') - 服务器返回结构化的提示消息。
- 服务器执行
- 代理:(将提示发送到代码生成模型)-> 收到EDA Python代码。
通过以上步骤,你可以轻松使用此Kaggle MCP服务器进行数据集搜索、下载和EDA笔记本生成。
📚 详细文档
项目结构
server.py:FastMCP服务器应用程序,定义了资源、工具和提示,用于与Kaggle交互。.env.example:环境变量示例文件(Kaggle API凭证),需重命名为.env并填写你的详细信息。requirements.txt:列出所需的Python包。pyproject.toml和uv.lock:项目元数据和锁定依赖项的uv包管理器。datasets/:下载Kaggle数据集的默认目录。
Scan to contact