Treasure Data MCP 服务器
为 Claude Code 和 Claude Desktop 提供 Treasure Data API 集成的模型上下文协议 (MCP) 服务器。
免责声明:本软件为个人开发项目,与 Treasure Data Inc. 没有任何关联、认可或关系。本软件“按原样”提供,不提供任何形式的担保,使用风险自负。作者对因使用本软件而导致的任何后果概不负责。
可用的 MCP 工具
该 MCP 服务器提供以下与 Treasure Data 交互的工具:
数据库管理
td_list_databases
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_获取数据库
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,则仅返回名称和 ID(默认)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:要检索信息的工作流项目的 ID
例子:
# Get information about a specific project td_get_project project_id=123456
td_download_project_archive
td_download_project_archive(project_id)下载项目的存档(tar.gz)并返回有关下载的信息
建议检查详细的项目内容,包括 SQL 查询和工作流定义
参数:
project_id:要下载的工作流项目的 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_读取_项目文件
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 服务器需要 Treasure Data API 密钥进行身份验证,该密钥应通过TD_API_KEY环境变量提供。您也可以使用TD_ENDPOINT环境变量指定 Treasure Data 端点(默认为api.treasuredata.com )。
使用 Claude Code 进行设置
克隆存储库
git clone https://github.com/knishioka/td-mcp-server.git使用 Claude Code CLI 添加 MCP 服务器
# 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 进行设置
通过编辑配置文件 ( claude_desktop_config.json ) 配置此 MCP 服务器以便与 Claude Desktop 一起使用:
安装和要求
该项目需要 Python 3.11+ 和以下包:
请求
派丹蒂克
甲基氯丙烯
使用 pip 安装依赖项:
或者使用 uv:
直接运行服务器
您可以直接运行 MCP 服务器: