mcpField
P
Powerdrill MCP Server

Powerdrill MCP Server

ローカル
github.com/powerdrillaiデータ・分析1349 週間前に更新

Powerdrill MCP Server について

Powerdrill MCP Serverは、MCPクライアントからPowerdrillのデータセットを管理し、自然言語で分析を依頼できるサーバーです。データセットやデータソースの確認、ローカルファイルのアップロード、分析ジョブのセッション管理に対応します。

主な機能

  1. 01User IDとProject API Keyによる認証
  2. 02データセットの一覧と概要の確認
  3. 03データセットの作成とローカルファイルのアップロード
  4. 04データセット内のデータソース一覧
  5. 05自然言語の質問による分析ジョブ作成
  6. 06分析セッションの作成と管理

活用シーン

  1. 01アカウント内のデータセットと構造の確認
  2. 02ローカルファイルを指定データセットに追加
  3. 03自然言語でデータを分析し、関連ジョブをまとめる

MCP 対応

このMCPサーバーは、データセット一覧、ファイルのアップロード、セッション作成、自然言語の質問による分析ジョブ作成などのPowerdrill操作ツールを互換クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"powerdrill": {
"command": "npx",
"args": [
"-y",
"@powerdrillai/powerdrill-mcp"
],
"env": {
"POWERDRILL_USER_ID": "<POWERDRILL_USER_ID>",
"POWERDRILL_PROJECT_API_KEY": "<POWERDRILL_PROJECT_API_KEY>"
}
}
}
}
起動コマンドnpx -y @powerdrillai/powerdrill-mcp
設定が必要な環境変数
POWERDRILL_USER_ID
POWERDRILL_PROJECT_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@powerdrillai/powerdrill-mcp

ツール

9

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
limitnumberいいえ返すデータセットの最大数
searchstringいいえ名前でデータセットを検索します。
pageSizenumberいいえ1ページあたりの項目数(デフォルト:10)
pageNumbernumberいいえ一覧表示を開始するページ番号(デフォルト:1)

詳細

Powerdrill MCP サーバー

smithery badge

Powerdrill のデータセットを操作するツールを提供する Model Context Protocol(MCP)サーバーです。Powerdrill のユーザー ID とプロジェクト API キーで認証します。

個人で AI データ分析を行う場合や、チームで利用する場合は、https://chat.powerdrill.ai/ にアクセスしてください。

チームの Powerdrill ユーザー ID とプロジェクト API キーをお持ちの場合は、オープンソースの Powerdrill Web クライアントを使ってデータを操作できます。

機能

  • ユーザー ID とプロジェクト API キーを使って Powerdrill で認証します
  • Powerdrill アカウントで利用可能なデータセットを一覧表示します
  • 特定のデータセットに関する詳細情報を取得します
  • 自然言語の質問を使って、データセットのジョブを作成・実行します
  • Claude Desktop やその他の MCP 対応クライアントと連携します

インストール

Smithery 経由でインストール

Smithery 経由で、Claude Desktop に powerdrill-mcp を自動的にインストールするには:

npx -y @smithery/cli install @powerdrillai/powerdrill-mcp --client claude
npm から
# Install globally
npm install -g @powerdrillai/powerdrill-mcp

# Or run directly with npx
npx @powerdrillai/powerdrill-mcp
ソースから

このリポジトリをクローンし、依存関係をインストールします:

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

CLI の使用方法

グローバルにインストールした場合:

# Start the MCP server
powerdrill-mcp

npx を使用する場合:

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

実行する前に、Powerdrill の認証情報を環境変数に設定する必要があります:

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

または、これらの値を含む .env ファイルを作成してください。

前提条件

この MCP サーバーを使用するには、有効な API 認証情報(ユーザー ID と API キー)を持つ Powerdrill アカウントが必要です。認証情報の取得方法は次のとおりです。

  1. まだの場合は、Powerdrill チームアカウントに登録します
  2. アカウント設定に移動します
  3. API セクションで、次の情報を確認します:
    • ユーザー ID:アカウント固有の識別子
    • API キー:API アクセス用の認証トークン

まず、Powerdrill チームの作成方法を解説するこちらの動画をご覧ください:

Powerdrill チームの作成チュートリアル

次に、API 認証情報の設定方法を解説するこちらの動画をご覧ください:

Powerdrill API 設定チュートリアル

クイックセットアップ

サーバーを最も簡単にセットアップするには、付属のセットアップスクリプトを使用します:

# Make the script executable
chmod +x setup.sh

# Run the setup script
./setup.sh

このスクリプトは次の処理を行います。

  1. 依存関係をインストールします
  2. TypeScript コードをビルドします
  3. .env ファイルが存在しない場合は作成します
  4. npx ベースの設定(推奨)を使用して、Claude Desktop と Cursor 用の設定ファイルを生成します

次に、.env ファイルを編集して実際の認証情報を設定します:

POWERDRILL_USER_ID=your_actual_user_id
POWERDRILL_PROJECT_API_KEY=your_actual_project_api_key

使用する前に、生成された設定ファイル内の認証情報も更新してください。

手動インストール

手動でセットアップする場合:

# 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

使用方法

サーバーの実行
npm start
Claude Desktop との連携
  1. Claude Desktop を開きます
  2. Settings > Server Settings に移動します
  3. 次のいずれかの設定で新しいサーバーを追加します:
