Treasure Data MCP Server
Сервер MCP данных о сокровищах
Сервер протокола контекста модели (MCP), который обеспечивает интеграцию API Treasure Data для Claude Code и Claude Desktop.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ : Это проект личного развития, который никоим образом не связан, не одобрен и не связан с Treasure Data Inc. Это программное обеспечение предоставляется «как есть» без каких-либо гарантий и должно использоваться на ваш страх и риск. Автор не несет ответственности за любые последствия, возникающие в результате использования этого программного обеспечения.
Доступные инструменты MCP
Этот сервер MCP предоставляет следующие инструменты для взаимодействия с Treasure Data:
Управление базой данных
td_list_базы_данных
td_list_databases(verbose=False, limit=30, offset=0, all_results=False)Получите базы данных в своей учетной записи Treasure Data с поддержкой пагинации
Параметры :
verbose: если True, возвращать полные сведения; если False, возвращать только имена (по умолчанию)limit: Максимальное количество баз данных для извлечения (по умолчанию 30)offset: Индекс, с которого начинается извлечение (по умолчанию 0)all_results: Если True, извлекает все базы данных, игнорируя ограничение и смещение.
Примеры :
# Get only database names (default, first 30 databases) td_list_databases # Get full database details td_list_databases verbose=True # Pagination options td_list_databases limit=10 offset=20 # Get all databases regardless of the number td_list_databases all_results=True
td_get_database
td_get_database(database_name)Получить подробную информацию о конкретной базе данных
Параметры :
database_name: Имя базы данных, для которой необходимо получить информацию
Пример :
# Get information about a specific database td_get_database database_name=my_database_name
td_list_tables
td_list_tables(database_name, verbose=False, limit=30, offset=0, all_results=False)Получить таблицы в определенной базе данных Treasure Data с поддержкой пагинации
Параметры :
database_name: Имя базы данных, из которой необходимо извлечь таблицы.verbose: если True, возвращать полные сведения; если False, возвращать только имена (по умолчанию)limit: Максимальное количество таблиц для извлечения (по умолчанию 30)offset: Индекс, с которого начинается извлечение (по умолчанию 0)all_results: Если True, извлекает все таблицы, игнорируя ограничение и смещение.
Примеры :
# Get only table names in a database (default, first 30 tables) td_list_tables database_name=my_database_name # Get detailed information about tables in a database td_list_tables database_name=my_database_name verbose=True # Pagination options td_list_tables database_name=my_database_name limit=10 offset=20 # Get all tables in a database td_list_tables database_name=my_database_name all_results=True
Управление рабочим процессом проекта
td_list_projects
td_list_projects(verbose=False, limit=30, offset=0, all_results=False, include_system=False)Получайте проекты рабочих процессов в своей учетной записи Treasure Data с поддержкой пагинации
Параметры :
verbose: если True, возвращать полные данные; если False, возвращать только имена и идентификаторы (по умолчанию)limit: Максимальное количество проектов для извлечения (по умолчанию 30)offset: Индекс, с которого начинается извлечение (по умолчанию 0)all_results: Если True, извлекает все проекты, игнорируя ограничение и смещение.include_system: если True, включаются системно сгенерированные проекты (с метаданными «sys»); по умолчанию — False
Примеры :
# Get basic project info (default, first 30 projects) td_list_projects # Get detailed project information td_list_projects verbose=True # Pagination options td_list_projects limit=10 offset=20 # Get all projects regardless of the number td_list_projects all_results=True # Include system-generated projects td_list_projects include_system=True
td_get_project
td_get_project(project_id)Получите подробную информацию о конкретном проекте рабочего процесса
Примечание: Это обеспечивает только основные метаданные проекта. Для подробного контента и файлов используйте td_download_project_archive, а затем td_list_project_files и td_read_project_file
Параметры :
project_id: идентификатор проекта рабочего процесса, для которого необходимо получить информацию
Пример :
# Get information about a specific project td_get_project project_id=123456
td_download_архив_проекта
td_download_project_archive(project_id)Загрузить архив проекта (tar.gz) и вернуть информацию о загрузке
Рекомендуется для изучения подробного содержания проекта, включая запросы SQL и определения рабочих процессов.
Параметры :
project_id: идентификатор проекта рабочего процесса для загрузки.
Пример :
# Download a project's archive td_download_project_archive project_id=123456
td_list_project_files
td_list_project_files(archive_path)Список всех файлов, содержащихся в архиве проекта
Параметры :
archive_path: Путь к загруженному архиву проекта (файл .tar.gz)
Пример :
# List files in a downloaded project archive td_list_project_files archive_path=/tmp/td_project_123/project_123456.tar.gz
td_read_project_file
td_read_project_file(archive_path, file_path)Прочитать содержимое определенного файла из архива проекта
Параметры :
archive_path: Путь к загруженному архиву проекта (файл .tar.gz)file_path: Путь к файлу в архиве для чтения.
Пример :
# Read a specific file from a project archive td_read_project_file archive_path=/tmp/td_project_123/project_123456.tar.gz file_path=workflow.dig
Related MCP server: HackathonWatch MCP Server
Инструкции по установке
Аутентификация
Этот сервер MCP требует ключ API Treasure Data для аутентификации, который должен быть предоставлен через переменную среды TD_API_KEY . Вы также можете указать конечную точку Treasure Data с помощью переменной среды TD_ENDPOINT (по умолчанию api.treasuredata.com ).
Настройка с помощью Клода Кода
Клонировать репозиторий
git clone https://github.com/knishioka/td-mcp-server.gitДобавьте сервер MCP с помощью Claude Code CLI
# Navigate to your project directory cd your-project-directory # Add the MCP server (use absolute path to server.py) claude mcp add td -e TD_API_KEY=${TD_API_KEY} -e TD_ENDPOINT=api.treasuredata.com -- mcp run /absolute/path/to/td-mcp-server/td_mcp_server/server.py
Настройка с помощью Claude Desktop
Настройте этот сервер MCP для использования с Claude Desktop, отредактировав файл конфигурации ( claude_desktop_config.json ):
{
"mcpServers": {
"td": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/td-mcp-server",
"run",
"td_mcp_server/server.py"
],
"env": {
"TD_API_KEY": "YOUR_API_KEY",
"TD_ENDPOINT": "api.treasuredata.com"
}
}
}
}Установка и требования
Для этого проекта требуется Python 3.11+ и следующие пакеты:
запросы
пидантический
мцп
Установите зависимости с помощью pip:
pip install -r requirements.txtИли с помощью uv:
uv pip install -e .Запуск сервера напрямую
Вы можете запустить сервер MCP напрямую:
# Set your API key
export TD_API_KEY="your-api-key"
# For US region (default)
export TD_ENDPOINT="api.treasuredata.com"
# For Japan region
# export TD_ENDPOINT="api.treasuredata.co.jp"
# Run with MCP CLI
mcp run td_mcp_server/server.pyРазработка
Проведение тестов
# Run all tests
pytest
# Run tests with coverage report
pytest --cov=td_mcp_server
# Run tests for a specific module
pytest tests/unit/test_api.pyФорматирование и линтинг кода
# Run linting with Ruff
uv run ruff check td_mcp_server tests
# Format code with Ruff
uv run ruff format td_mcp_server tests
# Run pre-commit hooks on all files
uv run pre-commit run --all-filesResources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/knishioka/td-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server