mcpField
M
mcp-data-pipeline-connector

mcp-data-pipeline-connector

ローカル
github.com/dbsectrainerデータベース05 週間前に更新

mcp-data-pipeline-connector について

組み込みの DuckDB を使い、CSV・JSON ファイル、PostgreSQL、REST API をクエリする MCP サーバーです。複数のデータソースを扱うチームやエージェント向けに、単一のコネクターで横断 SQL とスキーマ統一を提供します。

主な機能

  1. 01設定済みソースへの SQL クエリ
  2. 02ファイル・PostgreSQL・REST API の結合
  3. 03スキーマの自動検出
  4. 04REST レスポンスのキャッシュ
  5. 05ソース型の正規化
  6. 06組み込み DuckDB クエリエンジン

活用シーン

  1. 01売上 CSV と PostgreSQL テーブルを結合
  2. 02REST データとローカルファイルを同時に検索
  3. 03データソースのテーブルとスキーマを確認
  4. 04クエリを SELECT 文に制限

MCP 対応

データソースの接続・一覧表示、スキーマ確認、データのクエリや変換、ヘルスチェックを行う MCP ツールを公開します。データソースは YAML ファイルで設定します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"dbsectrainer-mcp-data-pipeline-connector": {
"command": "npx",
"args": [
"-y",
"mcp-data-pipeline-connector"
],
"env": {
"YOUR_API_KEY": "<YOUR_API_KEY>"
}
}
}
}
起動コマンドnpx -y mcp-data-pipeline-connector
設定が必要な環境変数
YOUR_API_KEYシークレットYour API key for the service

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

パッケージ
npmmcp-data-pipeline-connector1.0.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Data Pipeline Connector

npm mcp-data-pipeline-connector パッケージ

すべてのデータソースに対応する 1 つの MCP サーバーです。複数のデータソースをまたぐ SQL JOIN に対応し、外部クエリサービスは不要です。DuckDB はプロセス内に組み込まれて動作するため、CSV ファイルと Postgres テーブル、REST API のレスポンスを、すべてお使いのマシン上で単一のクエリにより結合できます。エージェントは、データソース固有の知識や複数の MCP サーバー設定を必要とせずに、データを扱えます。

ツールのリファレンス | 設定 | コントリビューション | トラブルシューティング

主な機能

  • 統一されたクエリインターフェース:DuckDB を介して、複数のデータソースをまたぐ JOIN を含む、接続済みのすべてのデータソースに対する SQL を実行できます。
  • 複数のデータソースタイプ:CSV/JSON ファイル、PostgreSQL データベース、REST API エンドポイントを 1 つのサーバーで扱えます。
  • スキーマの自動検出:CSV のヘッダーと Postgres のメタデータから、カラム名と型を推定します。
  • REST キャッシュ:重複した呼び出しを避けるため、設定可能な TTL で REST API のレスポンスをキャッシュします。
  • スキーマの正規化:データソース固有の型を、標準の型(文字列、数値、日付、ブール値、JSON)にマッピングします。
  • プロセス内クエリエンジン:DuckDB は組み込みで動作するため、別途クエリサービスをインストールしたり管理したりする必要はありません。

データソースごとに別々の MCP サーバーを使うより優れている理由

一般的な代替方法は、データソースごとに 1 つずつ MCP サーバーを実行することです。たとえば、Postgres MCP サーバー、CSV MCP サーバー、REST MCP サーバーを使います。それぞれ単独では問題なく動作しますが、互いに連携できません。

mcp-data-pipeline-connectorデータソースごとの個別サーバー
複数データソース間の JOIN組み込みの DuckDB によるネイティブ SQL不可。エージェントが手動で取得して結合する必要があります
設定の複雑さMCP 設定にサーバーのエントリーを 1 つ追加データソースの種類ごとに 1 つのエントリー
クエリエンジンプロセス内の DuckDB。インストールもサービスも不要各データソースのクエリ機能によって異なります
スキーマの統一すべての型を string/integer/number/datetime/boolean/json/unknown に正規化データソースごとに独自の型システムを使用
データの保管場所すべてのクエリをローカルで実行各コネクターの実装によって異なります

複数のデータソースにまたがる質問(「売上 CSV とユーザーテーブルを結合して」など)をする場合は、このツールが適しています。1 種類のデータソースしかクエリしない場合は、単一データソース専用のサーバーのほうがシンプルです。

免責事項