オプション 1:npx を使用(推奨)
{
  "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"
    }
  }
}
オプション 2:ローカルインストールした node を使用
{
  "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. 設定を保存します
  2. Claude Desktop を再起動します
Cursor との連携
  1. Cursor を開きます
  2. Settings > MCP Tools に移動します
  3. 次のいずれかの設定で新しい MCP ツールを追加します:
オプション 1:npx を使用(推奨)
{
  "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"
    }
  }
}
オプション 2:ローカルインストールした node を使用
{
  "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. 設定を保存します
  2. 必要に応じて Cursor を再起動します
ツールの使用

接続すると、Claude Desktop、Cursor、Cline、Windsurf などでの会話で Powerdrill のツールを使用できます。

  • データセットの一覧表示:What datasets are available in my Powerdrill account? または Show me all my datasets
  • データセットの作成:Create a new dataset called "Sales Analytics" または Make a new dataset named "Customer Data" with description "Customer information for 2024 analysis"
  • ローカルファイルからのデータソースの作成:Upload the file /Users/your_name/Downloads/sales_data.csv to dataset {dataset_id} または Add my local file /path/to/customer_data.xlsx to my {dataset_id} dataset
  • データセットの概要の取得:Tell me more about this dataset: {dataset_id} または Describe the structure of dataset {dataset_id}
  • ジョブの作成:Analyze dataset {dataset_id} with this question: "How has the trend changed over time?" または Run a query on {dataset_id} asking "What are the top 10 customers by revenue?"
  • セッションの作成:Create a new session named "Sales Analysis 2024" for my data analysis または Start a session called "Customer Segmentation" for analyzing market data
  • データソースの一覧表示:What data sources are available in dataset {dataset_id}? または Show me all files in the {dataset_id} dataset
  • セッションの一覧表示:Show me all my current analysis sessions または List my recent data analysis sessions

利用可能なツール

mcp_powerdrill_list_datasets

Powerdrill アカウントで利用可能なデータセットを一覧表示します。

Parameters:

  • limit(任意):返すデータセットの最大数

Example response:

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

特定のデータセットの詳細な概要情報を取得します。

Parameters:

  • datasetId(必須):概要情報を取得するデータセットの ID

Example response:

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

自然言語の質問を使ってデータを分析するジョブを作成します。

Parameters:

  • question(必須):データの分析に使用する自然言語の質問またはプロンプト
  • dataset_id(必須):分析対象のデータセットの ID
  • datasource_ids(任意):分析対象とする、データセット内の特定のデータソース ID の配列
  • session_id(任意):関連するジョブをまとめるセッション ID
  • stream(任意、デフォルト:false):結果をストリーミングするかどうか
  • output_language(任意、デフォルト:"AUTO"):出力言語
  • job_mode(任意、デフォルト:"AUTO"):ジョブモード

Example response:

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

関連するジョブをまとめる新しいセッションを作成します。

Parameters:

  • name(必須):セッション名。最大 128 文字です
  • output_language(任意、デフォルト:"AUTO"):出力を生成する言語。選択肢:"AUTO"、"EN"、"ES"、"AR"、"PT"、"ID"、"JA"、"RU"、"HI"、"FR"、"DE"、"VI"、"TR"、"PL"、"IT"、"KO"、"ZH-CN"、"ZH-TW"
  • job_mode(任意、デフォルト:"AUTO"):セッションのジョブモード。選択肢:"AUTO"、"DATA_ANALYTICS"
  • max_contextual_job_history(任意、デフォルト:10):次のジョブのコンテキストとして保持する最近のジョブの最大数(0~10)
  • agent_id(任意、デフォルト:"DATA_ANALYSIS_AGENT"):エージェントの ID

Example response:

{
  "session_id": "session-abcdefghijklmnopqrstuvwxyz"
}
mcp_powerdrill_list_data_sources

特定のデータセット内のデータソースを一覧表示します。

Parameters:

  • datasetId(必須):データソースを一覧表示するデータセットの ID
  • pageNumber(任意、デフォルト:1):一覧表示を開始するページ番号
  • pageSize(任意、デフォルト:10):1 ページあたりの項目数
  • status(任意):ステータスでデータソースを絞り込みます。指定可能な値:synching、invalid、synched(複数指定する場合はコンマ区切り)

Example response:

{
  "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 アカウントのセッションを一覧表示します。

Parameters:

  • pageNumber(任意):一覧表示を開始するページ番号(デフォルト:1)
  • pageSize(任意):1 ページあたりの項目数(デフォルト:10)
  • search(任意):セッション名で検索します

Example response:

{
  "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 アカウントに新しいデータセットを作成します。

パラメーター:

  • name(必須):データセット名です。最大 128 文字です
  • description(任意):データセットの説明です。最大 128 文字です

応答例:

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

ローカルファイルを指定したデータセットにアップロードして、新しいデータソースを作成します。

パラメーター:

  • dataset_id(必須):データソースを作成するデータセットの ID です
  • file_path(必須):アップロードするファイルのローカルパスです
  • file_name(任意):ファイルのカスタム名です。指定しない場合は元のファイル名が使用されます
  • chunk_size(任意、デフォルト:5MB):マルチパートアップロード時の各チャンクのサイズ(バイト単位)です

応答例:

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

トラブルシューティング

問題が発生した場合:

  1. .env で環境変数が正しく設定されていることを確認してください
  2. npm start でサーバーが正常に起動することを確認してください
  3. Claude Desktop の設定で、正しいファイルパスが指定されていることを確認してください
  4. コンソール出力にエラーメッセージがないか確認してください

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。