Powerdrill MCP Server

resmi

Powerdrill veri kümeleriyle etkileşim kurmak için araçlar sağlayan, akıllı yapay zeka veri analizi ve içgörüler sunan bir MCP sunucusu.

Dokümantasyon

Powerdrill MCP Sunucusu

smithery badge

Powerdrill veri kümeleriyle etkileşim kurmak için araçlar sağlayan, Powerdrill Kullanıcı Kimliği ve Proje API Anahtarı ile kimlik doğrulaması yapan bir Model Bağlam Protokolü (MCP) sunucusu.

Bireysel olarak yapay zeka veri analizi yapmak veya Ekibinizle birlikte kullanmak için lütfen https://chat.powerdrill.ai/ adresine gidin.

Ekibinizin Powerdrill Kullanıcı Kimliği ve Proje API Anahtarına sahipseniz, Powerdrill'in açık kaynaklı web istemcileri aracılığıyla verileri yönetebilirsiniz:

Özellikler

  • Kullanıcı Kimliği ve Proje API Anahtarı ile Powerdrill'de kimlik doğrulama
  • Powerdrill hesabınızdaki mevcut veri kümelerini listeleme
  • Belirli veri kümeleri hakkında ayrıntılı bilgi alma
  • Doğal dil sorularıyla veri kümeleri üzerinde işler oluşturma ve çalıştırma
  • Claude Desktop ve diğer MCP uyumlu istemcilerle entegrasyon

Kurulum

Smithery Üzerinden Kurulum

Powerdrill-mcp'yi Claude Desktop için Smithery aracılığıyla otomatik olarak kurmak için:

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

npm'den

# Install globally
npm install -g @powerdrillai/powerdrill-mcp

# Or run directly with npx
npx @powerdrillai/powerdrill-mcp

Kaynaktan

Bu depoyu klonlayın ve bağımlılıkları yükleyin:

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

CLI Kullanımı

Genel olarak kuruluysa:

# Start the MCP server
powerdrill-mcp

npx kullanılıyorsa:

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

Çalıştırmadan önce ortam değişkenlerini Powerdrill kimlik bilgilerinizle yapılandırmanız gerekecek:

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

Veya bu değerleri içeren bir .env dosyası oluşturun.

Ön Koşullar

Bu MCP sunucusunu kullanmak için geçerli API kimlik bilgilerine (Kullanıcı Kimliği ve API Anahtarı) sahip bir Powerdrill hesabınızın olması gerekir. Bunları nasıl edineceğiniz aşağıda açıklanmıştır:

  1. Henüz yapmadıysanız bir Powerdrill Takım hesabına kaydolun
  2. Hesap ayarlarınıza gidin
  3. Aşağıdakileri bulacağınız API bölümünü arayın:
    • Kullanıcı Kimliği: Hesabınız için benzersiz bir tanımlayıcı
    • API Anahtarı: API erişimi için kimlik doğrulama belirteciniz

Öncelikle, Powerdrill Takımınızı nasıl oluşturacağınıza dair bu video eğitimini izleyin:

Create Powerdrill Team Tutorial

Ardından, API kimlik bilgilerinizi ayarlamak için bu video eğitimini takip edin:

Powerdrill API Setup Tutorial

Hızlı Kurulum

Sunucuyu kurmanın en kolay yolu, sağlanan kurulum betiğini kullanmaktır:

# Make the script executable
chmod +x setup.sh

# Run the setup script
./setup.sh

Bu işlem şunları yapacaktır:

  1. Bağımlılıkları yükleme
  2. TypeScript kodunu derleme
  3. Mevcut değilse bir .env dosyası oluşturma
  4. npx tabanlı yapılandırma ile Claude Desktop ve Cursor için yapılandırma dosyaları oluşturma (önerilir)

Ardından .env dosyanızı gerçek kimlik bilgilerinizle düzenleyin:

