Powerdrill MCP Server

Official

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.

Integrations

  • Supports configuration of API credentials through .env files, making it easier to securely store and access Powerdrill authentication details.

  • Enables installation and distribution of the MCP server through the npm registry, supporting both global installation and direct execution with npx.

  • Mentions Powerdrill Flow Streamlit app as an alternative way to manipulate data in Powerdrill for users who have the appropriate credentials.

Servidor MCP de Powerdrill

Un servidor de Protocolo de contexto de modelo (MCP) que proporciona herramientas para interactuar con conjuntos de datos de Powerdrill, autenticado con el ID de usuario de Powerdrill y la clave de API del proyecto.

Vaya a https://powerdrill.ai/ para realizar análisis de datos de IA de forma individual o para usarlos con su equipo.

Si tiene el ID de usuario de Powerdrill y la clave API del proyecto de su equipo, puede manipular los datos a través de los clientes web de código abierto de Powerdrill:

Características

  • Autenticarse con Powerdrill usando el ID de usuario y la clave API del proyecto
  • Enumere los conjuntos de datos disponibles en su cuenta de Powerdrill
  • Obtenga información detallada sobre conjuntos de datos específicos
  • Crear y ejecutar trabajos en conjuntos de datos con preguntas en lenguaje natural
  • Integración con Claude Desktop y otros clientes compatibles con MCP

Instalación

Instalación mediante herrería

Para instalar powerdrill-mcp para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @powerdrillai/powerdrill-mcp --client claude

De npm

# Install globally npm install -g @powerdrillai/powerdrill-mcp # Or run directly with npx npx @powerdrillai/powerdrill-mcp

De la fuente

Clonar este repositorio e instalar las dependencias:

git clone https://github.com/yourusername/powerdrill-mcp.git cd powerdrill-mcp npm install

Uso de la CLI

Si se instala globalmente:

# Start the MCP server powerdrill-mcp

Si usa npx:

# Run the latest version npx -y @powerdrillai/powerdrill-mcp@latest

Necesitará configurar las variables de entorno con sus credenciales de Powerdrill antes de ejecutar:

# Set environment variables export POWERDRILL_USER_ID="your_user_id" export POWERDRILL_PROJECT_API_KEY="your_project_api_key"

O cree un archivo .env con estos valores.

Prerrequisitos

Para usar este servidor MCP, necesitará una cuenta de Powerdrill con credenciales de API válidas ( ID de usuario y clave de API ). Para obtenerlas, siga estos pasos:

  1. Regístrese para obtener una cuenta del equipo Powerdrill si aún no lo ha hecho
  2. Vaya a la configuración de su cuenta
  3. Busca la sección API donde encontrarás:
    • ID de usuario: un identificador único para su cuenta
    • Clave API: su token de autenticación para acceder a la API

Primero, mira este video tutorial sobre cómo crear tu equipo Powerdrill:

Luego, sigue este video tutorial para configurar tus credenciales de API:

Configuración rápida

La forma más sencilla de configurar el servidor es utilizar el script de configuración proporcionado:

# Make the script executable chmod +x setup.sh # Run the setup script ./setup.sh

Esto hará lo siguiente:

  1. Instalar dependencias
  2. Construir el código TypeScript
  3. Crea un archivo .env si no existe
  4. Generar archivos de configuración para Claude Desktop y Cursor con la configuración basada en npx (recomendado)

Luego edita tu archivo .env con tus credenciales reales:

POWERDRILL_USER_ID=your_actual_user_id POWERDRILL_PROJECT_API_KEY=your_actual_project_api_key

También actualice las credenciales en los archivos de configuración generados antes de usarlos.

Instalación manual

Si prefiere configurarlo manualmente:

# Install dependencies npm install # Build the TypeScript code npm run build # Copy the environment example file cp .env.example .env # Edit the .env file with your credentials

Uso

Ejecutando el servidor

npm start

Integración con Claude Desktop

  1. Abra Claude Desktop
  2. Vaya a Configuración > Configuración del servidor
  3. Agregue un nuevo servidor con una de las siguientes configuraciones:

Opción 1: Usar npx (recomendado)

{ "powerdrill": { "command": "npx", "args": [ "-y", "@powerdrillai/powerdrill-mcp@latest" ], "env": { "POWERDRILL_USER_ID": "your_actual_user_id", "POWERDRILL_PROJECT_API_KEY": "your_actual_project_api_key" } } }

Opción 2: Usar el nodo con instalación local

{ "powerdrill": { "command": "node", "args": ["/path/to/powerdrill-mcp/dist/index.js"], "env": { "POWERDRILL_USER_ID": "your_actual_user_id", "POWERDRILL_PROJECT_API_KEY": "your_actual_project_api_key" } } }
  1. Guardar la configuración
  2. Reiniciar Claude Desktop

Integración con Cursor

  1. Cursor abierto
  2. Vaya a Configuración > Herramientas MCP
  3. Agregue una nueva herramienta MCP con una de las siguientes configuraciones:

Opción 1: Usar npx (recomendado)

