Cover image
Try Now
2025-04-14

3 years

Works with Finder

2

Github Watches

1

Github Forks

2

Github Stars

parquet_mcp_server

smithery badge

A powerful MCP (Model Control Protocol) server that provides tools for performing web searches and finding similar content. This server is designed to work with Claude Desktop and offers two main functionalities:

  1. Web Search: Perform a web search and scrape results
  2. Similarity Search: Extract relevant information from previous searches

This server is particularly useful for:

  • Applications requiring web search capabilities
  • Projects needing to find similar content based on search queries

Installation

Installing via Smithery

To install Parquet MCP Server for Claude Desktop automatically via Smithery:

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

Clone this repository

git clone ...
cd parquet_mcp_server

Create and activate virtual environment

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

Install the package

uv pip install -e .

Environment

Create a .env file with the following variables:

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

Usage with Claude Desktop

Add this to your Claude Desktop configuration file (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"
      ]
    }
  }
}

Available Tools

The server provides two main tools:

  1. Search Web: Perform a web search and scrape results

    • Required parameters:
      • queries: List of search queries
    • Optional parameters:
      • page_number: Page number for the search results (defaults to 1)
  2. Extract Info from Search: Extract relevant information from previous searches

    • Required parameters:
      • queries: List of search queries to merge

Example Prompts

Here are some example prompts you can use with the agent:

For Web Search:

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

For Extracting Info from Search:

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

Testing the MCP Server

The project includes a comprehensive test suite in the src/tests directory. You can run all tests using:

python src/tests/run_tests.py

Or run individual tests:

# Test Web Search
python src/tests/test_search_web.py

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

You can also test the server using the client directly:

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"])

Troubleshooting

  1. If you get SSL verification errors, make sure the SSL settings in your .env file are correct
  2. If embeddings are not generated, check:
    • The Ollama server is running and accessible
    • The model specified is available on your Ollama server
    • The text column exists in your input Parquet file
  3. If DuckDB conversion fails, check:
    • The input Parquet file exists and is readable
    • You have write permissions in the output directory
    • The Parquet file is not corrupted
  4. If PostgreSQL conversion fails, check:
    • The PostgreSQL connection settings in your .env file are correct
    • The PostgreSQL server is running and accessible
    • You have the necessary permissions to create/modify tables
    • The pgvector extension is installed in your database

PostgreSQL Function for Vector Similarity Search

To perform vector similarity searches in PostgreSQL, you can use the following function:

-- Create the function for vector similarity search
CREATE OR REPLACE FUNCTION match_web_search(
  query_embedding vector(1024),  -- Adjusted vector size
  match_threshold float,
  match_count int  -- User-defined limit for number of results
)
RETURNS TABLE (
  id bigint,
  metadata jsonb,
  text TEXT,  -- Added text column to the result
  date TIMESTAMP,  -- Using the date column instead of created_at
  similarity float
)
LANGUAGE plpgsql
AS $$
BEGIN
  RETURN QUERY
  SELECT
    web_search.id,
    web_search.metadata,
    web_search.text,  -- Returning the full text of the chunk
    web_search.date,  -- Returning the date timestamp
    1 - (web_search.embedding <=> query_embedding) as similarity
  FROM web_search
  WHERE 1 - (web_search.embedding <=> query_embedding) > match_threshold
  ORDER BY web_search.date DESC,  -- Sort by date in descending order (newest first)
           web_search.embedding <=> query_embedding  -- Sort by similarity
  LIMIT match_count;  -- Limit the results to the match_count specified by the user
END;
$$;

This function allows you to perform similarity searches on vector embeddings stored in a PostgreSQL database, returning results that meet a specified similarity threshold and limiting the number of results based on user input. The results are sorted by date and similarity.

Postgres table creation

CREATE TABLE web_search (
    id SERIAL PRIMARY KEY,
    text TEXT,
    metadata JSONB,
    embedding VECTOR(1024),

    -- This will be auto-updated
    date TIMESTAMP DEFAULT NOW()
);

