Servidor MCP de Treasure Data
Un servidor de Protocolo de contexto de modelo (MCP) que proporciona integración de API de Treasure Data para Claude Code y Claude Desktop.
AVISO LEGAL : Este es un proyecto de desarrollo personal y no está afiliado, respaldado ni relacionado con Treasure Data Inc. de ninguna manera. Este software se proporciona "tal cual", sin garantía de ningún tipo, y debe utilizarse bajo su propia responsabilidad. El autor no se responsabiliza de las consecuencias derivadas del uso de este software.
Herramientas MCP disponibles
Este servidor MCP proporciona las siguientes herramientas para interactuar con Treasure Data:
Gestión de bases de datos
td_list_bases de datos
td_list_databases(verbose=False, limit=30, offset=0, all_results=False)Obtenga bases de datos en su cuenta de Treasure Data con soporte de paginación
Parámetros :
verbose
: si es Verdadero, devuelve todos los detalles; si es Falso, devuelve solo nombres (predeterminado)limit
: Número máximo de bases de datos a recuperar (predeterminado en 30)offset
: índice desde el que se iniciará la recuperación (predeterminado 0)all_results
: Si es verdadero, recupera todas las bases de datos ignorando el límite y el desplazamiento
Ejemplos :
# 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)Obtenga información detallada sobre una base de datos específica
Parámetros :
database_name
: El nombre de la base de datos para la que se recuperará información
Ejemplo :
# Get information about a specific database td_get_database database_name=my_database_name
tablas_de_lista_td
td_list_tables(database_name, verbose=False, limit=30, offset=0, all_results=False)Obtenga tablas en una base de datos específica de Treasure Data con soporte de paginación
Parámetros :
database_name
: El nombre de la base de datos de la que se recuperarán las tablasverbose
: si es Verdadero, devuelve detalles completos; si es Falso, devuelve solo nombres (predeterminado)limit
: Número máximo de tablas a recuperar (predeterminado en 30)offset
: índice desde el que se iniciará la recuperación (predeterminado 0)all_results
: Si es verdadero, recupera todas las tablas ignorando el límite y el desplazamiento
Ejemplos :
# 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
Gestión de proyectos de flujo de trabajo
td_list_proyectos
td_list_projects(verbose=False, limit=30, offset=0, all_results=False, include_system=False)Obtenga proyectos de flujo de trabajo en su cuenta de Treasure Data con soporte de paginación
Parámetros :
verbose
: si es Verdadero, devuelve detalles completos; si es Falso, devuelve solo nombres e identificaciones (predeterminado)limit
: Número máximo de proyectos a recuperar (predeterminado en 30)offset
: índice desde el que se iniciará la recuperación (predeterminado 0)all_results
: Si es verdadero, recupera todos los proyectos ignorando el límite y el desplazamientoinclude_system
: si es Verdadero, incluye proyectos generados por el sistema (con metadatos "sys"); el valor predeterminado es Falso
Ejemplos :
# 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)Obtenga información detallada sobre un proyecto de flujo de trabajo específico
Nota: Esto proporciona solo metadatos básicos del proyecto. Para ver el contenido y los archivos detallados, utilice td_download_project_archive seguido de td_list_project_files y td_read_project_file.
Parámetros :
project_id
: El ID del proyecto de flujo de trabajo para el cual se recuperará información
Ejemplo :
# Get information about a specific project td_get_project project_id=123456
td_descargar_archivo_del_proyecto
td_download_project_archive(project_id)Descargar el archivo de un proyecto (tar.gz) y devolver información sobre la descarga
Recomendado para examinar contenidos detallados del proyecto, incluidas consultas SQL y definiciones de flujo de trabajo.
Parámetros :
project_id
: El ID del proyecto de flujo de trabajo para descargar
Ejemplo :
# Download a project's archive td_download_project_archive project_id=123456
td_list_archivos_de_proyecto
td_list_project_files(archive_path)Listar todos los archivos contenidos en un archivo de proyecto
Parámetros :
archive_path
: La ruta al archivo del proyecto descargado (archivo .tar.gz)
Ejemplo :
# List files in a downloaded project archive td_list_project_files archive_path=/tmp/td_project_123/project_123456.tar.gz
archivo de proyecto td_read
td_read_project_file(archive_path, file_path)Leer el contenido de un archivo específico de un archivo de proyecto
Parámetros :
archive_path
: La ruta al archivo del proyecto descargado (archivo .tar.gz)file_path
: La ruta del archivo dentro del archivo para leer
Ejemplo :
# 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
Instrucciones de configuración
Autenticación
Este servidor MCP requiere una clave API de Treasure Data para la autenticación, que debe proporcionarse mediante la variable de entorno TD_API_KEY
. También puede especificar el punto final de Treasure Data mediante la variable de entorno TD_ENDPOINT
(el valor predeterminado es api.treasuredata.com
).
Configuración con Claude Code
Clonar el repositorio
git clone https://github.com/knishioka/td-mcp-server.gitAgregue el servidor MCP usando la CLI de Claude Code
# 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
Configuración con Claude Desktop
Configure este servidor MCP para usarlo con Claude Desktop editando su archivo de configuración ( claude_desktop_config.json
):
Instalación y requisitos
Este proyecto requiere Python 3.11+ y los siguientes paquetes:
solicitudes
pidantico
mcp
Instalar las dependencias con pip:
O con uv:
Ejecutar el servidor directamente
Puede ejecutar el servidor MCP directamente:
Desarrollo
Ejecución de pruebas
Formato de código y linting
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Un servidor MCP para interactuar con Treasure Data API, permitiendo a los usuarios recuperar información de la base de datos y verificar el estado del servidor a través de consultas en lenguaje natural.
Related MCP Servers
- -securityFlicense-qualityAn MCP server implementation that enables users to interact with the PokeAPI to fetch Pokemon information through natural language queries.Last updated -
- -securityFlicense-qualityAn MCP server for interacting with the HackathonWatch API, allowing users to access hackathon data and related information through natural language commands.Last updated -
- -securityFlicense-qualityAn MCP Server that enables interaction with Ticketmaster's Discovery API for accessing event, venue, and artist information through natural language commands.Last updated -
- -securityFlicense-qualityAn MCP server that enables natural language interaction with Google's Discovery Engine API, allowing users to search, recommend, and manage data through conversational interfaces.Last updated -