POWERDRILL_USER_ID=your_actual_user_id
POWERDRILL_PROJECT_API_KEY=your_actual_project_api_key

Ayrıca, kullanmadan önce oluşturulan yapılandırma dosyalarındaki kimlik bilgilerini de güncelleyin.

Manuel Kurulum

Manuel olarak kurmayı tercih ederseniz:

# 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

Kullanım

Sunucuyu Çalıştırma

npm start

Claude Desktop ile Entegrasyon

  1. Claude Desktop'ı açın
  2. Ayarlar > Sunucu Ayarları'na gidin
  3. Aşağıdaki yapılandırmalardan biriyle yeni bir sunucu ekleyin:

Seçenek 1: npx Kullanma (Önerilir)

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

Seçenek 2: Yerel kurulum ile node kullanma

{
  "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. Yapılandırmayı kaydedin
  2. Claude Desktop'ı yeniden başlatın

Cursor ile Entegrasyon

  1. Cursor'ı açın
  2. Ayarlar > MCP Araçları'na gidin
  3. Aşağıdaki yapılandırmalardan biriyle yeni bir MCP aracı ekleyin:

Seçenek 1: npx Kullanma (Önerilir)

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

Seçenek 2: Yerel kurulum ile node kullanma

{
  "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. Yapılandırmayı kaydedin
  2. Gerekirse Cursor'ı yeniden başlatın

Araçları Kullanma

Bağlandıktan sonra, Claude Desktop, Cursor, Cline, Windsurf vb. ile yaptığınız konuşmalarda Powerdrill araçlarını kullanabilirsiniz:

  • Veri kümelerini listele: What datasets are available in my Powerdrill account? veya Show me all my datasets
  • Veri kümesi oluştur: Create a new dataset called "Sales Analytics" veya Make a new dataset named "Customer Data" with description "Customer information for 2024 analysis"
  • Yerel dosyadan veri kaynağı oluştur: Upload the file /Users/your_name/Downloads/sales_data.csv to dataset {dataset_id} veya Add my local file /path/to/customer_data.xlsx to my {dataset_id} dataset
  • Veri kümesi özetini al: Tell me more about this dataset: {dataset_id} veya Describe the structure of dataset {dataset_id}
  • İş oluştur: Analyze dataset {dataset_id} with this question: "How has the trend changed over time?" veya Run a query on {dataset_id} asking "What are the top 10 customers by revenue?"
  • Oturum oluştur: Create a new session named "Sales Analysis 2024" for my data analysis veya Start a session called "Customer Segmentation" for analyzing market data
  • Veri kaynaklarını listele: What data sources are available in dataset {dataset_id}? veya Show me all files in the {dataset_id} dataset
  • Oturumları listele: Show me all my current analysis sessions veya List my recent data analysis sessions

Mevcut Araçlar

mcp_powerdrill_list_datasets

Powerdrill hesabınızdaki mevcut veri kümelerini listeler.

Parametreler:

  • limit (isteğe bağlı): Döndürülecek maksimum veri kümesi sayısı

Örnek yanıt:

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

mcp_powerdrill_get_dataset_overview

Belirli bir veri kümesi hakkında ayrıntılı özet bilgisi alır.

Parametreler:

  • datasetId (gerekli): Özet bilgisi alınacak veri kümesinin kimliği

Örnek yanıt:

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

Doğal dil sorularıyla verileri analiz etmek için bir iş oluşturur.

Parametreler:

  • question (gerekli): Verileri analiz etmek için doğal dil sorusu veya istemi
  • dataset_id (gerekli): Analiz edilecek veri kümesinin kimliği
  • datasource_ids (isteğe bağlı): Veri kümesi içinde analiz edilecek belirli veri kaynağı kimliklerinin dizisi
  • session_id (isteğe bağlı): İlgili işleri gruplandırmak için oturum kimliği
  • stream (isteğe bağlı, varsayılan: false): Sonuçların akış halinde gönderilip gönderilmeyeceği
  • output_language (isteğe bağlı, varsayılan: "AUTO"): Çıktı dili
  • job_mode (isteğe bağlı, varsayılan: "AUTO"): İş modu

Örnek yanıt:

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

İlgili işleri bir arada gruplandırmak için yeni bir oturum oluşturur.

Parametreler:

  • name (gerekli): En fazla 128 karakter uzunluğunda olabilen oturum adı
  • output_language (isteğe bağlı, varsayılan: "AUTO"): Çıktının oluşturulacağı dil. Seçenekler: "AUTO", "EN", "ES", "AR", "PT", "ID", "JA", "RU", "HI", "FR", "DE", "VI", "TR", "PL", "IT", "KO", "ZH-CN", "ZH-TW"
  • job_mode (isteğe bağlı, varsayılan: "AUTO"): Oturum için iş modu. Seçenekler: "AUTO", "DATA_ANALYTICS"
  • max_contextual_job_history (isteğe bağlı, varsayılan: 10): Bir sonraki iş için bağlam olarak tutulacak maksimum son iş sayısı (0-10)
  • agent_id (isteğe bağlı, varsayılan: "DATA_ANALYSIS_AGENT"): Ajanın kimliği

Örnek yanıt:

{
  "session_id": "session-abcdefghijklmnopqrstuvwxyz"
}

mcp_powerdrill_list_data_sources

Belirli bir veri kümesindeki veri kaynaklarını listeler.

Parametreler:

  • datasetId (gerekli): Veri kaynaklarının listeleneceği veri kümesinin kimliği
  • pageNumber (isteğe bağlı, varsayılan: 1): Listelemeye başlanacak sayfa numarası
  • pageSize (isteğe bağlı, varsayılan: 10): Tek bir sayfadaki öğe sayısı
  • status (isteğe bağlı): Veri kaynaklarını duruma göre filtrele: synching, invalid, synched (birden fazla için virgülle ayrılmış)

Örnek yanıt:

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

Powerdrill hesabınızdaki oturumları listeler.

Parametreler:

  • pageNumber (isteğe bağlı): Listelemeye başlanacak sayfa numarası (varsayılan: 1)
  • pageSize (isteğe bağlı): Tek bir sayfadaki öğe sayısı (varsayılan: 10)
  • search (isteğe bağlı): Oturumları ada göre arama

Örnek yanıt:

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

Powerdrill hesabınızda yeni bir veri kümesi oluşturur.

Parametreler:

  • name (gerekli): En fazla 128 karakter uzunluğunda olabilen veri kümesi adı
  • description (isteğe bağlı): En fazla 128 karakter uzunluğunda olabilen veri kümesi açıklaması

Örnek yanıt:

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

mcp_powerdrill_create_data_source_from_local_file

Belirtilen bir veri kümesine yerel bir dosya yükleyerek yeni bir veri kaynağı oluşturur.

Parametreler:

  • dataset_id (gerekli): Veri kaynağının oluşturulacağı veri kümesinin kimliği
  • file_path (gerekli): Yüklenecek dosyanın yerel yolu
  • file_name (isteğe bağlı): Dosya için özel ad, varsayılan olarak orijinal dosya adı kullanılır
  • chunk_size (isteğe bağlı, varsayılan: 5MB): Çok parçalı yükleme için her bir parçanın bayt cinsinden boyutu

Örnek yanıt:

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

Sorun Giderme

Sorunlarla karşılaşırsanız:

  1. Ortam değişkenlerinizin .env içinde doğru ayarlandığından emin olun
  2. Sunucunun npm start ile başarıyla başlatıldığını kontrol edin
  3. Claude Desktop yapılandırmanızın doğru dosya yollarını gösterdiğini doğrulayın
  4. Hata mesajları için konsol çıktısını kontrol edin

Lisans

MIT