{ "powerdrill": { "command": "npx", "args": [ "-y", "@powerdrillai/powerdrill-mcp@latest" ], "env": { "POWERDRILL_USER_ID": "your_actual_user_id", "POWERDRILL_PROJECT_API_KEY": "your_actual_project_api_key" } } }

Opción 2: Usar el nodo con instalación local

{ "powerdrill": { "command": "node", "args": ["/path/to/powerdrill-mcp/dist/index.js"], "env": { "POWERDRILL_USER_ID": "your_actual_user_id", "POWERDRILL_PROJECT_API_KEY": "your_actual_project_api_key" } } }
  1. Guardar la configuración
  2. Reiniciar el cursor si es necesario

Usando las herramientas

Una vez conectado, podrás utilizar las herramientas de Powerdrill en tus conversaciones con Claude Desktop, Cursor, Cline, Windsurf, etc.:

  • Lista de conjuntos de datos: What datasets are available in my Powerdrill account? o Show me all my datasets
  • Crear un conjunto de datos: Create a new dataset called "Sales Analytics" o Make a new dataset named "Customer Data" with description "Customer information for 2024 analysis"
  • Crear una fuente de datos desde un archivo local: Upload the file /Users/your_name/Downloads/sales_data.csv to dataset {dataset_id} o Add my local file /path/to/customer_data.xlsx to my {dataset_id} dataset
  • Obtener descripción general del conjunto de datos: Tell me more about this dataset: {dataset_id} o Describe the structure of dataset {dataset_id}
  • Crear un trabajo: Analyze dataset {dataset_id} with this question: "How has the trend changed over time?" o Run a query on {dataset_id} asking "What are the top 10 customers by revenue?"
  • Crear una sesión: Create a new session named "Sales Analysis 2024" for my data analysis o Start a session called "Customer Segmentation" for analyzing market data
  • Lista de fuentes de datos: What data sources are available in dataset {dataset_id}? o Show me all files in the {dataset_id} dataset
  • Listar sesiones: Show me all my current analysis sessions o List my recent data analysis sessions

Herramientas disponibles

mcp_powerdrill_list_datasets

Enumera los conjuntos de datos disponibles en su cuenta de Powerdrill.

Parámetros:

  • limit (opcional): número máximo de conjuntos de datos a devolver

Ejemplo de respuesta:

{ "datasets": [ { "id": "dataset-dasfadsgadsgas", "name": "mydata", "description": "my dataset" } ] }

mcp_powerdrill_get_dataset_overview

Obtiene información general detallada sobre un conjunto de datos específico.

Parámetros:

  • datasetId (obligatorio): El ID del conjunto de datos para el cual se obtendrá información general

Ejemplo de respuesta:

{ "id": "dset-cm5axptyyxxx298", "name": "sales_indicators_2024", "description": "A dataset comprising 373 travel bookings with 15 attributes...", "summary": "This dataset contains 373 travel bookings with 15 attributes...", "exploration_questions": [ "How does the booking price trend over time based on the BookingTimestamp?", "How does the average booking price change with respect to the TravelDate?" ], "keywords": [ "Travel Bookings", "Booking Trends", "Travel Agencies" ] }

mcp_powerdrill_crear_trabajo

Crea un trabajo para analizar datos con preguntas en lenguaje natural.

Parámetros:

  • question (obligatoria): La pregunta o indicación en lenguaje natural para analizar los datos.
  • dataset_id (obligatorio): El ID del conjunto de datos a analizar
  • datasource_ids (opcional): Matriz de identificaciones de fuentes de datos específicas dentro del conjunto de datos para analizar
  • session_id (opcional): ID de sesión para agrupar trabajos relacionados
  • stream (opcional, valor predeterminado: falso): si se deben transmitir los resultados
  • output_language (opcional, predeterminado: "AUTO"): El idioma de salida
  • job_mode (opcional, predeterminado: "AUTO"): El modo de trabajo

Ejemplo de respuesta:

{ "job_id": "job-cm3ikdeuj02zk01l1yeuirt77", "blocks": [ { "type": "CODE", "content": "```python\nimport pandas as pd\n\ndef invoke(input_0: pd.DataFrame) -> pd.DataFrame:\n...", "stage": "Analyze" }, { "type": "TABLE", "url": "https://static.powerdrill.ai/tmp_datasource_cache/code_result/...", "name": "trend_data.csv", "expires_at": "2024-11-21T09:56:34.290544Z" }, { "type": "IMAGE", "url": "https://static.powerdrill.ai/tmp_datasource_cache/code_result/...", "name": "Trend of Deaths from Natural Disasters Over the Century", "expires_at": "2024-11-21T09:56:34.290544Z" }, { "type": "MESSAGE", "content": "Analysis of Trends in the Number of Deaths from Natural Disasters...", "stage": "Respond" } ] }

mcp_powerdrill_crear_sesión

Crea una nueva sesión para agrupar trabajos relacionados.

