Powerdrill MCP Server について
Powerdrill MCP Serverは、MCPクライアントからPowerdrillのデータセットを管理し、自然言語で分析を依頼できるサーバーです。データセットやデータソースの確認、ローカルファイルのアップロード、分析ジョブのセッション管理に対応します。
主な機能
- 01User IDとProject API Keyによる認証
- 02データセットの一覧と概要の確認
- 03データセットの作成とローカルファイルのアップロード
- 04データセット内のデータソース一覧
- 05自然言語の質問による分析ジョブ作成
- 06分析セッションの作成と管理
活用シーン
- 01アカウント内のデータセットと構造の確認
- 02ローカルファイルを指定データセットに追加
- 03自然言語でデータを分析し、関連ジョブをまとめる
MCP 対応
このMCPサーバーは、データセット一覧、ファイルのアップロード、セッション作成、自然言語の質問による分析ジョブ作成などのPowerdrill操作ツールを互換クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
9掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | number | いいえ | 返すデータセットの最大数 |
| search | string | いいえ | 名前でデータセットを検索します。 |
| pageSize | number | いいえ | 1ページあたりの項目数(デフォルト:10) |
| pageNumber | number | いいえ | 一覧表示を開始するページ番号(デフォルト:1) |
詳細
Powerdrill MCP サーバー
Powerdrill のデータセットを操作するツールを提供する Model Context Protocol(MCP)サーバーです。Powerdrill のユーザー ID とプロジェクト API キーで認証します。
個人で AI データ分析を行う場合や、チームで利用する場合は、https://chat.powerdrill.ai/ にアクセスしてください。
チームの Powerdrill ユーザー ID とプロジェクト API キーをお持ちの場合は、オープンソースの Powerdrill Web クライアントを使ってデータを操作できます。
- Node.js 版:https://flow.powerdrill.ai/、またはオープンソースの Web クライアント https://github.com/powerdrillai/powerdrill-flow をお試しください。
- Python 版:https://powerdrill-flow.streamlit.app/、またはオープンソースの Web クライアント https://github.com/powerdrillai/powerdrill-flow-streamlit をお試しください。
機能
- ユーザー 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 アカウントが必要です。認証情報の取得方法は次のとおりです。
- まだの場合は、Powerdrill チームアカウントに登録します
- アカウント設定に移動します
- API セクションで、次の情報を確認します:
- ユーザー ID:アカウント固有の識別子
- API キー:API アクセス用の認証トークン
まず、Powerdrill チームの作成方法を解説するこちらの動画をご覧ください:
次に、API 認証情報の設定方法を解説するこちらの動画をご覧ください:
クイックセットアップ
サーバーを最も簡単にセットアップするには、付属のセットアップスクリプトを使用します:
# Make the script executable
chmod +x setup.sh
# Run the setup script
./setup.sh
このスクリプトは次の処理を行います。
- 依存関係をインストールします
- TypeScript コードをビルドします
.envファイルが存在しない場合は作成します- 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 との連携
- Claude Desktop を開きます
- Settings > Server Settings に移動します
- 次のいずれかの設定で新しいサーバーを追加します:
オプション 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"
}
}
}
- 設定を保存します
- Claude Desktop を再起動します
Cursor との連携
- Cursor を開きます
- Settings > MCP Tools に移動します
- 次のいずれかの設定で新しい 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"
}
}
}
- 設定を保存します
- 必要に応じて 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(必須):分析対象のデータセットの IDdatasource_ids(任意):分析対象とする、データセット内の特定のデータソース ID の配列session_id(任意):関連するジョブをまとめるセッション IDstream(任意、デフォルト: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(必須):データソースを一覧表示するデータセットの IDpageNumber(任意、デフォルト: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"
}
}
トラブルシューティング
問題が発生した場合:
.envで環境変数が正しく設定されていることを確認してくださいnpm startでサーバーが正常に起動することを確認してください- Claude Desktop の設定で、正しいファイルパスが指定されていることを確認してください
- コンソール出力にエラーメッセージがないか確認してください
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。