相关推荐

  • av
  • Führen Sie mühelos LLM -Backends, APIs, Frontends und Dienste mit einem Befehl aus.

  • WangRongsheng
  • 🧑‍🚀 全世界最好的 llm 资料总结(数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Zusammenfassung der weltbesten LLM -Ressourcen.

  • 1Panel-dev
  • 🔥 1Panel bietet eine intuitive Weboberfläche und einen MCP -Server, um Websites, Dateien, Container, Datenbanken und LLMs auf einem Linux -Server zu verwalten.

  • rulego
  • ⛓️Rugele ist ein leichter, leistungsstarker, leistungsstarker, eingebetteter Komponenten-Orchestrierungsregel-Motor-Rahmen für GO.

  • hkr04
  • Leichtes C ++ MCP (Modellkontextprotokoll) SDK

  • sigoden
  • Erstellen Sie einfach LLM -Tools und -Argarten mit einfachen Bash/JavaScript/Python -Funktionen.

  • RockChinQ
  • 😎简单易用、🧩丰富生态 - 大模型原生即时通信机器人平台 | 适配 qq / 微信(企业微信、个人微信) / 飞书 / 钉钉 / diskord / telegram / slack 等平台 | 支持 Chatgpt 、 Deepseek 、 Diffy 、 Claude 、 Gemini 、 xai 、 ppio 、 、 ulama 、 lm Studio 、阿里云百炼、火山方舟、 siliconflow 、 qwen 、 mondshot 、 chatglm 、 sillytraven 、 mcp 等 llm 的机器人 / agent | LLM-basierte Instant Messaging Bots-Plattform, unterstützt Zwietracht, Telegramm, Wechat, Lark, Dingtalk, QQ, Slack

  • modelscope
  • Bauen Sie LLM-Multi-Agent-Anwendungen auf einfachere Weise auf.

  • dmayboroda
  • On-Premise-Konversationslappen mit konfigurierbaren Behältern

    Reviews

    2.7 (13)
    Avatar
    user_ziiXT9xa
    2025-04-24

    As an avid user of the search_mcp_server by DeepSpringAI, I can confidently say that it has revolutionized my search experience. The intuitive interface and powerful capabilities make finding what I need a breeze. Highly recommend it to anyone looking for an efficient, reliable search solution!

    Avatar
    user_kJxQLgXX
    2025-04-24

    I've been using search_mcp_server by DeepSpringAI and I must say it has revolutionized the way I handle server searches. The user-friendly interface and efficient search capabilities make it an indispensable tool in my daily workflow. Highly recommend this for anyone looking to enhance their server management experience!

    Avatar
    user_5Q0Pu7E6
    2025-04-24

    The search_mcp_server by DeepSpringAI has been a game-changer for me. Its efficiency and seamless integration with my existing systems have significantly enhanced my productivity. The user-friendly interface and robust performance make it one of the best tools I've used. Highly recommend this for anyone looking to optimize their search capabilities.

    Avatar
    user_eGmsijSg
    2025-04-24

    As a loyal user of DeepSpringAI's search_mcp_server, I am thoroughly impressed by its performance. This server has significantly improved my search capabilities with seamless integration and outstanding speed. The user-friendly interface and consistent updates make it a reliable choice for any search-related tasks. Highly recommended!

    Avatar
    user_RxjkIjim
    2025-04-24

    I've been using search_mcp_server by DeepSpringAI for a while now, and I'm really impressed with its capabilities. It's an outstanding server application that streamlines my search processes. The interface is user-friendly, and the performance is top-notch. Highly recommended for anyone needing a reliable and efficient search solution.

    Avatar
    user_am3Hq1SZ
    2025-04-24

    As a devoted user of the search_mcp_server by DeepSpringAI, I am thoroughly impressed with its performance. This application seamlessly integrates with my work, providing reliable and efficient search capabilities. It is intuitive and user-friendly, making it suitable for both beginners and advanced users. The responsiveness and accuracy of the search results are outstanding, significantly enhancing my productivity. I highly recommend search_mcp_server to anyone looking for a robust search solution.

    Avatar
    user_W4aatXnj
    2025-04-24

    As a dedicated user of the search_mcp_server by DeepSpringAI, I must say this tool has significantly enhanced my productivity. Its powerful search capabilities and user-friendly interface make it an essential asset for anyone dealing with large datasets. Highly recommend it!

    Avatar
    user_Vyn4lbs6
    2025-04-24

    search_mcp_server by DeepSpringAI is a fantastic tool for developers looking to enhance their applications. It offers robust search functionalities with seamless integration, making it easy to implement. The user-friendly interface and comprehensive documentation make it an invaluable resource for any project, boosting productivity and efficiency. Highly recommend!

    Avatar
    user_6gT1u5ID
    2025-04-24

    As a dedicated user of the search_mcp_server by DeepSpringAI, I am highly impressed with its outstanding performance and reliability. This server drastically improves my search capabilities and has optimized our data management processes. The seamless integration and robust support make it an invaluable tool. Highly recommended for anyone looking to enhance their search operations!

    Avatar
    user_TH6z20uc
    2025-04-24

    As a dedicated user of search_mcp_server by DeepSpringAI, I must say that it has significantly revolutionized my data search capabilities. The tool is incredibly efficient and easy to navigate, providing accurate results in no time. Highly reliable and user-friendly—this server is a must-have for anyone needing rapid and precise data retrieval.

    Avatar
    user_s3V6BU5Y
    2025-04-24

    As a dedicated user of search_mcp_server developed by DeepSpringAI, I can confidently say it is an exceptional tool for resource management. It is intuitive and robust, making complex data searches effortlessly efficient. I highly recommend this product to anyone seeking a reliable server application.

    Avatar
    user_0eqQJtOd
    2025-04-24

    As a dedicated user of search_mcp_server by DeepSpringAI, I am thoroughly impressed with its capabilities. The server's performance is exceptional, and it handles multiple queries efficiently, making data retrieval seamless and swift. The user interface is intuitive, and the overall experience has been extremely positive. Highly recommend it to anyone needing a reliable search server solution!

    Avatar
    user_yp9o7mrp
    2025-04-24

    I've been using search_mcp_server by DeepSpringAI and it's been a game-changer for my development projects. The efficient search functionalities and seamless integration have significantly improved my productivity. Highly recommend to anyone looking for a robust search solution!