mcp-data-pipeline-connector は、設定したデータソースに接続し、エージェントに代わってそれらに対するクエリを実行します。エージェントには必要なデータベース権限のみを付与してください。接続文字列がログに記録されたり送信されたりすることはありません。バージョン管理対象の設定ファイルには記載せず、認証情報には環境変数を使用してください。

要件

  • Node.js v20.19 以降。
  • npm。
  • 任意:Postgres コネクター用の、稼働中の PostgreSQL インスタンス。

はじめに

次の設定を MCP クライアントに追加します。

{
  "mcpServers": {
    "data-connector": {
      "command": "npx",
      "args": ["-y", "mcp-data-pipeline-connector@latest"]
    }
  }
}

~/.mcp/data-sources.yaml でデータソースを定義します。

sources:
  - name: sales
    type: csv
    path: ~/data/sales-2025.csv
  - name: users
    type: postgres
    connection_string: "${POSTGRES_URL}"
    tables: [users, subscriptions]

接続文字列は YAML ファイルに直接記述せず、環境変数に保存してください。

MCP クライアントの設定

Amp · Claude Code · Cline · Cursor · VS Code · Windsurf · Zed

最初のプロンプト

~/data/sample.csv に CSV ファイルを置き、設定にデータソースとして追加してから、次のように入力します。

What columns are in the sample table? Show me the first 5 rows.

クライアントから、スキーマとデータのプレビューが返されます。

ツール

データソース(2 ツール)
  • connect_source
  • list_sources
スキーマ(2 ツール)
  • list_tables
  • get_schema
データ(2 ツール)
  • query
  • transform
ヘルス(1 ツール)
  • check_health

設定

--config / --sources-config

データソースを定義する YAML ファイルへのパスです。

型:string デフォルト:~/.mcp/data-sources.yaml

--rest-cache-ttl

REST API レスポンスをキャッシュする期間(秒)です。キャッシュを無効にするには 0 を設定します。

型:number デフォルト:300

--max-rows

1 回の query 呼び出しで返される行数の上限です。意図せず大量の結果が返されるのを防ぎます。

型:number デフォルト:1000

--read-only

SELECT クエリ以外の SQL ステートメントを拒否します。すべてのソースで読み取り専用アクセスを適用します。

型:boolean デフォルト:true

JSON 設定の args プロパティでフラグを渡します。

{
  "mcpServers": {
    "data-connector": {
      "command": "npx",
      "args": ["-y", "mcp-data-pipeline-connector@latest", "--max-rows=5000", "--rest-cache-ttl=60"]
    }
  }
}

検証

新しいバージョンを公開する前に、MCP Inspector でサーバーを検証し、すべてのツールが正しく公開され、プロトコルのハンドシェイクが成功することを確認してください。

対話型 UI(ブラウザーを開きます):

npm run build && npm run inspect

CLI モード(スクリプト/CI に適しています):

# List all tools
npx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/list

# List resources and prompts
npx @modelcontextprotocol/inspector --cli node dist/index.js --method resources/list
npx @modelcontextprotocol/inspector --cli node dist/index.js --method prompts/list

# Call a tool (example — replace with a relevant read-only tool for this plugin)
npx @modelcontextprotocol/inspector --cli node dist/index.js \
  --method tools/call --tool-name list_sources

# Call a tool with arguments
npx @modelcontextprotocol/inspector --cli node dist/index.js \
  --method tools/call --tool-name list_sources --tool-arg key=value

公開前に実行して、ツール登録やランタイム起動のリグレッションを検出してください。

コントリビューション

各コネクターは src/connectors/ にあり、DataConnector インターフェースを実装する必要があります。統合テスト用のフィクスチャデータファイルを tests/fixtures/ に追加してください。接続文字列や認証情報は決してログに記録せず、出力やエラーメッセージに含める前にサニタイズしてください。

npm install && npm test

掲載先

mcp-data-pipeline-connector は MCP Registry と MCP Market に掲載されています。

トラブルシューティング

  • REST ソースへの接続に失敗する:URL にアクセスできること、および認証用の環境変数が設定されていることを確認してください。起動後に check_health を使って再テストしてください。
  • ソース間の結合で結果が返されない:source='_all' を使用する前に、両方のソースが CSV タイプで登録されていることを確認してください。
  • クエリが truncated: true を返す:--max-rows を増やすか、SQL に LIMIT 句を追加してください。

コメント

MCP は初めてですか?

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

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