parquet mcp server

by DeepSpringAI
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Uses environment variables for configuration of embedding services, database connections, and model selection

  • Converts Parquet files to DuckDB databases for efficient querying and analysis

  • Stores embedding vectors as NumPy arrays in the Parquet file output

parquet_mcp_server

ウェブ検索や類似コンテンツの検索ツールを提供する強力なMCP(モデル制御プロトコル)サーバーです。このサーバーはClaude Desktopと連携するように設計されており、主に以下の2つの機能を提供します。

  1. ウェブ検索: ウェブ検索を実行し、結果をスクレイピングする
  2. 類似検索: 過去の検索から関連情報を抽出します

このサーバーは特に次の場合に役立ちます:

  • ウェブ検索機能を必要とするアプリケーション
  • 検索クエリに基づいて類似コンテンツを見つける必要があるプロジェクト

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の Parquet MCP Server を自動的にインストールするには:

npx -y @smithery/cli install @DeepSpringAI/parquet_mcp_server --client claude

このリポジトリをクローンする

git clone ... cd parquet_mcp_server

仮想環境の作成と有効化

uv venv .venv\Scripts\activate # On Windows source .venv/bin/activate # On macOS/Linux

パッケージをインストールする

uv pip install -e .

環境

次の変数を含む.envファイルを作成します。

EMBEDDING_URL=http://sample-url.com/api/embed # URL for the embedding service OLLAMA_URL=http://sample-url.com/ # URL for Ollama server EMBEDDING_MODEL=sample-model # Model to use for generating embeddings SEARCHAPI_API_KEY=your_searchapi_api_key FIRECRAWL_API_KEY=your_firecrawl_api_key VOYAGE_API_KEY=your_voyage_api_key AZURE_OPENAI_ENDPOINT=http://sample-url.com/azure_openai AZURE_OPENAI_API_KEY=your_azure_openai_api_key

Claude Desktopでの使用

Claude Desktop 構成ファイル ( claude_desktop_config.json ) に以下を追加します。

{ "mcpServers": { "parquet-mcp-server": { "command": "uv", "args": [ "--directory", "/home/${USER}/workspace/parquet_mcp_server/src/parquet_mcp_server", "run", "main.py" ] } } }

利用可能なツール

サーバーは主に 2 つのツールを提供します。

  1. ウェブ検索: ウェブ検索を実行し、結果をスクレイピングします
    • 必須パラメータ:
      • queries : 検索クエリのリスト
    • オプションパラメータ:
      • page_number : 検索結果のページ番号(デフォルトは1)
  2. 検索から情報を抽出: 以前の検索から関連情報を抽出します
    • 必須パラメータ:
      • queries : 結合する検索クエリのリスト

プロンプトの例

エージェントで使用できるプロンプトの例を次に示します。

ウェブ検索の場合:

"Please perform a web search for 'macbook' and 'laptop' and scrape the results from page 1"

検索から情報を抽出するには:

"Please extract relevant information from the previous searches for 'macbook'"

MCPサーバーのテスト

このプロジェクトにはsrc/testsディレクトリに包括的なテストスイートが含まれています。以下のコマンドですべてのテストを実行できます。

python src/tests/run_tests.py

または個別のテストを実行します。

# Test Web Search python src/tests/test_search_web.py # Test Extract Info from Search python src/tests/test_extract_info_from_search.py

クライアントを直接使用してサーバーをテストすることもできます。

from parquet_mcp_server.client import ( perform_search_and_scrape, # New web search function find_similar_chunks # New extract info function ) # Perform a web search perform_search_and_scrape(["macbook", "laptop"], page_number=1) # Extract information from the search results find_similar_chunks(["macbook"])

トラブルシューティング

  1. SSL検証エラーが発生した場合は、 .envファイルのSSL設定が正しいことを確認してください。
  2. 埋め込みが生成されない場合は、以下を確認してください。
    • Ollamaサーバーは稼働しておりアクセス可能です
    • 指定されたモデルはOllamaサーバーで利用可能です
    • 入力Parquetファイルにテキスト列が存在します
  3. DuckDB 変換が失敗した場合は、以下を確認してください。
    • 入力Parquetファイルが存在し、読み取り可能である
    • 出力ディレクトリへの書き込み権限があります
    • Parquetファイルは破損していません
  4. PostgreSQL 変換が失敗した場合は、以下を確認してください。
    • .envファイル内のPostgreSQL接続設定は正しいです
    • PostgreSQLサーバーが稼働しておりアクセス可能である
    • テーブルを作成/変更するために必要な権限があります
    • pgvector拡張機能がデータベースにインストールされています

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Parquetファイルの操作と分析のためのツールを提供する強力なMCP(モデル制御プロトコル)サーバーです。このサーバーはClaude Desktopと連携するように設計されており、4つの主要な機能を備えています。

  1. Installation
    1. Installing via Smithery
    2. Clone this repository
    3. Create and activate virtual environment
    4. Install the package
    5. Environment
  2. Usage with Claude Desktop
    1. Available Tools
      1. Example Prompts
        1. For Web Search:
        2. For Extracting Info from Search:
      2. Testing the MCP Server
        1. Troubleshooting
      ID: tkclhe2kox