Сервер Kaggle MCP (протокол контекста модели)
Этот репозиторий содержит сервер MCP (Model Context Protocol) ( server.py ), созданный с использованием библиотеки fastmcp . Он взаимодействует с API Kaggle для предоставления инструментов для поиска и загрузки наборов данных, а также подсказки для генерации блокнотов EDA.
Структура проекта
server.py: Приложение сервера FastMCP. Оно определяет ресурсы, инструменты и подсказки для взаимодействия с Kaggle..env.example: Пример файла для переменных среды (учетные данные API Kaggle). Переименуйте в.envи заполните свои данные.requirements.txt: список необходимых пакетов Python.pyproject.tomlиuv.lock: метаданные проекта и заблокированные зависимости для менеджера пакетовuv.datasets/: каталог по умолчанию, в котором будут храниться загруженные наборы данных Kaggle.
Настраивать
Клонируйте репозиторий:
git clone <repository-url> cd <repository-directory>Создать виртуальную среду (рекомендуется):
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate` # Or use uv: uv venvУстановка зависимостей: Используя pip:
pip install -r requirements.txtИли с помощью УФ:
uv syncНастройте учетные данные API Kaggle:
Метод 1 (рекомендуемый): переменные среды
Создать файл
.envОткройте файл
.envи добавьте свое имя пользователя Kaggle и ключ API:KAGGLE_USERNAME=your_kaggle_username KAGGLE_KEY=your_kaggle_api_keyВы можете получить свой ключ API на странице вашего аккаунта Kaggle (
Account>API>Create New API Token). Это загрузит файлkaggle.json, содержащий ваше имя пользователя и ключ.
Метод 2: файл
Загрузите файл
kaggle.jsonиз своей учетной записи Kaggle.Поместите файл
kaggle.jsonв ожидаемое место (обычно~/.kaggle/kaggle.jsonв Linux/macOS илиC:\Users\<Your User Name>\.kaggle\kaggle.jsonв Windows). Библиотекаkaggleавтоматически обнаружит этот файл, если переменные среды не установлены.
Запуск сервера
Убедитесь, что ваша виртуальная среда активна.
Запустите MCP-сервер:
uv run kaggle-mcpСервер запустится и зарегистрирует свои ресурсы, инструменты и подсказки. Вы можете взаимодействовать с ним с помощью клиента MCP или совместимых инструментов.
Запуск Docker-контейнера
1. Настройте учетные данные API Kaggle
Для доступа к наборам данных Kaggle этому проекту требуются учетные данные API Kaggle.
Перейдите по ссылке https://www.kaggle.com/settings и нажмите «Создать новый токен API», чтобы загрузить файл
kaggle.json.Откройте файл
kaggle.jsonи скопируйте свое имя пользователя и ключ в новый файл.envв корне проекта:
2. Создайте образ Docker
3. Запустите контейнер Docker, используя файл .env.
Это автоматически загрузит ваши учетные данные Kaggle в качестве переменных среды внутри контейнера.
Возможности сервера
Сервер предоставляет следующие возможности через протокол контекста модели:
Инструменты
search_kaggle_datasets(query: str):Выполняет поиск наборов данных на Kaggle, соответствующих предоставленной строке запроса.
Возвращает список JSON из 10 лучших соответствующих наборов данных с такими подробностями, как ссылка, название, количество загрузок и дата последнего обновления.
download_kaggle_dataset(dataset_ref: str, download_path: str | None = None):Загружает и распаковывает файлы для определенного набора данных Kaggle.
dataset_ref: идентификатор набора данных в форматеusername/dataset-slug(например,kaggle/titanic).download_path(Необязательно): Указывает, куда загрузить набор данных. Если не указано, по умолчанию используется./datasets/<dataset_slug>/относительно расположения скрипта сервера.
Подсказки
generate_eda_notebook(dataset_ref: str):Генерирует подсказку, подходящую для модели ИИ (например, Gemini), для создания базовой записной книжки разведочного анализа данных (EDA) для указанного эталонного набора данных Kaggle.
В приглашении запрашивается код Python, охватывающий загрузку данных, проверку пропущенных значений, визуализацию и базовую статистику.
Подключение к Claude Desktop
Перейдите в Claude > Настройки > Разработчик > Изменить конфигурацию > claude_desktop_config.json, чтобы включить следующее:
Пример использования
Агент ИИ или клиент MCP может взаимодействовать с этим сервером следующим образом:
Агент: «Поиск на Kaggle наборов данных о «болезнях сердца»»
Сервер выполняет
Агент: «Загрузить набор данных 'user/heart-disease-dataset'»
Сервер выполняет
Агент: «Создать запрос блокнота EDA для 'user/heart-disease-dataset'»
Сервер выполняет
Сервер возвращает структурированное сообщение-подсказку.
Агент: (Отправляет запрос в модель генерации кода) -> Получает код EDA Python.
Related MCP Servers
- AsecurityAlicenseAqualityAllows the use of Kagi's API for web searching and content enrichment through methods like fastgpt, enrich/web, and enrich/news.Last updated -2MIT License
- -security-license-qualityConnects Claude AI to the Kaggle API through the Model Context Protocol, enabling competition, dataset, and kernel operations through the AI interface.Last updated -16MIT License
Dumpling AI MCP Serverofficial
AsecurityAlicenseAqualityIntegrates with Dumpling AI to provide data scraping, content processing, knowledge management, and code execution capabilities through tools for web interactions, document handling, and AI services.Last updated -272929MIT License- AsecurityAlicenseAqualityProvides tools to interact with the Dash documentation browser API, allowing users to list installed docsets, search across documentation, and enable full-text search.Last updated -382MIT License