Skip to main content
Glama

Treasure Data MCP Server

by knishioka

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

  1. 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
  2. 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
  3. 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 tablas
      • verbose : 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

  1. 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 desplazamiento
      • include_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
  2. 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
  3. 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
  4. 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
  5. 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

  1. Clonar el repositorio
    git clone https://github.com/knishioka/td-mcp-server.git
  2. Agregue 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 ):

{ "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" } } } }

Instalación y requisitos

Este proyecto requiere Python 3.11+ y los siguientes paquetes:

  • solicitudes
  • pidantico
  • mcp

Instalar las dependencias con pip:

pip install -r requirements.txt

O con uv:

uv pip install -e .

Ejecutar el servidor directamente

Puede ejecutar el servidor MCP directamente:

# 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

Desarrollo

Ejecución de pruebas

# 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

Formato de código y linting

# 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-files
-
security - not tested
F
license - not found
-
quality - not tested

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.

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.

  1. Herramientas MCP disponibles
    1. Gestión de bases de datos
    2. Gestión de proyectos de flujo de trabajo
  2. Instrucciones de configuración
    1. Autenticación
    2. Configuración con Claude Code
    3. Configuración con Claude Desktop
  3. Instalación y requisitos
    1. Ejecutar el servidor directamente
      1. Desarrollo
        1. Ejecución de pruebas
        2. Formato de código y linting

      Related MCP Servers

      • A
        security
        A
        license
        A
        quality
        An MCP server implementation that integrates Claude with Salesforce, enabling natural language interactions with Salesforce data and metadata for querying, modifying, and managing objects and records.
        Last updated -
        7
        180
        45
        TypeScript
        MIT License
      • A
        security
        A
        license
        A
        quality
        An MCP server implementation that integrates Claude with Salesforce, enabling natural language interactions with Salesforce data and metadata for querying, modifying, and managing objects and records.
        Last updated -
        7
        18
        4
        TypeScript
        MIT License
        • Apple
        • Linux
      • A
        security
        F
        license
        A
        quality
        An MCP server implementation that enables interaction with the Unstructured API, providing tools to list, create, update, and manage sources, destinations, and workflows.
        Last updated -
        39
        28
        • Apple
      • -
        security
        F
        license
        -
        quality
        An MCP server that connects to Backlog API, providing functionality to search, retrieve, and update issues through natural language commands.
        Last updated -
        53
        1
        JavaScript
        • Apple

      View all related MCP servers

      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