Parámetros:

  • name (obligatorio): el nombre de la sesión, que puede tener hasta 128 caracteres de longitud
  • output_language (opcional, predeterminado: "AUTO"): El idioma en el que se genera la salida. Las opciones incluyen: "AUTO", "EN", "ES", "AR", "PT", "ID", "JA", "RU", "HI", "FR", "DE", "VI", "TR", "PL", "IT", "KO", "ZH-CN", "ZH-TW"
  • job_mode (opcional, predeterminado: "AUTO"): Modo de trabajo de la sesión. Las opciones incluyen: "AUTO" y "DATA_ANALYTICS".
  • max_contextual_job_history (opcional, predeterminado: 10): la cantidad máxima de trabajos recientes que se conservan como contexto para el próximo trabajo (0-10)
  • agent_id (opcional, predeterminado: "DATA_ANALYSIS_AGENT"): El ID del agente

Ejemplo de respuesta:

{ "session_id": "session-abcdefghijklmnopqrstuvwxyz" }

fuentes de datos de la lista de taladros eléctricos mcp

Enumera las fuentes de datos en un conjunto de datos específico.

Parámetros:

  • datasetId (obligatorio): El ID del conjunto de datos del que se listarán las fuentes de datos
  • pageNumber (opcional, predeterminado: 1): el número de página para comenzar a enumerar
  • pageSize (opcional, predeterminado: 10): la cantidad de elementos en una sola página
  • status (opcional): Filtrar fuentes de datos por estado: sincronizando, no válido, sincronizado (separado por comas para varios)

Ejemplo de respuesta:

{ "count": 3, "total": 5, "page": 1, "page_size": 10, "data_sources": [ { "id": "dsource-a1b2c3d4e5f6g7h8i9j0", "name": "sales_data.csv", "type": "CSV", "status": "synched", "size": 1048576, "dataset_id": "dset-cm5axptyyxxx298" }, { "id": "dsource-b2c3d4e5f6g7h8i9j0k1", "name": "customer_info.xlsx", "type": "EXCEL", "status": "synched", "size": 2097152, "dataset_id": "dset-cm5axptyyxxx298" }, { "id": "dsource-c3d4e5f6g7h8i9j0k1l2", "name": "market_research.pdf", "type": "PDF", "status": "synched", "size": 3145728, "dataset_id": "dset-cm5axptyyxxx298" } ] }

mcp_powerdrill_list_sessions

Enumera las sesiones de su cuenta de Powerdrill.

Parámetros:

  • pageNumber (opcional): el número de página para comenzar a enumerar (predeterminado: 1)
  • pageSize (opcional): la cantidad de elementos en una sola página (predeterminado: 10)
  • search (opcional): buscar sesiones por nombre

Ejemplo de respuesta:

{ "count": 2, "total": 2, "sessions": [ { "id": "session-123abc", "name": "Product Analysis", "job_count": 3, "created_at": "2024-03-15T10:30:00Z", "updated_at": "2024-03-15T11:45:00Z" }, { "id": "session-456def", "name": "Financial Forecasting", "job_count": 5, "created_at": "2024-03-10T14:20:00Z", "updated_at": "2024-03-12T09:15:00Z" } ] }

mcp_powerdrill_crear_conjunto_de_datos

Crea un nuevo conjunto de datos en su cuenta de Powerdrill.

Parámetros:

  • name (obligatorio): el nombre del conjunto de datos, que puede tener hasta 128 caracteres de longitud
  • description (opcional): La descripción del conjunto de datos, que puede tener hasta 128 caracteres de longitud

Ejemplo de respuesta:

{ "id": "dataset-adsdfasafdsfasdgasd", "message": "Dataset created successfully" }

mcp_powerdrill_crear_fuente_de_datos_desde_archivo_local

Crea una nueva fuente de datos cargando un archivo local en un conjunto de datos especificado.

Parámetros:

  • dataset_id (obligatorio): El ID del conjunto de datos en el que se creará la fuente de datos
  • file_path (obligatorio): La ruta local al archivo a cargar
  • file_name (opcional): nombre personalizado para el archivo, el valor predeterminado es el nombre del archivo original
  • chunk_size (opcional, predeterminado: 5 MB): tamaño de cada fragmento en bytes para carga multiparte

Ejemplo de respuesta:

{ "dataset_id": "dset-cm5axptyyxxx298", "data_source": { "id": "dsource-a1b2c3d4e5f6g7h8i9j0", "name": "sales_data_2024.csv", "type": "FILE", "status": "synched", "size": 2097152 }, "file": { "name": "sales_data_2024.csv", "size": 2097152, "object_key": "uploads/user_123/sales_data_2024.csv" } }

Solución de problemas

Si encuentra problemas:

  1. Asegúrese de que sus variables de entorno estén configuradas correctamente en .env
  2. Compruebe que el servidor se inicia correctamente con npm start
  3. Verifique que la configuración de Claude Desktop apunte a las rutas de archivo correctas
  4. Verifique la salida de la consola para ver si hay mensajes de error

Licencia

Instituto Tecnológico de Massachusetts (MIT)

ID: 4yflqqa1xr